输入“/”快速插入内容

10-1、485

2024年5月25日修改
什么是RS485?
RS485是美国电子工业协会(Electronic Industries Association,EIA)于1983年发布的串行通信接口标准。
RS485的特点:
总线标准,RS485具有支持多节点
代码块
一条RS485总线能并联多少台设备要看什么芯片,可以控制多少个设备的问题是与该485网络中的电气特性和协议特性所决定的,并和所用电缆的品质相关,节点越多、传输距离越远、电磁环境越恶劣,所选的电缆要求就越高。
支持32个节点数的芯片:SN75176,SN75276,SN75179,SN75180,MAX485,MAX488,MAX490
支持64个节点数的芯片:SN75LBC184
支持128个节点数的芯片:MAX487,MAX1487
支持256个节点数的芯片:MAX1482,MAX1483,MAX3080~MAX3089
传输距离远(最大1219m)
连接简单(在构成通信网络时,仅需要一对双绞线作传输线)
能抑制共模干扰(差分传输)
在多站、远距离通信等多种工控环境中获得了广泛应用。
多个设备进行485通讯的接线
画板
RS-485通信链路时只是简单地用一对双绞线将各个接口的“A”、“B”端连接起来
在低速、短距离、无干扰的场合可以采用普通的双绞线,反之,在高速、长线传输时,则必须采用阻抗匹配(一般为120Ω)的RS485专用电缆(STP-120Ω(用于RS485 & CAN)),而在干扰恶劣的环境下还应采用铠装型双绞屏蔽电缆(ASTP-120Ω(用于RS485 & CAN))。
STM32的RS485通信
STM32是没有硬件485接口的,所以通常使用485收发器将UART的TTL电平转换成RS485的差分信号MCU串口控制器TxD发送数据,经485收发器转换成差分信号,传输到总线上。接收数据时,485收发器将总线上的差分信号转化成TTL信号由RxD到串口控制器。
这里的485收发器,我们使用SP3485芯片。
我们先看看普通的收发电路。
代码块
DE: 1 发送使能;0发送禁止
RE: 0 接收使能;1接收禁止
单片机要发送数据的时候,控制CTRL为高电平,数据通过485_TXD发送出去。
当单片机要接收数据的时候,控制CTRL为低电平,数据通过485_RXD接收回来。