异步通信中按字符成帧(从起始位到停止位)进行传送,而同步传送则采用数据块或帧进行传送。图中所示为某同步协议的帧格式,在帧开头有同步字符SYNC,同步字符的格式和个数根据需要确定,其作用是通知接收器“消息到达”,并且接收器和发送器需要开始同步。同步字符后的第一个数据是消息头或称为报头,它包含有助于接收器如何处理后续数据的控制信息,如一帧内的字符计数等,再以后是以字符或者比特为单位的消息编码,也称为报文,最后是校验字符,常用CRC循环冗余校验码,校验字的作用是检测整个数据块在传送过程中是否有差错。表4-3给出了同步通信协议的帧格式。
表4-3 同步通信协议的帧格式
SYNC SYNC SYNC 头 数据(0或者更多字节) CRC SYNC
同步通信的数据传输效率较异步通信高,传输速率也较高.但是同步传送不仅要保持每个数据字符内各位以预定的固定时钟频率传送,而且还要求整个数据块内的位都按照预定的固定时钟频率传送,此外数据块之间不允许有间隙,若有间隙必须用同步字符填充。收发双方时钟严格同步是同步通信的基本要求,在技术上,这种要求必须用硬件从接收到的数据中分离出同步时钟来实现,所以硬件电路复杂是同步通信的缺点。
(2) 异步通信
串行异步通信即异步传输方式是以字符为单位进行传输,其通信协议是起止式异步通信协议。一个字符正式发送之前,先发送一个起始位,宽度为1位的低电平;结束时发送一个宽度为l位,1.5位或者2位的高电平作为停止位;数据位为5-8位,可在数据位内设1位奇偶校验位,字符之间可以有空闲位,它们都是高电平。
异步传输过程中的起始位和停止位起着重要的作用:起始位标志着每一个字符的开始,停止位标志着每一个字符的结束。由于串行通信采用起始位为同步信号,接收端总是在每个字符的头部即起始位处进行一次重新定位,保证每次采样对应一个数据位。所以异步传送的发送器和接收器不必用同一个时钟,而是各有自己的局部时钟,只要同一标称频率即可。
异步传送以字符为单位,当接收方收到起始位之后,只要在一个字符的传输时问内能和发送器保持同步,就能完成正确的接收。如果接收器和发送器的时钟略有误差,两个字符之间的停止间隔将为这种误差提供一种缓冲,因此,异步通信方式允许有一定的频率漂移,一般发送器和接收器双方各自用晶振产生时钟即可满足要求,收发双方系统时钟的误差容限为5%.对时钟同步的要求不太严格,这是异步通信的突出优点,但是异步通信要求每个字符传送都有起始位和停止位,因此控制信息至少占总信息的20%,这部分的额外开销使得传送效率相对比较低。
4.1.5 串行通信的基本参数
串口的通信方式是将字节拆分成一个接着一个的位后再进行传输。接到此电位信号的一方将此一个一个的位组合成原来的字节,如此形成一个字节的完整传输。
在传输进行过程中,双方明确传输信息的具体方式,否则双方就会没有一套共同的译码方式,从而无法了解对方所传输过来的信息的意义。因此双方为了进行通信规则,这个共同的规则就是串口的初始化。串口的初始化必须对以下几项参数进行设置。
(1) 波特率
串行通信的传输受到通信双方设备性能及通信线路的特性所控制,收发双方必须按照同样的速率进行串行通信,即收发双方采用同样的波特率。我们通常将传输速度称为波特率,指的是串行通信中每秒所传输的数据位数。单位是“波特每秒”(bps)。国际上规定了标准波特率系列值,最常用的标准波特率有110,300,600。1200,2400,4800,9600和19200。 x—γ射线个人报警仪上位机管理软件(7):http://www.youerw.com/tongxin/lunwen_9381.html