s7-200 modbus向仪表写数据
郑志武
发布于2013-10-27 17:41
255
0
标签:
226做modbus主站,向远程仪表读写数据。读数据我已经读出来了,为什么写老是报错呢。
仪表要求如下:
地址功能码地址设定值crc校验
41h-44h06h*xh*xhcrc16
我的程序如下:
网络1:
ldalways_on:sm0.0
=l60.0
ldalways_on:sm0.0
=l63.7
ldl60.0
callmbus_ctrl:sbr1,l63.7,9600,1,1000,mbus_ctrl_done:m0.0,mbus_ctrl_error:mb1
网络2:
ldstart_mbus_msg:m0.1
=l60.0
ldstart_mbus_msg:m0.1
eu
=l63.7
ldl60.0
callmbus_msg:sbr2,l63.7,65,1,40257,2,&vb1000,read_register_done:m2.1,mb3
我下载后,通过改变m0.1值。mb3的代码总是显示3.怎么回事呢。
问题补充:
是不是数据个数应该是1,不能是2呢。功能码06好像是写一个字。
图片说明: 1,lad
佳答案
06是对1个寄存器进行写操作,已经将数量设为1,否则会报错。