此文转自: 玩转单片机, 部分内容有改动.
一、RS-232 接口
(1) RS-232 的历史和作用
在串行通讯时,要求通讯双方都采用一个标准接口,使不同的设备可以方便地连接起来进行通讯。RS-232-C接口(又称EIA RS-232-C)是目前最常用的一种串行通讯接口。(“RS-232-C”中的“-C”只不过表示RS-232的版本,所以与“RS-232”简称是一样的)它是在1970 年由美国电子工业协会(EIA)联合贝尔系统、调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标准。它的全名是"数据终端设备(DTE)和数据通讯设备(DCE)之间串行二进制数据交换接口技术标准"该标准规定采用一个25 个脚的DB-25 连接器,对连接器的每个引脚的信号内容加以规定,还对各种信号的电平加以规定。后来IBM的PC 机将RS-232 简化成了DB-9 连接器,从而成为事实标准。而工业控制的RS-232 口一般只使用RXD、TXD、GND 三条线。
(2) RS-232 接口的电气特性
在RS-232-C 中任何一条信号线的电压均为负逻辑关系。即:逻辑"1"为-3 到-15V;逻辑"0"
为+3 到+15V 。RS-232-C 最常用的9 条引线的信号内容如下所示
DB-9 1 2 3 4 5 6 7 8 9
DB-25 8 3 2 20 7 6 4 5 22
定义DCD RXD TXD DTR GND DSR RTS CTS RI
(3) RS-232 接口的物理结构
RS-232-C 接口连接器一般使用型号为DB-9 插头座,通常插头在DCE端,插座在DTE端.
PC 机的RS-232 口为9 芯针插座。一些设备与PC 机连接的RS-232 接口,因为不使用对方的传送控制信号,只需三条接口线,即"发送数据TXD"、"接收数据RXD"和"信号地GND"。RS-232 传输线采用屏蔽双绞。
(4) RS-232 传输电缆长度
由RS-232C 标准规定在码元畸变小于4%的情况下,传输电缆长度应为50 英尺 (15米, ), 其实这个4%的码元畸变是很保守的,在实际应用中,约有99%的用户是按码元畸变10-20%的范围工作的,所以实际使用中最大距离会远超过50英尺. 美国DEC公司曾规定允许码元畸变为10%而得出下面实验结果 :
波特率bps | 1号电缆传输距离 m | 2号电缆传输距离 m |
---|---|---|
110 | 1500 | 900 |
300 | 1500 | 900 |
1200 | 900 | 900 |
2400 | 300 | 150 |
4800 | 300 | 75 |
9600 | 75 | 75 |
1 号电缆为屏蔽电缆,型号为DECP.NO.9107723 内有三对双绞线,每对由22# AWG 组成,其外覆以屏蔽网。
2 号电缆为不带屏蔽的电缆。型号为DECP.NO.9105856-04是22#AWG 的四芯电缆。
实际使用中最好使用三股多芯音频线, 如果考虑成本, 也可使用网线, 双绞的两芯做一根线使用, 使用三对绞线即可.
经过许多年来RS-232 器件以及通信技术的改进,RS-232 的通信距离已经大大增加。波士电子的RS-232 增强器可以将普通的RS-232 口的通信距离直接延长到1000米。
二、RS-485 接口
(1) RS-485 的电气特性
发送端:逻辑"1"以两线间的电压差为+(2 至6) V 表示;逻辑"0"以两线间的电压差为-(2 至6)V 表示。接收端:A比B高200mV以上即认为是逻辑"1",A 比B 低200mV 以上即认为是逻辑"0"。
(2) RS-485(或 RS-422)的接线
(3) RS-485 的传输速率
最高传输速率为10Mbps, 但是由于RS-485 常常要与PC 机的RS-232口通信,所以实际上一般最高115.2Kbps。又由于太高的速率会使RS-485 传输距离减小,所以往往为9600bps 左右或以下。
(4) RS-485 抗噪性能
RS-485 接口是采用平衡驱动器和差分接收器的组合,抗噪声干扰性好。
(5) RS-485传输距离
最大传输距离标准值为1200米(9600bps时),实际上可达3000米,RS-485 接口在总线上是允许连接多达128个收发器、即RS-485 具有多机通信能力,这样用户可以利用单一的RS-485 接口方便地建立起设备网络。因RS-485 接口具有良好的抗噪声干扰性,长的传输距离和多站能力等上述优点就使其成为首选的串行接口。因为RS485 接口组成的半双工网络,一般只需二根信号线,所以RS485 接口均采用屏蔽双绞线传输。RS-485 的国际标准并没有规定RS485 的接口连接器标准、所以采用接线端子或者DB-9、DB-25 等连接器都可以。RS-485 接口是事实工业标准。
(6) 采用RS485 接口时,传输电缆的长度如何考虑?
答: 在使用RS485 接口时,对于特定的传输线经,从发生器到负载其数据信号传输所允许的最大电缆长度是数据信号速率的函数,这个长度数据主要是受信号失真及噪声等影响所限制。最大电缆长度与信号速率的关系曲线是使用24AWG 铜芯双绞电话电缆(线径为0。51mm),线间旁路电容为52。5PF/M,终端负载电阻为100 欧时所得出。(引自GB11014-89附录A)。当数据信号速率降低到90Kbit/S 以下时,假定最大允许的信号损失为6dBV 时, 则电缆长度被限制在1200M。实际上,在实用时是完全可以取得比它大的电缆长度。当使用不同线径的电缆。则取得的最大电缆长度是不相同的。例如:当数据信号速率为600Kbit/S时,采用24AWG 电缆,最大电缆长度是200m,若采用19AWG 电缆(线径为0.91mm)则电缆长度将可以大于200m; 若采用28AWG 电缆(线径为0.32mm)则电缆长度只能小于200m。RS-485的远距离通信建议采用屏蔽电缆,并且将屏蔽层作为地线。
三、RS-422 接口
RS-422 的电气性能与RS-485完全一样。主要的区别在于:
- RS-422 有4 根信号线:两根发送(Y、Z)、两根接收(A、B)。由于RS-422 的收与发是分开的所以可以同时收和发(全双工)。
- RS-485 有2 根信号线:发送和接收都是A 和B。由于RS-485 的收与发是共用两根线所以不能够同时收和发(半双工)。
能否将RS-422 的Y-A 短接作为RS-485 的A、将RS-422 的Z-B 短接作为RS-485 的B呢?
回答:不一定。
条件是RS-422 必须是能够支持多机通信的。波士电子的所有接口转换器的RS-422 口都能够支持全双工多机通信,所以可以这样简单转换为RS-485。
四、RS-485 比 RS-232 232-C 接口相比有何特点?
由于RS-232 接口标准出现较早,难免有不足之处,主要有以下四点:
(1)接口的信号电平值较高,易损坏接口电路的芯片,又因为与TTL 电平不兼容故需使用电平转换电路方能与TTL 电路连接。
(2)传输速率较低,在异步传输时,波特率为20Kbps。现在由于采用新的UART 芯片16C550 等,波特率达到115.2Kbps。
(3)接口使用一根信号线和一根信号返回线而构成共地的传输形式, 这种共地传输容易产生共模干扰,所以抗噪声干扰性弱。
(4)传输距离有限,最大传输距离标准值为50 米,实际上也只能用在15米左右。
(5)RS-232 只允许一对一通信,而RS-485 接口在总线上是允许连接多达128个收发器。
(6)一些公司专业生产的RS485集线器它能够把一路RS-485或一路RS-232总线分割为4路RS-485总线,或者把四路RS-485信号汇集到一路RS-485或一路RS-232总线上来。并且每个端口都独立具有光隔、短路、开路保护功能。在系统发生故障的时候,内置的控制器能够及时的切断有故障的端口。使RS485集线器保证每一端口都起到独立工作,达到互不干扰的效果。每个端口可同时连接32个接点,可延长1200米RS-485信号,是改变RS-485总线布线中单一结构的最好选择。