1、RS-232-C
RS-232-C是美国电子工业协会EIA(Electronic Industry Association)制定的一种串行物理接口标准。RS是英文“推荐标准”的缩写,232为标识号,C表示修改次数。它的全名是"数据终端设备(DTE)和数据通讯设备(DCE)之间串行二进制数据交换接口技术标准"。该标准规定采用一个25 个脚的DB-25 连接器,对连接器的每个引脚的信号内容加以规定,还对各种信号的电平加以规定。后来IBM的PC 机将RS-232 简化成了DB-9 连接器,从而成为事实标准。而工业控制的RS-232 口一般只使用RXD、TXD、GND 三条线。
RS-232-C总线标准设有25条信号线,包括一个主通道和一个辅助通道。在多数情况下主要使用主通道,对于一般双工通信,仅需几条信号线就可实现,如一条发送线、一条接收线及一条地线。
RS-232-C标准规定的数据传输速率为每秒50、75、100、150、300、600、1200、2400、4800、9600、19200波特。
RS-232-C标准规定,驱动器允许有2500pF的电容负载,通信距离将受此电容限制,例如,采用150pF/m的通信电缆时,最大通信距离为15m;若每米电缆的电容量减小,通信距离可以增加。传输距离短的另一原因是RS-232属单端信号传送,存在共地噪声和不能抑制共模干扰等问题,因此一般用于20m以内的通信。
RS-232-C接口标准的特点:
(1)采用负逻辑,即,逻辑“1”为-15V~-5V,逻辑“0”为+5V~+15V。
(2)采用全双工方式
由于RS-232 接口标准出现较早,难免有不足之处,主要有以下四点:
(1)接口的信号电平值较高,易损坏接口电路的芯片,又因为与TTL 电平不兼容故需使用电平转换电路方能与TTL 电路连接。
(2)传输速率较低,在异步传输时,波特率为20Kbps。现在由于采用新的UART 芯片16C550 等,波特率达到115.2Kbps。
(3)接口使用一根信号线和一根信号返回线而构成共地的传输形式,这种共地传输容易产生共模干扰,所以抗噪声干扰性弱。
(4)传输距离有限,最大传输距离标准值为50 米,实际上也只能用在15米左右。
(5)RS-232 只允许一对一通信,而RS-485 接口在总线上是允许连接多达128个收发器。
2、RS-485
在要求通信距离为几十米到上千米时,广泛采用RS-485 串行总线。RS-485采用平衡发送和差分接收,因此具有抑制共模干扰的能力。加上总线收发器具有高灵敏度,能检测低至200mV的电压,故传输信号能在千米以外得到恢复。
RS-485采用半双工工作方式,任何时候只能有一点处于发送状态,因此,发送电路须由使能信号加以控制。
RS-485用于多点互连时非常方便,可以省掉许多信号线。应用RS-485可以联网构成分布式系统,其允许最多并联32台驱动器和32台接收器。
针对 RS-232-C的不足,新标准RS-485具有以下特点:
(1)RS-485的电气特性:逻辑“1”以两线间的电压差+2V~+6V表示,逻辑“0”以两线间的电压差-6V~-2V表示。接口信号电平比RS-232-C降低了,就不容易损坏接口电路芯片,且该电平与TTL电平兼容,刻方便与TTL电路连接。
(2)数据最高传输速率为:10Mbps
(3)RS-485接口采用平衡驱动器和差分接收器的组合,抗共模干扰能力强,即抗噪声性能好。
(4)RS-485接口的最大传输距离标准值4000英尺,实际上可达3000米。
(5) RS-232-C接口在总线上只允许连接一个收发器,即单站能力;而RS-485接口在总线上只允许连接多达128个收发器,即具有多站能力,这样用户可以利用单一的RS-485接口方便地建立设备网络。
3、RS-422
RS-422和RS-485电路原理基本相同,都是以差动方式发送和接受,不需要数字地线。差动工作是同速率条件下传输距离远的根本原因,这正是二者与RS232的根本区别,因为RS232是单端输入输出,双工工作时至少需要数字地线 。发送线和接受线三条线(异步传输),还可以加其它控制线完成同步等功能。
RS-422通过两对双绞线可以全双工工作收发互不影响,而RS485只能半双工工作,发收不能同时进行,但它只需要一对双绞线。RS422和RS485在19kpbs下能传输1200米。用新型收发器线路上可连接台设备。
RS-422 的电气性能与RS-485完全一样。主要的区别在于:RS-422 有4 根信号线:两根发送(Y、Z)、两根接收(A、B)。由于RS-422 的收与发是分开的所以可以同时收和发(全双工);RS-485 有2 根信号线:发送和接收。
4、三者的区别
① RS232是全双工的,RS485是半双工的,RS422是全双工的。
② RS485与RS232仅仅是通讯的物理协议(即接口标准)有区别,RS485是差分传输方式,RS232是单端传输方式,但通讯程序没有太多的差别。PC机上已经配备有RS232,直接使用就行了,若使用RS485通讯,只要在RS232端口上配接一个RS232转RS485的转换头就可以了,不需要修改程序。