先问大家一个问题:你碰到过RS232与RS485直连通信的情景吗?注意是“直连”哦,就是RS232电平和RS485电平直接连接。通俗来说,就是RS232电平和RS485电平“直接怼上”,这会怎么样呢?
说实话,当我知道有客户是这么连接的时候,我是不信的;但是客户一再表示,就是“直连”的,而且接收数据正常。
我仔细查看了客户的接线,确实是RS232与RS485直连,数据流从RS485接口到RS232接口,确实接收正常。客户的链路是这样的:仪表232数据发给板卡,连接的是板卡的485接口,经过RF发射出去;另一端板卡接收到RF数据,将该数据发给触摸屏工控机,由触摸屏工控机显示出来。
RS232和RS485电平区别
RS232的电气特性:任何一条信号线的电压均为负逻辑关系,即逻辑“1”:-5~-15V;逻辑“0”: 5~ 15V。噪声容限为2V,即要求接收器能识别低至 3V的信号作为逻辑“0”,高到-3V的信号作为逻辑“1” 。
RS485的电气特性:逻辑“1”以两线间的电压差为 (2~6)V表示;逻辑“0”以两线间的电压差为-(2~6)V 表示。接口信号电平比RS-232-C降低了,就不易损坏接口电路的芯片, 且该电平与TTL电平兼容。
RS232C接口标准出现较早,难免有不足之处,主要有以下四点:
1)接口的信号电平值较高,易损坏接口电路的芯片,又因为与TTL电平不兼容故需使用电平转换电路方能与TTL电路连接。
2)传输速率较低,在异步传输时,波特率为20Kbps。
3)接口使用一根信号线和一根信号返回线而构成共地的传输形式, 这种共地传输容易产生共模干扰,所以抗噪声干扰性弱。
4)传输距离有限,最大传输距离标准值为50英尺,实际上也只能用在50米左右。
针对RS232C的不足,于是就出现了一些新的接口标准,RS485就是其中之一。
RS232 |
RS485 | |
接口的物理结构 |
常用型号为DB9、DB-25插头座。一些设备只需三条接口线,即“Tx”、“Rx”和“Gnd” 。 |
RS485无具体的物理形状,根据实际情况采用具体的接口。 |
接口的电气特性 |
接口的信号电平值较高(信号“1”为“-3V至-15V”,信号“0”为“3至15V”),易损坏接口电路的芯片,又因为与TTL电平(0“<0.8V”,1“>2.0V”)不兼容,故需使用电平转换电路方能与TTL电路连接。抗干扰能力差。 |
逻辑“1”以两线间的电压差为 (2-6)V表示;逻辑“0”以两线间的电压差为-(2-6)V表示。接口信号电平比RS-232降低了,不易损坏接口电路的芯片,且该电平与TTL电平兼容,可方便与TTL 电路连接。抗干扰能力强。 |
通讯距离的长短 |
传输距离有限,最大传输距离标准值为15米,实际上也只能用在25米左右。 |
最大传输距离标准值为120米,实际上可达3000米。 |
能否支持多点通讯 |
RS232接口在总线上只允许连接1个收发器,不能支持多站收发能力。 |
在总线上是允许连接多达128个收发器。即具有多站通讯能力,这样用户可以利用单一的RS485接口方便地建立起设备网络。 |
通讯线差别 |
可以采用三芯双绞线、三芯屏蔽线等。 |
可以采用两芯双绞线、两芯屏蔽线等。 |
传输数据的最大波特率 |
传输速率较低,但在很多场合还是很适用的。 |
最高传输速率为10Mbps。传输速度快了很多! |
RS232和RS485直连实测
RS232是全双工的,两线RS485是半双工的,两者直连只能是半双工的。
1、单向传输:RS232发,RS485收
将232端的Tx脚与485端的B脚(只标 /-脚的接-脚)相连,232端的Gnd可以对接485端的A脚(-脚)。这是因为RS232电平是负逻辑,RS485电平是正逻辑。
测试9600、115200、230400三个波特率,9600和115200时,485端接收正常;230400时,485端接收出现乱码。
2、单向传输:RS485发,RS232收
将232端的Rx脚与485端的B脚(只标 /-脚的接-脚)相连,232端的Gnd可以对接485端的A脚(-脚)。
测试9600、115200、230400三个波特率,232端接收正常。
3、双向传输:RS232和RS485半双工互发
将232端的Tx、Rx脚短接后与485端的B脚(只标 /-脚的接-脚)相连,232端的Gnd可以对接485端的A脚(-脚)。
实际测试9600、115200、230400三个波特率:RS485发,RS232收,都是正常的;而RS232发,RS485收,9600和115200时,485端接收正常;230400时,485端接收出现乱码。
综上所述,RS232和两线RS485直连,还是不能完全当作没有任何隐患的“正常连接”去使用的,在某些场合还是会出现乱码的。这点需要注意!因此,在设计产品的时候,最好还是RS232和RS232连接、RS485和RS485连接;而在偶尔测试的时候,两者再直连测试。
那么,RS232和四线RS485是否可以实现全双工的双向传输呢?
其实这种情况还是相对比较常见的。接线方法是:485的A-与B-短接后,与232的GND相连;485的A 和B 与232的Rx与Tx交叉相连。
,