Modbu s通讯协议格式 Modbus通讯协议格式为 主机发送:[开始] [从机地址] [功能代码] [起始寄存器地址高8 位] [低8位] [写单寄存器数高8 位] [低8 位] [LRC 校验码] [CR] [LF] 所以本文依据格式逐个介绍解疑: [开始] 为 : [从机地址] 为已知; [功能代码] 的名称、作用将在下面介绍; [寄存器地址]分配及寄存器中值的含义将在下面介绍; [LRC 校验码] 可以用Commix软件算出来,详细请参考Commix相关资料; 最后是实例加以说明验证。 功能码 名称 作用 01 读取线圈状态 取得一组逻辑线圈的当前状态(ON/OFF) 02 读取输入状态 取得一组开关输入的当前状态(ON/OFF) 03 读取保持寄存器 在一个或多个保持寄存器中取得当前的二进制值 04 读取输入寄存器 在一个或多个输入寄存器中取得当前的二进制值 05 强置单线圈 强置一个逻辑线圈的通断状态 06 预置单寄存器 把具体二进值装入一个保持寄存器 07 读取异常状态 取得8个内部线圈的通断状态,这8个线圈的地址由控制器决定 08 回送诊断校验 把诊断校验报文送从机,以对通信处理进行评鉴 09 编程(只用于484) 使主机模拟编程器作用,修改PC从机逻辑 10 控询(只用于484) 可使主机与一台正在执行长程序任务从机通信,探 询该从机是否 已完 成 其 操 作任务,仅 在含有 功能码9的报文发送后,本功能码才 发送 11 读取事 件计 数 可使主机发出单询问 ,并 随 即 判 定操 作是否 成 功,尤 其 是该 命 令或其他应答产生通信错误时 12 读取通信事件记录 可是主机检索每台从机的ModBu s事务处理通信事件记录。如果某项事务处理完成,记录会给出有关错误 13 编程(184/384 484 584) 可使主机模拟编程器功能修改PC从机逻辑 14 探询(184/384 484 584 ) 可使主机与正在执行任务的从机通信,定期控询该从机是否已完成其程序操作,仅在含有功能13的报文发送后,本功能码才得发送 15 强置多线圈 强置一串连续逻辑线圈的通断 16 预置多寄存器 把具体的二进制值装入一串连续的保持寄存器 17 报告从机标识 可使主机判断编址从机的类型及该从机运行指示灯的状态 18 (884和MICRO 84) 可使主机模拟编程功能,修改PC状态逻辑 19 重置通信链路 发生非可修改错误后,是从机复位于已知状态,可重置顺序字节 20 读取通用参数(584L) 显示扩展存储器文件中的数据信息 21 写入通用参数(584L...