线圈位1位

寄存器为16位(2个字节)

存储区和地址

绝对地址

输出位 00001-09999 最高位0代表输出位

输入位 10001-19999 最高位1代表输入位

输出寄存器 40001-49999和400001-465535 最高位4代表输出寄存器

输入寄存器 30001-39999 最高位3代表输入寄存器

相对地址

如果要读输出寄存器的内容,则用03功能码

01 03 00 00 00 02 C4 0B

读和写 功能码

读输出线圈 01

读输入线圈 02

读输出寄存器 03

读输入寄存器 04

写单个输出线圈 05

写单个输出寄存器 06

写多个输出线圈 15

写多个输出寄存器 16

modbus RTU/ASCII 报文格式

从站地址(设备编号)(1byte)+功能码(1 byte)+数据(N byte)+校验(2 byte)

读操作:

从站地址(设备编号) 找谁

功能码 做什么事

数据 具体细节

校验 验证

写操作:

从站地址(设备编号) 找谁

功能码 做什么事

数据 具体细节(更多,多了写入的具体数值)

校验 验证

举例:

01 站地址

03 读输出寄存器

00 00 起始寄存器

00 02 寄存器长度

C4 0B CRC校验

01 站地址

03 读输出寄存器

04 字节计数(返回了多少个字节)

01 46 01 3B 具体的4个字节

5A 59 CRC校验

最后修改:2022 年 09 月 04 日
如果觉得我的文章对你有用,请随意赞赏