
FPGA PS 端 RS485 通信一、RS485 简介1.1 核心定义与发展背景标准定义RS-485TIA/EIA-485-A仅规定物理层电气标准无上层通信协议可搭载 Modbus RTU、DL/T645 等工业协议是工业现场总线通用物理层标准。迭代由来对比 RS232 缺陷RS232单端传输、点对点通信最大传输距离 15m抗干扰差无法多节点组网RS485 基于 RS422 升级采用差分传输实现多点双向长距离通信适配工业复杂现场。1.2 RS485 六大核心特点差分信号传输A/B 双绞线依靠线间压差识别信号抑制共模干扰多节点总线组网标准支持 32 个设备选用 1/2、1/4 负载收发器可扩展至 64/128 节点距离速率权衡100kbps 速率下最远传输 1200 米速率越高传输距离越短两种通信模式主流半双工一对线缆分时收发可选全双工两对线缆同时收发宽共模电压耐受-7V~12V 共模电压稳定工作解决设备接地电位差问题低成本易维护收发芯片价格低廉、电路简单技术资料完善。1.3 RS232/RS422/RS485 参数对比类型传输方式电平特性组网能力最大距离适用场景RS-232单端传输±3V~±15V抗干扰弱全双工、点对点仅 1 节点15m本地调试、短距离单机连接RS-422差分传输±2V~±6V抗干扰较强全双工、1 主多从最多 10 节点1200m高速全双工、轻度干扰工业环境RS-485差分传输电平兼容 RS422抗干扰强半双工为主标准 32 节点扩展 128 节点1200m工业自动化多点分布式总线首选核心结论RS485 在节点数量、组网灵活性上全面优于另外两种接口是工业分布式互联最优方案。1.4 RS485 典型应用领域工业自动化连接 PLC、变频器、各类传感器作为底层控制总线智能电网能源管理远程水电燃气抄表采集计量数据、调度能源安防监控门禁、读卡器、报警主机、监控设备分布式组网智能楼宇自控控制空调、照明、通风、电梯楼宇能效管理交通管控轨道交通信号、停车场调度、车辆管理系统通信。二、RS485 通信原理2.1 核心差分信号传输逻辑总线分为 A、B 两根差分线接收器仅识别两线电压差V_DIFF不参考对地电压逻辑 1MarkV_B - V_A ≥ 200mV驱动器理想输出压差 2V~6V逻辑 0SpaceV_B - V_A ≤ -200mV驱动器理想输出压差 -2V~-6V。2.2 共模噪声抑制原理核心抗干扰机制共模噪声定义电机、变频器等产生的干扰同步、等幅耦合到 A、B 两根线上抵消原理干扰后线路电压 VA’VAVn、VB’VBVn计算压差时干扰 Vn 直接消除原始信号完整保留优势只要干扰同步作用于双线不会影响数据识别适配强电磁工业现场。2.3 半双工与全双工通信模式2.3.1 半双工工业主流硬件仅 1 对 A/B 双绞线工作逻辑同一时间总线仅一台设备发送其余接收通过收发器 DE/RE 引脚切换收发状态优势布线少、成本低绝大多数工业 Modbus 设备采用此方案。2.3.2 全双工硬件2 组独立差分双绞线一组发、一组收工作逻辑收发通道分离设备可同时发送、接收数据劣势布线成本翻倍大型多从站网络使用较少仅用于高速高实时交互场景。三、RS485 硬件结构3.1 核心器件RS485 收发器以 MAX485/MAX3485 为例收发器是 FPGA/MCU TTL 电平与 RS485 差分总线的转换桥梁集成驱动器 接收器两大模块驱动器 Driver将 MCU 单端 TTL 电平转为 A/B 差分总线信号实现远距离发送接收器 Receiver采集总线差分信号还原为 MCU 可识别的 TTL 电平。3.2 MAX485 关键引脚功能引脚名称功能描述DI数据输入连接 FPGA UART 发送引脚 TXRO数据输出连接 FPGA UART 接收引脚 RXDE发送使能高电平使能驱动器发送模式RE接收使能低电平使能接收器接收模式A差分正极外接 RS485 双绞线 A 端B差分负极外接 RS485 双绞线 B 端VCC电源芯片供电通常 3.3V 或 5VGND地芯片地注工程中常将 DE 和 RE 短接共用 1 路 GPIO 控制DE1/RE0 时发送DE0/RE1 时接收。3.3 芯片工作逻辑真值表DERE模式说明10发送模式DI 电平转换为 A/B 差分信号输出01接收模式读取 A/B 压差由 RO 输出 TTL 电平00关断模式A/B 总线高阻芯片低功耗休眠四、RS485 读写实验程序流程分析本实验实现两块 FPGA 板卡 RS485 互发互收校验整体流程初始化阶段完成 GPIO控制 DE/RE、UART 串口外设初始化第一轮通信RS485_0 向 RS485_1 发送数据从机接收并对比校验数据反向通信切换收发方向RS485_1 向 RS485_0 发送数据主机接收校验结果判定两次收发数据校验一致判定测试通过。配套资源黑金云课堂提供本实验完整工程源码、原理图及视频讲解可结合开发板实际操作学习。 完整视频讲解可前往 ALINX 视频号进行直播回看更多细节欢迎关注我们黑金云课堂全年免费直播课黑金云课堂六月直播日历 我们将在每周二、三、四同步推进Verilog开发、Vitis开发、Linux开发三大系列带你从零开始稳扎稳打掌握 FPGA 开发全流程系列内容定位Verilog开发硬件描述语言基础、逻辑设计、仿真调试Vitis开发Zynq软硬件协同、外设驱动、网络协议栈Linux开发嵌入式Linux系统移植、驱动编写、应用开发