Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Modbus

说明

  • Modbus 是工业现场最常见的通信协议之一, 常见形态包括 Modbus RTU, Modbus ASCII, Modbus TCP.
  • 在 MCU 与下位机场景中, 最常见的是跑在 RS485 总线上的 Modbus RTU.

常见形态

Modbus RTU

  • 以二进制帧传输, 效率较高.
  • 常与 RS485 收发器搭配使用.
  • 帧边界通常依赖总线空闲时间判断.

Modbus TCP

  • 跑在以太网上, 不再依赖串口波特率与校验位.
  • 常见于上位机, 网关和工业控制器之间的集成场景.

RTU 报文基本组成

典型报文通常包含:

  • 从站地址
  • 功能码
  • 数据区
  • CRC16

常见功能码包括:

  • 0x03: 读保持寄存器
  • 0x04: 读输入寄存器
  • 0x06: 写单个保持寄存器
  • 0x10: 写多个保持寄存器

开发要点

  • 先明确寄存器地址模型, 字节序和缩放规则.
  • 收发方向控制要和 RS485 使能脚时序匹配.
  • 超时, 重发和异常码处理要提前设计.
  • 主从双方要统一波特率, 数据位, 停止位, 奇偶校验.

相关文档