RS-485 近距离一切正常,线放到数百米后时好时坏、CRC 狂报错,常见元凶是 **终端反射**:高速边沿在阻抗不连续的线尾折返,与后续波形叠加,接收芯片误判。
### 原理(工程版)
双绞线特性阻抗约 **120Ω**。末端开路时能量反射;在 **总线两端最远节点的 A–B 之间各并一颗 120Ω**,使行波被吸收为热,波形边沿恢复可采样。
### 正确接法
- **只在物理两端** 上终端电阻;中间节点不要颗颗都并 120Ω(等效过低,驱动困难)。
- 手拉手总线拓扑,避免星型长stub。
- 很多模块板载 120Ω 跳线,多节点时只保留两端跳线短路。
- 同时关注 **偏置电阻**(空闲 A-B 保持 >200mV),与终端是两件不同的事。
### 调试对照
| 现象 | 优先查 | |---|---| | 短线好、长线差 | 终端 120Ω | | 空闲乱触发 | 偏置 | | 多主冲突 | 半双工时序 | | 近远都差 | 波特率/接地/A-B 接反 |
### 与串口工具
终端是物理层问题:助手里波特率再对,反射照样炸。排查顺序:拓扑与 120Ω → 降速试是否改善 → 再看协议。用示波器看 A-B 差分眼图最直观;没有仪器时,「两端加 120Ω 后误码率是否下降」就是现场判据。
记住:**RS485 终端匹配电阻 = 两端 120Ω,不是每个节点一颗。**