打听一下,那个Modbus是按标准,所有指令按标准都实现,还是挑选用到的才实现,用不到的不理他。
如平时就用03读,06/16写。如像08诊断,那样功能有实现么?如下表:
“Y”表示支持“N”表示不支持。
代码 名称 384 484 584 884 M84 984
01 读线圈状态 Y Y Y Y Y Y
02 读输入状态 Y Y Y Y Y Y
03 读线保持寄存器 Y Y Y Y Y Y
04 读输入寄存器 Y Y Y Y Y Y
05 强制单个线圈 Y Y Y Y Y Y
06 预置单个寄存器 Y Y Y Y Y Y
07 读不正常状态 Y Y Y Y Y Y
08 诊断(见第3章)
09 程序 484 N Y N N N N
10 查询 484 N Y N N N N
11 通讯事件控制 Y N Y N N Y
12 通讯事件记录 Y N Y N N Y
13 程序控制器 Y N Y N N Y
14 查询控制器 Y N Y N N Y
15 强制多个寄存器 Y Y Y Y Y Y
16 预置多个寄存器 Y Y Y Y Y Y
17 报告从机 ID Y Y Y Y Y Y
18 程序 884/M84 N N N Y Y N
19 通讯链路复位 N N N Y Y N
20 读通用参考值 N N Y N N Y
21 写通用参考值 N N Y N N Y
22 Mask Write 4X Register N N N N N (1)
23 Read/Write 4X Registers N N N N N (1)
24 Read FIFO 队列 N N N N N (1)