7.1.1 异步通信和同步通信
通信双方要正确地进行数据传输,需要解决何时开始传输,何时结束传输,以及数据传输速率匹配等问题,即解决数据同步问题。实现数据同步通常有两种方式,即异步通信和同步通信。
1.异步通信
在异步通信中,数据一帧一帧地传送。每一帧由一个字符代码组成,一个字符代码由起始位、数据位、奇偶校验位和停止位四部分组成。异步通信的每一帧数据格式如图7-3所示。图7-3(a)表示一个字符紧接一个字符的传送情况,图7-3(b)表示两个字符之间有空闲位的情况,空闲位为“1”时,线路处于等待状态。空闲位是异步通信的特征之一。
一个串行帧的开始是一个起始位“0”,然后是5~8位数据(规定低位数据在前,高位数据在后),接着是奇偶校验位(此位可省略),最后是停止位“1”。
(1)起始位
起始位“0”占用一位,用来通知接收设备开始接收字符。通信线在不传送字符时,一直保持为“1”。接收端不断检测线路状态,当检测到一个“0”电平时,接收端就知道发来一个新字符,马上进行接收。起始位还被用作同步接收端的时钟,以保证以后的接收能正确进行。
图7-3 异步通信的每一帧数据格式
(2)数据位
数据位是要传送的数据,可以是5位、6位或更多。当数据位是5位时,数据位为D0~D4;当数据位是6位时,数据位为D0~D5;当数据位是8位时,数据位为D0~D7。
(3)奇偶校验位
奇偶校验位只占一位,其数据位为D8。当传送数据不进行奇偶校验时,可以省略此位。此位也可用于确定该帧字符所代表的信息类型,“1”表明传送的是地址帧,“0”表明传送的是数据帧。
(4)停止位
停止位用来表示字符的结束,停止位可以是1位、1.5位或2位。停止位必须是高电平。接收端接收到停止位后,就知道此字符传送完毕。
2.同步通信
在同步通信中,发送端首先发送同步字符,紧接着连续传送数据(即数据块),字符与字符之间没有间隙。同步通信时建立发送方时钟对接收方时钟的直接控制,使数据传送完全同步。
同步通信传送速度较快,但硬件结构比较复杂;异步通信的特点是硬件结构较简单,但传送速度较慢。MCS-51单片机采用异步通信方式。