基本原理
- Modbus协议是一种工业领域常用的协议。
- 一个主机最多搭载200多个从机,每个从机都有唯一的对应的地址码。
- 只能主机主动发送请求,从机响应;从机不可以发放请求 。
- 从机可以是任何可以支持modbus的设备,如:继电器,温湿度传感器。
- 从机内部有寄存器,可以存储数据
通信过程

- 发送请求:
从机地址码+操作类型(读数据/更新数据)+要读取从机的寄存器第几个地址+需要读取几个连续的地址+CRC校验(对前面数据的校验)【站地址+功能码+寄存器地址+寄存器个数+CRC校验】 - 响应请求
从机分析主机发过来的数据,在规定的时间内进行响应。
如果响应超时,主机会丢弃响应的数据,重新发送请求。
CRC校验
循环冗余校验CRC-16,生成多项式是0xA001。
校验位是低字节在前,高字节在后。(* 数字书写习惯:高字节在前,低字节在后 *)