返回的数据包格式如表2-3所示。
表2-3返回数据包内容
从机数据返回 字节数 返回的数据 解析
从机设备号 1 01 与从机01通信
功能码 1 03 读单个或多个寄存器
读取字节长度 1 02 1个寄存器的字节数为2
寄存器数据 2 FF3F 0000H寄存器中的数据
CRC码 2 B9A4 前2个字节的CRC码
2)功能码06
代码功能:写单个寄存器
系统实现的功能是要将数据FF3F保存到设备号为01的设备且地址为0000的从机寄存器中去。
主机发送数据包格式如表2-4所示。
表2-4发送数据包内容
主机发送 字节数 发送的数据 解析
从机设备号 1 01 与从机01通信
功能码 1 06 写单个寄存器
寄存器起始地址 2 0000 寄存器的起始地址
写入数据 2 FF3F 对应的新数据
CRC码 2 882A 前2个字节的CRC码
主机返回的数据包格式如表2-5所示:
表2-5发送数据包内容
主机发送 字节数 发送的数据 解析
从机设备号 1 01 与从机01通信
功能码 1 06 写单个寄存器
寄存器起始地址 2 0000H 起始地址
写入数据 2 FF3F 0000H寄存器中的数据
CRC码 2 882A 前2个字节的CRC码
从机返回的数据包中CRC校验码与发送的一致,说明该系统通信正常。
3)功能码10
代码功能:写多个寄存器
系统实现的功能是主机要把数据FF3F,0201分别保存到一号设备地址为0000,0001的从机寄存器中。
主机发送数据包格式如表2-6所示。
表2-6发送报文内容
主机发送 字节数 发送的数据 解析
从机设备号 1