RS485基本原理与电路讲解

张开发
2026/4/18 3:32:42 15 分钟阅读

分享文章

RS485基本原理与电路讲解
在工业自动化、智能仪表、楼宇控制等场景中RS485绝对是“出镜率”最高的通讯方式之一。它不像以太网那样高速也不像RS232那样简单但凭借着远距离、抗干扰、多节点的独特优势成为工业现场数据传输的“主力军”。一、RS485它到底是什么首先要明确一个关键误区RS485不是通讯协议而是一种串行通讯的物理层电气标准对应OSI模型的第一层由美国电子工业协会EIA制定也被称为TIA-485标准核心作用是定义数据传输的电气特性、总线拓扑和信号规则为数据传输提供稳定的物理基础。简单来说RS485就像是“数据传输的公路”而Modbus、Profibus等协议就是在这条公路上“跑”的“汽车”——公路负责提供传输通道汽车负责规定数据的传输格式和交互规则。我们日常所说的“RS485通讯”本质上是“RS485电气接口Modbus-RTU协议”的组合这也是工业现场最主流的搭配占比超过90%。二、RS485特点长距离传输在无中继的情况下最大通讯距离可达1200米约4000英尺。多节点组网允许在一对双绞线上连接多达32个甚至256个取决于芯片收发器轻松构建主从式网络。差分信号传输不依赖单根线的绝对电平而是通过两根信号线A线和B线之间的电压差来表示逻辑状态这是它抗干扰能力强的核心原因半双工为主的通信模式同一时间内总线只能由一个设备主站发送数据其他设备从站只能接收需要通过控制引脚切换发送和接收状态。成本低廉硬件简单芯片便宜布线仅需普通双绞线。差分信号差分信号 两根线的电压差RS485 不是看单根线电压而是看VdiffVA−VB\boldsymbol{V_{diff} V_A - V_B}Vdiff​VA​−VB​当VA−VB≥200 mV\boldsymbol{V_A - V_B \ge 200\,\text{mV}}VA​−VB​≥200mV→逻辑 1空闲、停止位当VA−VB≤−200 mV\boldsymbol{V_A - V_B \le -200\,\text{mV}}VA​−VB​≤−200mV→逻辑 0起始位、数据位注意是≥0.2V和≤-0.2V中间是无效区。例子1理想无干扰逻辑 1电平VA3.0 VV_A 3.0\,\text{V}VA​3.0VVB2.7 VV_B 2.7\,\text{V}VB​2.7V差0.3 V0.2 V0.3\,\text{V} 0.2\,\text{V}0.3V0.2V→逻辑 1例子2理想无干扰逻辑0电平(V_A 2.7,\text{V})(V_B 3.0,\text{V})差(-0.3,\text{V} -0.2,\text{V}) →逻辑 0例子3有强干扰差分优势体现由于RS485通常使用双绞线因此A线与B线一般受到的干扰是相同的电压同时增加或者减少。假设干扰让两根线同时升高 2V原来A3.0,B2.7→差0.3V→1A3.0, B2.7 → 差0.3V → 1A3.0,B2.7→差0.3V→1干扰后A5.0,B4.7A5.0, B4.7A5.0,B4.7→ 差还是 0.3V→ 逻辑仍然是1这就是差分抗干扰原理共模干扰被抵消。差分信号抗共模干扰示意图例子4电压在中间无效A2.5 VA2.5\,\text{V}A2.5VB2.4 VB2.4\,\text{V}B2.4V差 0.1V → 介于 ±0.2V 之间 →电平不确定报错三、电路设计在 RS-485 通信网络中485 收发器是实现电平转换的核心器件负责完成 TTL 电平与 RS-485 差分电平的双向转换是串口控制器与总线网络之间的桥梁。网络中的每个节点都由「串口控制器 485 收发器」组成串口控制器通过 RXD接收 和 TXD发送 信号线与 485 收发器连接二者之间采用标准 TTL 电平进行信号传输485 收发器则通过 485-A、485-B 两根差分线接入整个 RS-485 总线网络以差分信号的形式实现长距离、抗干扰的通信。1.数据传输原理发送数据串口控制器的 TXD 引脚输出 TTL 电平信号经 485 收发器转换为 A/B 线的差分信号传输到 RS-485 总线上供网络内其他节点接收接收数据485 收发器捕获总线上的差分信号将其还原为 TTL 电平信号通过 RXD 引脚传输给串口控制器完成数据接收。主从架构整个 RS-485 网络通常采用一主多从的拓扑结构同一时间总线上仅允许一个主机发送数据其余节点均为从机仅在主机轮询时响应避免总线冲突终端匹配电阻为了消除信号反射、提升通信稳定性必须在 总线的两个起止端点分别并联一个 120Ω 终端匹配电阻与 RS-485 总线的特性阻抗匹配这是长距离可靠通信的必要设计。RS485信号传输示意图RS485总线实际连接图注意同一条RS485总线上的仪表连接要使用手拉手连接禁止星型、树型等连接方式总线起点与终点处还需接入120欧电阻。2.常用芯片说明SP3485 是一款低功耗、3.3V 供电的 RS485 收发器引脚功能如下引脚名称功能描述连接状态1RO接收器输出TTL电平接 MCU 的RS485_RX接收数据2RE#接收器使能低电平有效拉低允许接收3DE驱动器使能高电平有效拉高允许发送4DI驱动器输入TTL电平接 MCU 的RS485_TX发送数据6A总线正差分信号接 RS485 总线 A 线7B总线负差分信号接 RS485 总线 B 线8VCC电源输入接3.3V专为 3.3V 系统设计5GND信号地系统地3.普通收发电路模块原理拆解下图为RS485常用的的收发电路设计器件说明C1 (100nF) 去耦电容**紧贴 VCC 和 GND 放置。作用是滤除电源线上的高频噪声保证芯片供电纯净防止误触发。RE# 与 DE 共用使能端* 当RS485_EN 高电平DE1发送使能RE#1接收关闭。芯片进入发送模式数据从 DI 进入转换为差分信号从 A/B 输出。* 当RS485_EN 低电平DE0发送关闭RE#0接收使能。芯片进入接收模式A/B 线上的差分信号转换为 TTL 电平从 RO 输出。*关键点RE# 和 DE 必须由同一个信号控制且逻辑相反才能实现同一时间只能发或只能收的半双工工作模式。R2 (120Ω) 终端匹配电阻*作用RS485 总线使用的双绞线特性阻抗约为 120Ω。该电阻用于阻抗匹配吸收信号在总线末端的反射波防止信号振荡回波保证长距离和高速通信的质量。*注意该电阻仅应在总线的最两端节点焊接中间节点不焊否则总线负载过重会导致通信失败。R1 (10kΩ) R3 (10kΩ) 上下拉偏置电阻*A 线上拉 (R1)将 A 线拉高至 3.3V。*B 线下拉 (R3)将 B 线拉低至 GND。*作用防止总线浮空乱码。当总线空闲所有节点都处于接收状态驱动器高阻时A/B 线可能因干扰处于不确定状态电压在 0V~3.3V 之间漂浮。通过上下拉电阻强制总线空闲时保持VAVBV_A V_BVA​VB​即差分电压为正对应逻辑 1RS485 空闲状态规定为高电平彻底避免误码。数据流发送数据MCU → RS485 总线MCU 将RS485_EN置为高电平MAX485 进入发送模式接收关闭MCU 通过RS485_TX输出 TTL 串口数据到DI 引脚MAX485 将 TTL 电平转换为 A/B 差分信号输出到 RS485 总线发送完成后MCU将RS485_EN置为低电平切回接收模式等待其他节点数据。接收数据RS485 总线 → MCURS485_EN保持低电平MAX485 处于接收模式总线上的 A/B 差分信号输入到 MAX485MAX485将差分信号还原为 TTL 电平从 RO 引脚输出到 MCU 的RS485_RXMCU 通过串口接收数据完成通信。2.自动收发电路模块原理拆解下图为RS485常用的自动收发电路设计器件说明本电路的自动收发功能由上拉电阻R6、基极限流电阻R7与NPN型三极管Q1共同构成的硬件开关电路实现各器件选型与特性如下R7基极限流电阻核心作用是限制三极管Q1的基极电流保护器件并保证开关动作稳定可靠。推荐优先选用4.7kΩ可兼顾开关速度与驱动能力若需降低基极电流10kΩ也可兼容使用。R6上拉电阻为SP3485的DE/RE‾\overline{RE}RE控制引脚提供默认高电平是实现收发状态切换的关键。4.7kΩ与10kΩ均为适配选型可根据实际电路的响应速度需求灵活选择。NPN三极管Q1作为核心电子开关遵循高电平导通、低电平截止的特性当USART_TX输出高电平时Q1导通拉低控制引脚输出低电平时Q1截止由R8上拉拉高控制引脚以此实现收发状态的自动切换。数据流接收数据状态空闲/接收时电平逻辑接收时USART_TX保持高电平UART空闲态为高。三极管动作高电平经R9驱动Q1Q1导通集电极电位被拉低至GND。芯片状态SP3485的DE发送使能高有效、RE‾\overline{RE}RE接收使能低有效均为低电平。DE0发送功能禁止RE‾0\overline{RE}0RE0接收功能使能总线状态此时总线由R4A线拉、R5B线拉-共同稳定保持VAVBV_A V_BVA​VB​对应RS485逻辑1维持总线空闲稳定*RS485总线空闲时要求高电平。发送数据状态发送时发送数据依赖UART帧格式起始位为低电平触发分两个阶段USART_TX输出低电平“0”USART_TX输出低电平 → Q1基极无驱动电压Q1截止。R8上拉电阻将DE/RE‾\overline{RE}RE拉为高电平DE1发送功能使能RE‾1\overline{RE}1RE1接收功能禁止芯片进入发送模式将DI引脚的电平映射到AB总线输出DI引脚接地为低电平“0”故而RS485的A与B-输出低电平0。USART_TX输出低电平“1”发送完成后USART_TX回到高电平停止位 → Q1重新导通DE/RE‾\overline{RE}RE拉低自动切回接收状态该状态下总线由R4A线拉、R5B线拉-共同稳定保持VAVBV_A V_BVA​VB​对应RS485逻辑1。四、总结本文介绍了RS485通讯的特点详解了差分信号的工作原理及抗干扰机制还阐述了RS485电路设计相关内容下篇文章我将会展开讲解RS485Modbus-RTU的原理与C语言实现。

更多文章