发布网友 发布时间:2022-04-30 20:04
共1个回答
热心网友 时间:2023-09-22 22:58
由于软件编程错误,对协议理解错误或通讯干扰等原因,MODBUS通信子站接收到主站的报文后,可以采用异常响应报文给予回答,异常响应报文格式举例如下:
FC 05H 主站=>子站:远方复归 报文 内容含义 备注 1字节 MODBUS地址 01H 举例 1字节 功能码 05H 1字节 线圈地址高字节 01H 1字节 线圈地址低字节 07H 1字节 强制线圈数值高字节 FFH 1字节 强制线圈数值低字节 00H 1字节 CRC高字节 3CH 1字节 CRC低字节 07H 异常响应报文 子站=>主站 报文 内容含义 备注 1字节 MODBUS地址 01H 举例 1字节 功能码 85H 1字节 异常代码 02H 1字节 CRC高字节 C3H 1字节 CRC低字节 51H 子站通过校验,发现主站报文有问题,将响应报文将主站的功能码最高位(D7)置
1,如例子中的02H,异常响应报文中有固定的一个字节作为“异常代码”,表示异常原因。 异常代码 含义 01 非法功能码。子站无法处理主站报文中的功能码。 02 非法数据地址。子站无法处理主站报文中的数据地址。 03 非法数据内容。主站报文中的数据不能满足子站的要求格式。 04 子站设备错误。 05 确认帧。 06 子站忙。