串行通信的基础知识总结
扫描二维码
随时随地手机看文章
单片机与单片机或与其他计算机之间通常有两种信息交换方式:并行通信和串行通信。
1.串行通信与并行通信的比较
在并行通信中,数据的所有二进制位在多条并行的传输线上同时传送,如图4-14a所示。在串行通信中,数据的所有二进制位在一条传输线上一位一位地按顺序逐个传送,如图4-14b所示。
图4-14两种通信方式
a)并行通信b)串行通信
并行通信的优点是速度快、效率高,缺点是传输线较多、长距离传输的成本较高并且可靠性差,只适用于近距离传输。与并行通信相比,串行通信的缺点是速度慢、效率低,优点是传输线较少、长距离传输的成本较低,适用于远距离传输。
2.串行通信的数据传输模式
根据数据流的方向,串行通信可分为单工、半双工和全双工三种传输模式,如图4-15所示。
图4-15串行通信的传输模式
a)单工b)半双工c)全双工
在单工模式下,数据仅能从发送器传送至接收器,传输方向单一,不能反方向传输。在半双工模式下,仅有一根数据传输线,数据可以沿两个方向传输,但在任意时刻数据仅能沿一个方向传输。在全双工模式下,通信设备之间有两根传输线,可以同时完成两个不同方向的数据传输。
3.串行通信的速度
串行通信的数据传输速度被称为波特率(Baudrate),即每秒钟传送的二进制位的个数,单位为位/秒(bit/s)。例如,若单片机每秒钟传送960个字符,而每个字符包含10位(bit),则传输波特率为960×10bit/s=9600bit/s=9600波特。常用波特率有2400波特、4800波特、9600波特、19200波特、38400波特和115200波特等。
串行通信的类型
串行通信又分为异步通信和同步通信两种类型。
(1)异步串行通信
在异步通信中,数据以字符为单位在一根传输线上传送。同一字符中各位之间的传输时间间隔是固定的。相邻字符之间的传输时间间隔由发送方控制,是不固定的,既可以连续传送,也可以间断传送。
由于字符之间的传输时间间隔不固定,所以必须在字符传输时附加必要的格式信息,以便接收方判断字符传输的开始和结束。附加了格式信息的字符数据被称作字符帧。一个字符帧通常包含起始位、数据位、奇偶校验位和停止位,相邻字符帧之间的是空闲位,如图4-16所示。字符帧中各位的作用如下:
图4-16异步串行通信的字符帧格式
1)起始位:字符帧的起始位,为低电平“0”,代表一个完整字符帧的开始。
2)数据位:包含5~8位,在起始位之后,按低位在前、高位在后的顺序传输。
3)奇偶校验位:只占用一位,在数据位之后,可以没有该位。奇偶校验的功能也可以被其他功能取代,例如,在串口的多机通信中,可以用该位指示字符帧传送的是从机地址(即从机编号)还是实际数据。
4)停止位:以高电平“1”表示一个字符帧的结束,停止位可以占1位或2位。
5)空闲位:不传送数据时,传输线上传送空闲位,为高电平“1”。传输线上由空闲位“1”变为起始位“0”时,开始传送一个新的字符帧。
在异步通信中,为保证通信成功,数据的发送方和接收方必须采用的相同的波特率。
(2)同步串行通信
同步通信将若干个数据字符连接成数据块,以数据块为单位传送信息。如图4-17所示,同步通信的字符帧由同步字符、数据块和校验字符三部分构成。其中,数据块中的数据字符个数由传输任务决定,不受限制;同步字符的个数为1个(单同步字符)或2个(双同步字符);校验字符有1或2个,用于接收端验证接收数据的正确性。在同步通信中,接收方和发送方必须采用精确、同步的时钟和相同的波特率。同步通信速度远高于异步通信。
图4-17同步串行通信格式