功能码简单详解
Modbus的操作对象有四种:线圈、离散输入、保持寄存器、输入寄存器。
对象 含义
线圈 PLC的输出位,开关量,在Modbus中可读可写
离散量 PLC的输入位,开关量,在Modbus中只读
输入寄存器 PLC中只能从模拟量输入端改变的寄存器,在Modbus中只读
保持寄存器 PLC中用于输出模拟量信号的寄存器,在Modbus中可读可写
根据对象的不同,Modbus的功能码有:
说明更详细的表
功能码定义 英文名 位操作/字操作 操作数量
01 读线圈状态 MB_FUNC_READ_COILS 位操作 单或多
02 读离散量输入状态 MB_FUNC_READ_DISCRETE_INPUTS 位操作 单或多
03 读保持寄存器 MB_FUNC_READ_HOLDING_REGISTER 字操作 单或多
04 读输入寄存器 MB_FUNC_READ_INPUT_REGISTER 字操作 单或多
05 写单个线圈状态 MB_FUNC_WRITE_SINGLE_COIL 位操作 单个
06 写单个保持寄存器 MB_FUNC_WRITE_REGISTER 字操作 单个
15 写多个线圈 MB_FUNC_WRITE_MULTIPLE_COILS 位操作 多个
16 写多个保持寄存器 MB_FUNC_WRITE_MULTIPLE_REGISTERS 字操作 多个