modbus怎么写多个保持寄存器

近期,在做项目的时候,用到了modbus协议,有一个校时功能,就是需要定时发送时间到相应的设备,给相应的设备校时,协议里给出了寄存器地址和数据格式,如下

 这个在程序里就需要写多个连续的保持寄存器,报文格式如下:

串口modbus报文格式

11 10 13 27 00 04 08 18 04 1C 0F 04 23 F0 F0 4E D8 

解析如下:

11//从机地址

10//功能码  写多个保持寄存器,功能吗需要设置固定的10

13 27//寄存器起始地址

00 04//写几个寄存器

08//后续所有寄存器数据长度

18 04//年 月

1C 0F//日时

04 23//分秒

F0 F0//时钟修改标志

4E D8 //校验

/************************************************************************************/

网口modbus写多个保持寄存器格式如下:

00 A2 00 00//帧头

00 0F//后续数据长度

11//从机地址

10//功能码  写多个保持寄存器,功能吗需要设置固定的10

13 27//寄存器起始地址

00 04//写几个寄存器

08//后续所有寄存器数据长度

18 04//年 月

1C 0F//日时

04 09//分秒

F0 F0 //时钟修改标志

 

posted @ 2024-04-29 08:42  Struggle_Rui  阅读(935)  评论(0编辑  收藏  举报