在Modbus消息帧的功能码中较常使用的是01、02、03、04、06和16功能码,使用它们即可实现对从机的数字量和模拟量的读写操作。下面我们来看看这些功能码都有什么?它们又代表的是什么意思?
01(读取线圈状态):取得一组线圈的当前状态(ON/PFF);
02(读取输入状态):取得一组开关输入的当前状态(ON/PFF);
03(读取保持寄存器):在一个或多个保持寄存器中取得当前的二进制值;
04(读取输入寄存器):在一个或多个输入寄存器中取得当前的二进制值;
05(强制单线圈):强置一个逻辑线圈的通断状态;
06(预置单寄存器):把具体二进制值装入一个保持寄存器;
07(读取异常状态):取得8个内部线圈的通断状态;
08(回送诊断校验):把诊断校验报文送从机,通信诊断;
16(预置多寄存器):把具体二进制值装入一串连续的保持寄存器;
~(保留):用于异常应答。
欢迎大家找我讨论更多CAN总线相关问题。