ModBus功能码异常和功能码错误代码
参考来源: https://www.cnblogs.com/hi-9527/p/16308588.html
Modbus功能码异常功能码错误码
-
Modbus协议主要构成是地址码/标识码,功能码,寄存器地址,数据报文等内容。由于modbus协议是请求/应答通信协议,其其中功能码
主要用于表述该数据报文执行的功能,当服务器对客户机进行响应时,它使用功能码域来指示正常响应(无差错)或者异常响应(即出现某
种差错),其中的modbus协议的功能码众多,在此我们一-列出与大家分享。
功能码表 -
其中物理离散量输入和输入寄存器只能有I/O系统提供的数据类型,即只能是由I/0系统改变离散量输入和输入寄存器的数值,而上位机程序
不能改变的数据类型,在数据读写上表现为只读,而内部比特或者物理线圈和内部寄存器或物理输出寄存器(保持寄存器)则是上位机应用
程序可以改变的数据类型,在数据读写上表现为可读可写。
错误代码表 -
我们以Modbus RTU协议为例,地址码为0x01, 写操作0x 10,寄存器地址为0x018E,CRC校验。如寄存器可读写的话,返回正常,如寄
存器只读,返回异常。
下发指令: 01 1001 8E 0001 02 00 00 69 BE (向寄存器0x018E写入一个数值为0的数据)
正确回应指令: 01 10 01 8E 000160 1 E(向寄存器地址0x018E写操作-一个寄存器)
错误回应指令: 01 90 01 8D C0 (写操作非法功能,可能是向输入寄存器写数据)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!