首页 热点资讯 义务教育 高等教育 出国留学 考研考公

串口通信modbus协议格式查询方式下怎么读写寄存器

发布网友 发布时间:2022-04-24 17:50

我来回答

4个回答

热心网友 时间:2023-10-28 08:19

读的功能码是03,写的功能码10,都是16进制。

modbus是一个大的框架协议。具体标准不同,读写寄存器的发码格式不同。标准的modbus有两种主流,一种是modbus-ASCII另一种是modbus-RTU,第三种是modbus-TCP。

1、modbus-ASCII: RS485通讯。传输介质采用屏蔽双绞线。主要针对字符传输,它可以将ASCII码转换成16进制数发送。需要LRC(纵向冗余码)校验数据正确性。

2、modbus-RTU:RS485通讯。传输介质采用屏蔽双绞线。主要针对数据传输,它可以将IEEE754浮点数,整数等转换成16进制数发送。需要CRC-16或CRC-32(循环校验码)校验数据正确性。

3、modbus-TCP:以太网通讯。传输介质网线。可传输字符也可传输数据。因为遵循TCP协议,所以无需校验。

热心网友 时间:2023-10-28 08:19

modbus是一个大的框架协议。具体标准不同,读写寄存器的发码格式不同。标准的modbus有两种主流,一种是modbus-ASCII另一种是modbus-RTU,第三种是modbus-TCP。
modbus-ASCII: RS485通讯。传输介质采用屏蔽双绞线。主要针对字符传输,它可以将ASCII码转换成16进制数发送。需要LRC(纵向冗余码)校验数据正确性。
modbus-RTU:RS485通讯。传输介质采用屏蔽双绞线。主要针对数据传输,它可以将IEEE754浮点数,整数等转换成16进制数发送。需要CRC-16或CRC-32(循环校验码)校验数据正确性。
modbus-TCP:以太网通讯。传输介质网线。可传输字符也可传输数据。因为遵循TCP协议,所以无需校验。

读的功能码是03,写的功能码10,都是16进制。格式:站号(1bit)+功能码(1bit)+起始地址(2bit)+长度(2bit)+校验(2bit)(如果需要)。例如,RTU协议,读取站1,从7052寄存器开始读8个字。(数据长度默认为字)校验码低位在前高位在后的情况发码应为:01 03 1b 8c 00 08 83 03。校验码高位在前低位在后的情况发码应为:01 03 1b 8c 00 08 03 83。
具体CRC-16或LRC校验码的计算,我也不懂,但是可以在网上下到校验位(码)计算工具。
希望对你有帮助。

热心网友 时间:2023-10-28 08:20

旺财,有什么东西发我一份追问0.0 居然知道是我

热心网友 时间:2023-10-28 08:21

自己要编写通信协议的

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com