求教P#DB1.DBX0.0 WORD 10 和 P#DB1.DBX0.0 INT 10的区别?
在modbus tcp编程中MB_SERVER指令有个参数MB_HOLD_REG,需要写成P#DB1.DBX0.0 WORD 10的样式,意思是对DB1块的DBX0.0开始的10个字,那么P#DB1.DBX0.0 INT 10是否表示同样意思?因为WORD和INT都是字(2字节)。
我在DB1中设置一个数组arr1[0..9] of INT应该是用P#DB1.DBX0.0 INT 10么?
我能不能用P#DB1.DBX0.0 BYTE 20 或 P#DB1.DBX0.0 UINT 10 呢?
还有,如果我的DB1中有两个相连数组,另一个为arr2[0..9] of Real,那是否可以用P#DB1.DBX0.0 INT 30?因为1个Real是4个字节,1个INT是2个字节,arr1和arr2一共60个字节。
我的疑问,这个声明P#DB1.DBX0.0 INT 10是根据DB1的数据类型来写,还是只是表示一个有固定长度的区域,里面的数据类型不限,只要长度够用就行呢?
如果数据块中数据类型不只一种,有多种,该如何写这个MB_HOLD_REG参数呢?