在进行串行通信接口设计时,主要考虑的问题是接口方法、传输介质及电平转换等。和并行传送一样,现在已经颁布了很多种标准总线,如RS-232-C、RS422、RS485和20mA电流环等。与之相配套的,还研制出了适合各种标准接口总线使用的芯片,为串行接口设计带来了极大的方便。串行接口的设计任务主要是确定一种串行标准总线,其次是选择接口控制及电平转换芯片。
(1)RS-232-C接口
RS-232-C是使用最早、应用最多的一种异步串行通信总线。它由美国电子工业协会(Electronic Industries Association)于1962年公布,并于1969年最后一次修订而成。其中RS是Recommended Standard的缩写,232是该标准的标识,C表示最后一次修订。RS-232-C主要用来定义计算机系统的一些数据终端设备(DTE)和数据通信设备(DCE)之间接口的电气特性。CRT、打印机与CPU的通信大都采用RS-232-C总线。由于MCS-51系列单片机本身有一个异步串行通信接口,因此,该系列单片机使用RS-232-C串行总线更加方便。
1)RS-232-C的电气特性
RS-232-C标准早于TTL电路的产生,其高、低电平要求对称,规定高电平为+3~+15V,低电平为-3~-15V。需特别指出,RS-232-C数据线TxD、RXD的电平使用负逻辑,即低电平表示逻辑1,高电平表示逻辑0;其他控制线均采用正逻辑,最高能承受±30V的信号电平。因此RS-232-C不能直接与TTL电路连接,使用时必须加上适当的电平转换电路,否则将使TTL电路烧毁,这一点在使用时一定要特别注意。市售的专用集成电路芯片,如MC1488和MC1489是专门用于计算机(终端)与RS-232-C总线间进行电平转换的接口芯片。
2)RS-232-C的应用
由于MCS-51系列单片机内部已经集成了串行接口,因此用户不需再扩展串行通信接口芯片,直接利用MCS-51单片机上的串行接口和RS-232-C电平转换芯片即可实现串行通信,其连接电路如图7-51所示。单片机8031的串口输出和输入分别为TxD和RxD,但它们均为TTL电平。为实现RS-232-C电平要求,还需要接RS-232-C的电平转换芯片。在本例中,采用MAX232作为电平转换,该芯片内部集成直流电源变换器,可把外部电源(+5V)转换为RS232C所要求的±10V,符合RS-232-C的电平规范要求。同时,MAX232有两组收发电路,图7-51所示电路只用了其中的一组。
图7-51 AT89C51单片机串行接口电路
(2)RS-422/RS-485接口
RS-232-C虽然应用很广,但由于推出时间比较早,所以在现代通信网络中已暴露出明显的缺点,主要表现为如下几点:
1)传送速率不够快。RS-232-C规定为20000b/s,虽然这种传送速率在异步通信中可以满足要求(通常异步通信限制为19200b/s,或更少),但对某些同步系统,其传送速率却显得不够高。
2)传送距离不够远。根据RS-232-C标准,各装置之间电缆长度不得超过15m,即使在较好的信号通信中,电缆长度也不得超过60m,难以满足现代工业控制的要求。
3)RS-232-C未明确规定连接器,因而出现了互不兼容的25芯连接器。
4)接口使用非平衡发送器,电器性能不佳。
5)接口处各信号间容易产生串扰。
由于RS-232-C有上述缺点,EIA对它做了部分改进,并于1977年制定出新标准RS-449,新标准于1980年成为美国标准。在制定新标准时,除了保留与RS-232-C兼容的特点外,还在提高传输速率,增加传输距离,改进电器特性等方面做了很多努力。它增加了RS-232-C所没有的环测功能,明确规定了连接器,解决了机械接口问题。(www.xing528.com)
与RS-449一起推出的还有RS-423-A和RS-422-A/RS-485。实际上,它们都是RS-449标准的子集。因RS-422-A/RS-485在工业测控领域使用比较多,下边主要介绍RS-422-A/RS-485。
①RS-422-A接口
RS-422-A规定了差分平衡的电气接口,能够在较长距离传输时明显地提高数据传送速率,如在1200m距离内把速率提高到100kb/s,或在较近距离(12m)内提高到10Mb/s。这种性能的改善源于平衡结构的优化,这种差分平衡结构能从地线的干扰中分离出有效信号。实际上,差分接收器可以区分0.2V以上的电位差,因此,可不受地参考电平波动及共模电磁干扰的影响。RS-422-A的另一个优点是允许传送线上连接多个接收器。虽然在RS-232-C系统中可以使用多个接收器循环工作,但它每时刻只允许一个接收器工作,而RS-422-A可允许10个以上接收器同时工作。
②RS-485接口
在许多工业过程控制中,要求用最少的信号线来完成通信任务。当用于多站互连时,可节省信号线,便于信息高速传送。许多智能仪器设备配有RS-485总线接口,便于将它们进行联网,目前广泛应用的RS-485串行接口总线就是为适应这种需要而产生的。它实际上就是RS-422总线的变型。
两者不同之处有:第一,RS-422-A为全双工,而RS-485为半双工;第二,RS-422-A采用两对平衡差分信号线,RS-485只需其中的一队,RS-485更适合多站互连,一个发送驱动器最多可连接32个负载设备。负载设备可以是被动发送器、接收器和收发器。此电路结构在平衡连接电缆两端有终端电阻,在平衡电缆上挂发送器、接收器或组合收发器。
图7-52 MAX481E/MAX488E结构及管脚图
和RS-232-C标准总线一样,RS-422-A和RS-485两种总线也需要专用的接口芯片完成电平转换。下面介绍一种典型的RS-422-A/RS-485接口芯片。
MAX481E/MAX488E是低电源(只有+5V)RS-485/RS-422-A收发器。每一个芯片内都包含一个驱动器和一个接收器,采用8脚DIP/SO封装。除了上述两种芯片外,和MAX481E相同的系列芯片还有MAX483E/485E/487E/1487E等。与MAX488E相同的有MAX490E。这两种芯片的主要区别是前者为半双工,后者为全双工。它们的管脚分配及原理如图7-52所示。
如图7-52所示,a)、b)两电路的共同点是都有一个接收输出端RO和一个驱动输入端DI。不同的是,图7-52a中只有两根信号线,A和B。其中A为同相接收器输入和同相驱动器输出;B为反相接收器输入和反相驱动器输出。而在图7-52b中,由于是双工的,所以信号线分开,分别为A、B、Z、Y。这两种芯片由于内部都有接收器和驱动器,所以每个站只用一片即可完成收发任务。
在由单片机构成的多机串行通信系统中,一般采用主从式结构,即从机不主动发送命令或数据,一切都由主机控制。因此在一个多机通信系统中,只有一台单机作为主机,各台从机之间不能相互通信,即使有信息交换也必须通过主机转发。采用RS-485构成的多机通信原理框图如图7-53所示。
图7-53 采用RS-485构成的多机通信原理框图
在总线末端接一个匹配电阻,吸收总线上的反射信号,保证信号传输无毛刺。匹配电阻的取值应与总线的特性阻抗相当。
由于RS-485通信是一种半双工通信,发送和接收共用同一物理通道,在任意时刻只允许一台单机处于发送状态,因此要求应答的单机必须在侦听到总线上呼叫信号己经发送完毕,并且没有其他单机发出应答信号的情况下才能应答。半双工通信对主机和从机的发送和接收时序有严格的要求。如果在时序上配合不好,就会发生总线冲突,使整个系统的通信瘫痪,无法正常工作。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。