9.1串行通信概述
在当前微型计算机应用中,CPu与外设之间、单片机与其他计算机之间需要进行信息的交换,这种信息交换被称为“通信”。
9.1.1数据通信方式
在计算机系统中,有两种基本的通信方式:串行通信和并行通信。
1)并行通信
Ⅳ位数据在Ⅳ条数据线上同时传送,即字节数据的各位在多条数据线上同时传送,每一位数据都需要一条数据传输线。8位数据总线的通信系统,一次传输8位数据(1个字节),就需要8条数据线。本书前面几章涉及的数据传送都是采用并行方式,IJCPU与存储器、I/O接口电路等。
这种方式数据传送速度极快,但所需传输线数多,只适用于近距离的高速数据传送。
2)串行通信
Ⅳ位数据在1条数据线上按位顺序传送,即字节数据的各位只在一条数据线上按顺序一位一位的传送。双向数据传送只需要一对传输线,所以此方式比较适用于计算机与外设、计算机与计算机之间的数据传送。尤其是数据位数较多和传输距离较远时,其优点极为突出。但其传送速度较并行传送要慢得多。目前微型计算机、数码设备等普遍采用的USB接口就是采用串行方式传送数据的。
上述两种通信方式比较:并行通信传送速度高,传输线缆数多,传送距离短;串行通信传送速度慢,线缆数少,适于远距离传送。
9.1.2串行通信方式
串行通信也有两种方式:异步串行通信方式和同步串行通信方式。
1)异步通信
在异步通信中数据是以字符为单位进行传送的,字符与字符之间的时间间隔是任意的,可不同。而字符帧中的各位是以通信双方约定的时间顺序发送的,各位的时间间隔相同。
异步通信的一帧字符信息由4部分组成:起始位、数据位、奇偶校验位和停止位
(1)起始位。起始位位于一帧字符的开头,用低电平0表示。它是一个起始标志,发送方告知接收方数据开始传送的标志。当接收方检测到传输线上出现低电平时,开始按位接收数据。
(2)数据位。数据位紧跟在起始位之后,一般是8位数据。发送时从数据的最低位开始传送。
(3)奇偶校验位。奇偶校验位位于数据最高位之后,用于数据传送差错的校验。分为奇校验和偶校验。偶校验使一帧信息(8位数据+奇/偶位)中“1”的位数为偶数,奇校验则相反。奇偶校验位是一个选择位,用户可根据需要选择是否使用及使用哪一种,在通信协议中约定一致的奇偶检验方式。
(4)停止位。停止位位于奇偶校验位或数据位之后,以高电平“1”表示。它是一个字符数据结束的标志。停止位之后可以是下一帧字符的开始,也可以是若干个空闲位,使线路处于等待状态。空闲位也用高电平“1”表示。接收方不断地检测线路状态,若连续为“1”后又检测到一个“0”,就知道有一个新的字符到来了。
异步通信的特点是:不需要传送双方的时钟一致,设备简单。但每个字符要附加2~3位,用于起始位、校验位和停止位,从而降低了有效数据的传输速率。在单片机与单片机之间,单片机与外设之间通常采用异步串行通信方式。
2)同步通信
同步通信是一种连续传送数据流的串行通信方式。一帧信息由1~2个同步字、N个数据字符、校验字组成。数据之间无间隔位,即去掉了异步通信时每个字符的起始位和停止位,仅在数据块开始处用1~2个同步字符来指示。
由于同步通信要求由时钟来实现发送端与接收端之间的同步,故硬件较复杂。MCS.51片机单的串行口采用异步通信方式,同步通信不再做详细介绍。
9.1.3 串行通信的传输速率
串行通信数据线上的数据按位传送,每位信号持续的时间是由数据传送速率确定。在串行通信中用波特率(Baud Rate)作为数据传送速率的单位。
波特率:单位时间内传送的信息量,以每秒传送的二进制代码的位数表示,即1波特=1位/秒,单位是bps(位/秒)。
……