UART, RS232协议学习
1. 串行和并行通讯
在微型计算机中,通讯(数据交流)有两种方法:并行通讯和串行通讯。
并行通讯——是指计算机与I/O设备之间经过多条传输
线交流数据,数据的各位一起进行传送。
串行通讯——是指计算机与I/O设备之间仅经过一条传
输线交流数据,数据的各位是按次序顺次一位接一位进行传送。
应该了解所谓的并行和串行,仅是指I/O接口与I/O设备之间数据交流(通讯)是并行或串行。无论怎样CPU与I/O接口之间数据交流总是并行。
2. 串行通讯的方法
串行通讯能够分为:同步通讯(Synchronous CommunicaTIon)和异步通讯(Asynchronous CommunicaTIon)两类。在单片机中,首要运用异步通讯方法。
异步通讯
特色:数据是以字符为信息单位传送的。每个字符由开端位、数据位、奇偶校验位和中止位四部分组成,称为一帧。每帧数据只包含一个字符。字符与字符之间的传送是异步的,而每个字符内部的位传送是同步的。
开端位为0信号占1位;这今后接着的便是数据位,能够是5位、6位、7位或8位,传送时低位在先、高位在后;再后边的1位为奇偶校验位,能够要也能够不要;最终是中止位,用信号1表明字符的完毕,能够是1位、1位半或2位。
在异步传送中,字符距离不固定,在中止位后能够加闲暇位,闲暇位用高电平表明,用于等候传送。这样,接纳和发送能够随时或接连进行,而不受时刻约束。
异步串行通讯的进程大体如下:
当线路上不传送字符时,发送端应坚持为“1”,接纳端不断检测线路状况,若接连为“1”今后又检测到1个“0”,就知道是发送来1个新的字符,应立即预备接纳。字符的开端位还被用作同步接纳端的时钟,以确保今后的接纳能正确进行。当事前规则的数据位和奇偶校验位传送完毕,最终传送的是中止位(“1”),阐明1个字符现已传送完了。
若字符的传送是接连进行的,则在中止位今后便接着传送下1个字符(仍从开端位“0”开端重复以上进程)。
若字符的传送是接连的,则在中止位今后参加闲暇位,也便是坚持传送线路上的“1”状况,直到开端传送下1个字符中止。
3. 同步通讯
在异步传送中,每1个字符都要用开端位和中止位作为字符开端和完毕的标志,占用了必定的时刻。为了进步传送速度,有时就去掉这些标志,而选用同步传送,即1次传送1组数据。
同步传送的特色:
以数据块(字符块)为信息单位传输,每帧数据包含若干个字符。不只要求每个字符内部的位传送是同步的,字符与字符之间的传送也应该是同步的。
发送时,在数据块前刺进1~2个同步字符,做为数据块的开端符号。接纳端检测到同步字符时,即预备接纳数据。通常在数据块的后边加上校验数据,用于校验通讯中发生的数据过错。
同步传送速度高于异步传送,缺陷是硬件设备较为杂乱,由于他对同步时钟脉冲信号的相位共同性要求严厉。
4. 串行通讯数据传送可分为三种方法:单工、半双工和全双工。
单工 数据只能单向传送。
半双工 数据能够双向传送,但是在恣意时刻只能进行一个方向的传送。
全双工 数据能够双向传送,且恣意时刻能够一起进行两个方向的传送。
5. 波特率——数据的传输速率,即每秒种传送的二进制位数,单位为位/秒。
在通讯中要求发送发端和接纳端的波特率有必要共同。
在异步通讯中,
字符传送速率=m (字符/秒)
波特率=n(位/字符)&TImes;m(字符/秒)=n·m(位/秒)= n·m波特
例如:假定字符传送的速率为120字符/秒,而一个字符为10位二进制(1位开端位、7位数据位、1位奇偶校验位、1位中止位),那么传送的波特率为
10位/字符&TImes;120字符/秒=1200位/秒= 1200波特
每1位二进制的传送时刻Tb是波特率的倒数:
Tb=1/1200=0.833ms
6. RS232流操控
.流操控在串行通讯中的效果
处理丢掉数据的问题
.硬件流操控
硬件流操控常用的有RTS/CTS(恳求发送/铲除发送)流操控和DTR/DSR(数据终端安排妥当/数据设置安排妥当)流操控
.软件流操控
一般经过XON/XOFF来完成软件流操控。
7. 奇偶校验
奇校验:一切传送的数位(含字符的各数位和校验位)中,“1”的个数为奇数,如:
1 0110,0101
0 0110,0001
偶校验:一切传送的数位(含字符的各数位和校验位)中,“1”的个数为偶数,如:
1 0100,0101
0 0100,0001
8. 9个pin脚的RS232接口
Pin 1 CD Received Line Signal Detector (Data Carrier Detect)
Pin 2 RXD Received Data
Pin 3 TXD Transmit Data
Pin 4 DTR Data Terminal Ready
Pin 5 GND Signal Ground
Pin 6 DSR Data Set Ready
Pin 7 RTS Request To Send
Pin 8 CTS Clear To Send
Pin 9 RI Ring Indicator