异步传输与同步传输
串行传输中,数据是一位一位按照到达的顺序依次传输的,每位数据的发送和接收都需要时钟来控制。发送端通过发送时钟确定数据位的开始和结束,接收端需要在适当的时间间隔对数据流进行采样来正确的识别数据。接收端和发送端必须保持步调一致,否则数据传输就会出现差错。为了解决以上问题,串行传输可采用以下两种方法:异步传输和同步传输。
异步传输
异步传输方式中,字符是数据传输单位。在通信的数据流中,字符间异步,字符内部各位间同步。异步通信方式的“异步”主要体现在字符与字符之间通信没有严格的定时要求。异步传送中,字符可以是连续地、一个个地发送,也可以是不连续地,随机地进行单独发送。在一个字符格式的停止位之后,立即发送下一个字符的起始位,开始一个新的字符的传输,这叫做连续的串行数据发送,即帧与帧之间是连续的。断续的串行数据传送是指在一帧结束之后维持数据线的“空闲”状态,新的起始位可在任何时刻开始。一旦传送开始,组成这个字符的各个数据位将被连续发送,并且每个数据位持续的时间是相等的。接收端根据这个特点与数据发送端保持同步,从而正确地恢复数据。收/发双方则以预告约定的传输速率,在时钟的作用下,传送这个字符中的每一位。
同步传输
在同步传输方式中,比特块以稳定的比特流的形式传输,数据被封装成更大的传输单位,称为帧。每个帧中含有多个字符代码,而且字符代码与字符代码之间没有间隙以及起始位和停止位。和异步传输相比,数据传输单位的加长容易引起时钟漂移。为了保证接收端能够正确地区分数据流中的每个数据位,收发双主必须通过某种方法建立起同步的时钟。可以在发送器和接收器之间提供一条独立的时钟线路,由线路的一端(发送器或者接收器)定期地在每个比特时间中向线路发送一个短脉冲信号,另一端则将这些有规律的脉冲作为时钟。这种技术在短距离传输时表现良好,但在长距离传输中,定时脉冲可能会和信息信号一样受到破坏,从而出现定时误差。另一种方法是通过采用嵌有时钟信息的数据编码位向接收端提供同步信息。
握手信号
握手信号实际上是控制信号,用来控制数据的传送。通过握手信号,发送方可以通知接收方是否有数据要发送。接收方通过握手信号通知发送方它是否已经准备好了接收信号。握手信号遵循某种协议。
当发送方和接收方处理数据的不一样时,可能会造成数据丢失。在传输中,如果发送方的发送速度大于接收方的接收速度,同时接收方处理数据的速度不够快的话,那么接收端的缓冲区必定在一定时间后溢出,从而造成以后发送过来的数据不能进入缓冲区而丢失。发送方何时可以继续发送数据,何时必须暂停发送,从而让接收方有时间处理数据,称为流量控制,必须靠握手信号来解决这个问题。例如,打印机和计算机进行通信时,一些打印机打印速度可能跟不上计算机发送数据的速度,就必须要通过握手信号通知计算机暂停发送数据。
1 硬件握手
在硬件握手中,发送方通过将某一个导线拉到高电平或者低电平。来表示发送方可以发送数据。接收方已经准备好接收数据之后,也把某一个导线拉到高电平或者是低电平,来通知发送方,发送方一直在检测这个信号。接收方可以在任何时候把这个信号变为无效,甚至是在接受一个数据块过程中。当发送方检测到这个信号变为无效之后,就必须停止本次发送,直到这个信号变为有效。
2软件握手
在软件握手中,以数据线上的数据信号来代替实际的硬件电路。这种方法用在直接连接或者通过调制解调器连接的两台计算机之间进行双向通信的场合。
对于软件握手现在已经建立了一些标准协议,其中最常用的是通信协议。通信协议是指通信双方的一种约定,包括对数据格式、同步方式、传送速度、传送步骤、检纠错方式以及控制字符定义等问题作出统一规定,通信双方必须共同遵守,也叫做通信控制规程或称传输控制规程,它属于OSI七层参考模型中的数据链路层。
3 自动握手
波仕电子的RS-232/RS-485转换器使用了独特的零延时自动收发转换技术。RS-485为半双工通信,收与发不能同时进行,需要进行收与发的切换。一般这需要使用RS-232的一根握手信号线并在软件上进行控制。波仕电子的RS-232/RS-485转换器则省去了这根握手信号线,直接从RS-485信号中用硬件方法提取这个控制信号,并且具备零延时的性能。零延时指收发切换过程转变时间为0,在使用时与RS-232通信一样。
通信参数
串行端口的通信方式是将字节拆分成一个接着一个的位再传送出去。接到此电位信号的一方再将此一个一个的位组合成原来的字节,如此形成一个字节的完整传送。
在传输进行的过程中,双方明确传送信息的具体方式,否则双方就没有一套共同的译码方式,从而无法了解对方所传过来的信息的意义。因此双方为了进行通信,必须遵守一定的通信规则,这个共同的规则就是通信端口的初始化。
通信端口的初始化必须对以下几项参数进行设置。
1.数据的传输速度
串行通信的传输受到通信双方配备性能及通信线路的特性所左右,收、发双方必须按照同样的速率进行串行通信,即收、发双方采用同样的数据传输率。数据传输率批量的是串行通信中每一秒所传送的数据位数,单位是bit/s。经常可以看到食品或MODEM的规格书上都写着19200bit/s、38400bit/s······,所指的就是数据传输率。
就仪器或工业场合来说,4800bit/s、9600bit/s是最常见的数据传输率,现在的个人计算机 所提供的串行端口的数据传输率都可达到115200bit/s(甚至有921600bit/s),若传输距离较近而设备也提供时,使用最高的数据传输率也可以。
例如,在某异步串行通信中,每传送一个字符需要8位,如果采用数据传输率4800bit/s进行传送,则每秒可以传送600个字符。
Copyright © 2022-2024 厦门雄霸电子商务有限公司 版权所有 备案号:闽ICP备14012685号-33