2.1.3 串行通信传输方式
串行通信是将通信传输的数据转化成电信号进行传输的,在选取的通信线路上传递[13]。
a:信号传输方式是按信号原样传输的基波传输或用原信号调制成高频载波的载波传输,前者在近距离传输时使用广泛,实现简单,但通信距离会有一定限制,如RS-232、RS-285等通信方式。后者通常用于远距离传输,使用Modem将原信号调制成高频的模拟信号,用过电话网络进行传输。
b:线路传输方式是指通信双方设备的线路可选择单工、半双工、全双工和多工方式传输。在串行通信中,数据一般在两个站(比如计算机、终端)之间传输,按照数据流方向和线路的使用方式,可将传输方式分为:单工传输方式、半双工传输方式、全双工传输方式。
2.1.4 数据纠错检错
在串行通信中,由于电气或天气等干扰,会造成传输信号误码,降低了通信系统可靠性,对通信差错控制能力是衡量一个通信系统的重要指标。为了将数据准确无误地发送到接收端,我们需要在传输过程中进行检错与纠错。检错能够发现传输中的错误,然后需要纠错来消除错误。一般采用奇偶校验或方阵码检错,以反馈重发方式纠错。
传输中出现错误的原因有很多,主要是传输信道不理想和外界的干扰。为了提高传输质量,减少误码率,需要改善传输通道的电特效,最重要的还是要采取检错纠错技术,对数据进行可靠有效的编码。
2.2 串行通信协议
通信协议是通信双方事先商量定下的一种通信双方必须共同遵守的约定。对数据格式、传送速度、传送步骤、检错方式做出统一规定。目前,采用的串行通信协议有异步通信与同步通信两类[14]。
2.2.1 异步传输协议
a:特点及传输格式:异步传输的特点是通信双方以一个字符作为数据传输单位,发送数据的时间间隔也是不定的。传输的一个字符单位不仅含有表示字符信息的数据位,还含有多个附加位,以起始位开始,停止位结束,称为一帧。起始位1位,恒为0;奇偶位可有可无;停止位长度可为1、1.5、2位,恒为1[13]。
b:数据位:通信中实际数据的位数,可以是6、7和8位。想传送怎么样的信息,就要设置相应数据位。比如,标准的ASCII码是0~127(7位)。扩展的ASCII码是0~255(8位)。而实际数据位取决于通信协议的选取。
c:停止位:表示一帧数据的最后一位。典型的值为1,1.5和2位。由于数据在传输线上定时,并且每一个设备有其自己的时钟,两台设备很可能在通信中出现了一定的不同步。因此停止位也可为计算机校正同步时钟,而不仅仅是表示传输的结束。用于停止位的位数越多,不同时钟同步的容忍程度越大,但是数据传输率也变得越慢。
d:串口通信中的一种简单的检错方式。有四种检错方式:偶、奇、高和低。对于奇和偶校验的情况,串口会添加一位校验位(数据位后面的一位),用一个值确保传输的数据有偶个或者奇个逻辑高位。比如,如果需要发送的数据是101,使用偶校验,校验位添加一位0,保证逻辑高位的个数为偶数个。如果用奇校验,校验位为1,这样就有3个逻辑高位,保证逻辑高位的个数为奇数个。这样使得接收设备能够知道一个位的状态,由此判断是否有噪声干扰了通信或者传输和接收数据是否不同步,若接收设备检测到的1或0的个数与相应的奇偶校验应有的个数不相吻合,就说明出现奇偶校验错。
2.3 串口调试工具
2.3.1 虚拟串口软件
计算机上一般只配有一个串口,而至少需要两个串口才能实现串口软件的调试,为了节约和方便,可以使用虚拟串口软件,这个软件可以在同一台计算机上虚拟出多个串口。本课题使用VSPD 6.9虚拟串口软件 MSComm多通道数据分析仪实时模拟数据录取软件设计(4):http://www.youerw.com/zidonghua/lunwen_28222.html