1 RS485简介
作为一名硬件工程师,RS485是一种常用的通信方式,是一种平衡传输方式。使用一对双绞线将其中一条线定义为A,另一行定义为B。通常,发送驱动器A、B之间的正电平在 2~ 6V,负电平为-2~6V,是另一种逻辑状态。另一个信号C,在RS-在485中,还有一个使能端RS-这在422中是可用的或不可用的。使能端用于控制发送驱动器与传输线之间的切断和连接。当使能端起作用时,发送驱动器处于高阻状态,称为第三状态,即不同于逻辑1和0的第三状态。 接收器也作与发送端相对的规定,收、发端通过平衡双绞线将AA与BB对应连接,当在收端AB大于 200mV输出正逻辑电平小于-200mV输出负逻辑电平。接收器接收平衡线上的电平范围通常为200mV至6V之间。
2 阻抗匹配
RS485总线的特征阻抗为120Ω,所以在RS485总线两端增加120Ω来避免信号反射问题。 注:对于总线的前端和后端,如果终端阻抗与线路特征阻抗完全匹配,波阻抗不会改变,也不会形成反射。因此,波反射可以在线路终端并接终端电阻来消除。大多数通信协议要求终端电阻并接到总线末端,以消除波反射。(RS485总线并非所有节点都需要添加匹配电阻,只需在头尾两个位置添加匹配电阻即可。
3 上拉电阻
根据 RS-485 标准:
- 485 总线差电压大于 2000mV 485 收发器输出高电平;
- 485总线差电压小于-2000mV 485 收发器输出低电平;
- 485 总线电压为-200mV~ 200mV 时,485 收发器可能输出高平也可能输出低电平,但一般总处于一种电平状态。若 485 收发器的输出低电平,这对于 UART 通信是起始位置,此时通信会异常。当 485 总线处于开路状态(485 收发器与总线断开)或空闲状态(485 收发器均处于接收状态,总线无收发器驱动)时,485 总线的差分电压基本为 0,此时总线处于不确定状态。同时,为了提高总线上的节点数, 485 芯片的输入阻抗设计相对较高,如 1/4 单位阻抗或 1/8 单位阻抗(单位阻抗 12kΩ,1/4 单位阻抗48kΩ),悬挂管脚时容易受到电磁干扰。因此,为了防止 485 总线出现上述情况,通常在485 总线上增加上下拉电阻(通常 A 接上拉电阻,B 总线下拉电阻)。如果使用隔离 RS-485 收发模块(如 RSM485PCHT),因为模块内部有上下拉电阻(因为RSM485PCHT, 24kΩ) ,一般不需要在模块外部增加上下拉电阻。
4 电路设计注意事项
RS485为在通信过程中,需要通过信号控制信号的发送和接收。SP3485为例:
名称 | 描述 | 备注 |
---|---|---|
RO、DI | 发送和发送数据 | TTL(3.3V) |
RE | 发送使能 | N.A |
DE | 接收使能 | N.A |
5 自动收发控制
具体电路如下: 其中,“RS485_RX 网络由 ZYNQ 输出的 UART2_TX 驱动UART2_TX 为高,即不发送时,三极管导通,RD485_DE此时 被拉低SP3485 芯片在接收状态下工作,RS485 差分总线的电平被外部电阻强行拉高,达到输出高电平的状态。UART2_TX 为低,即开始发送时,三极管截止,RD485_DE此时 被拉高SP3485 芯片在发送状态下工作,RS485 差分总线的电平由 UART2_TX 驱动。这就实现了 RS自动控制485 收发状态。
常用的电路设计
- SP3485电路设计
- MAX485ESA(自动控制收发)