modbus协议

Modbus 莫迪康 1979  PLC 1969年

RTU ASCII TCP

Modbus Rtu通讯协议

通信会涉及读写

存储区:

输出线圈 0   00001 -09999

输入线圈 1   10001 - 19999

输出寄存器 4 40001 -49999

输入寄存器 3 30001 -39999

 其实也就是单片机的寄存器读写。bool布尔量只有0或1

存储区范围:5位和6位 标准地址 和扩展地址

---------------------------------------------------------------------------------------------------------------------------------

读写

读输出线圈 01

读输入线圈  02

读输出寄存器  03

读输入寄存器 04

写单个输出线圈 05

写多个输出线圈 15

写单个输出寄存器 06  

写多个输出寄存器 16 

---------------------------------------------------------------------------------------------------------------------------------

ModBus报文协议RTU/ASCII

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

校验位验证数据的准确性

CRC(Cyclic Redundancy Check,循环冗余校验)是一种广泛使用的错误检测机制,用于确保数据在传输或存储过程中没有发生意外的更改或损坏。CRC主要用于网络通信、存储设备和数据传输系统中,以提高数据传输的可靠性。

一个寄存器十六位,占用两个字节 example:

发送:01 (站地址)03(读输出寄存器) 00 00(起始寄存器) 00  02 (寄存器长度)

C4 0B(CRC校验)十六进制转为二进制

接收:01(站地址) 03( 读输出寄存器)04(字节计数) 01 46 01 3B 5A 59(CRC校验)

146  -》326  13B -》315

校验位算法

相对地址从0开始 

   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值