一、核心认知:两者的角色定位
在控制系统中,绝不能将两者混为一谈,它们处于通信架构的不同层级:
RS485 是“物理层”(硬件跑道): 规定了电压、电气特性、布线拓扑。它只管把 0 和 1 传得远、传得稳,完全不懂数据的意义。
Modbus 是“协议层”(软件交通规则): 规定了数据的格式、校验和断包方式。它赋予了 0 和 1 具体的业务逻辑(读温度、开阀门)。
二、RS485硬件物理层
1. 信号流转的本质
单片机(MCU)无法直接输出长途信号,必须依靠电平转换芯片(如 MAX485)作为“翻译官”:
MCU 端: 输出脆弱的 3.3V/5V TTL 电平(极易受干扰)。
总线端: 转换芯片将其变为 差分信号(依靠 A 线和 B 线的电压差来表示逻辑,抗干扰极强,最远可传 1200 米)。
2. 核心引脚控制(半双工的心脏)
RS485 芯片通常有 4 个控制引脚,硬件设计常将使能端短接,交由 MCU 的一个 GPIO(485_DIR)统一控制:
DI (Driver Input): 接 MCU 的 TX。发送数据的入口。
RO (Receiver Output): 接 MCU 的 RX。接收数据的出口。
DE (Driver Enable) & RE (Receiver Enable):
发送前:GPIO 拉 高(DE 生效,进入发送模式)。
发送后:立刻拉 低(RE 生效,切回监听模式)。
3. 物理布线三大铁律(防坑指南)
必须是并联: 所有从机在电气关系上挂在同一条 A/B 总线上,互不影响。
必须是“手拉手”(菊花链): 物理走线上坚决杜绝星型或树型拉分支,必须一根线串到底,否则会产生严重的信号反射(回声)。
必须加终端电阻: 在总线的物理最远两端,必须各并联一个 120Ω 电阻(吸收信号余波,防止乱码)。
4. 工业安全:光耦隔离
面对电机浪涌或雷击,长线缆会引入致命高压。
解决方案: 在 MCU 和 485 芯片之间加入 光耦,将电信号转换为光信号再转回电信号。
关键点: 必须配合 隔离型