图 3 RSM485PCHT门限电平

2、 数据发生了什么变化?

如图 4所示,收发器1在AB差分电压处于±200mV门限电平之内时输出高电平,收发器2在AB差分电压处于±200mV门限电平之内时输出低电平,可以看出,收发器2可能导致MCU接收到错误的数据,并且在数据后误接收到1个0x00数据。

RS-485总线电平异常解决方案解析

图 4 数据后多0x00

如图 5所示,若总线上持续存在数据信号或连续发送多个字节数据,在数据之间存在的空闲状态可能会被收发器2识别为1个起始位,从而导致数据连续错误。

RS-485总线电平异常解决方案解析

图 5 数据连续错误

3、 解决方案

总线空闲时若AB差分电压处于门限电平之内,则可能导致数据出错,可以使用如下方法避免总线空闲时AB差分电压处于门限电平之内。

方案一:在总线组网距离偏长时,为避免因为总线信号反射而导致通讯异常的情况,都会增加终端电阻来解决总线反射问题,但此时总线电平会被拉低,从而增大总线空闲时AB差分电压处于门限电平之内的风险,具体入下图6所示。面对此类应用可使用致远电子RSM(3)485PCHT模块,RS-485接口设计时可通过外置一个较小值的上下拉电阻调节空闲状态时的电压值,使电平处于门限电平外,具体的幅值变化如下图7所示。

RS-485总线电平异常解决方案解析

图6 终端电阻对总线电平影响

RS-485总线电平异常解决方案解析

图7 RSM(3)485PCHT实物及应用连接图

方案二:组网中增加终端电阻后,同样可使用致远电子RSM(3)485ECHT模块,RSM(3)485ECHT具备极高的总线兼容性门限电平为-40mV~-20mV,具体如下图8所示,在总线电平被终端电阻拉低时(最坏情况总线高电平幅值为0V)仍可识别总线电平,保证通讯的稳定性。