一、0x01~0x04:
这四个功能码都是“读”操作,可分两组记忆,0x01和0x02是一组(bool类型),0x03和0x04是一组(寄存器类型);两组属性差不多如下:
1.都是单数是读取可读可写的数据(coil或者holding),双数只能读取只读数据(input);
2.请求的帧格式类似;
功能码占一个字节,起始地址占两个字节,数量占两个字节。
0x01:
0x02:
0x03:
0x04:
3.响应的帧格式类似;
0x01:
0x02:
0x03:
0x04:
二、0x05、0x06;
这两个个寄存器一起记忆,有如下共同点:
1.都是写单个(coil或者register);
2.请求与响应是一样的;
注意不同点:
1.写单个coil的时候,值只能是0x0000(OFF)和0xFF00(ON);
三、0x0F、0x10;
这两个一起记忆,如下共同点:
1.都是写多个(coil或者register)
注意:
1.写coil的时候,与写单个不同,写单个coil用0xFF00和0x0000代表ON和OFF,而在写多个的时候是用bit位的“1”代笔ON,bit位的“0”代表OFF;
另外写多个线圈的请求与响应略复杂。
四、0x14、0x15;
读写文件记录
五、0x16屏蔽写寄存器;
xx
六、0x17读/写多个寄存器
xx
七、0x2B读设备识别码;
xx