在做和信捷XDH型plc进行modbusTcp通讯时,需要写64位浮点数,
modbus写入多个寄存器时是寄存器数组。
![](https://img-blog.csdnimg.cn/img_convert/d2b35ff2729d0d2329f7d967bbee6335.png)
图1-modbus写入多个保持寄存器vi(函数)
![](https://img-blog.csdnimg.cn/img_convert/89b1367452f07b4ba8e3fb981174c239.png)
图2-帮助截图
所以需要拆成4个16位无符号整数,再传到数组。
思路:双精度浮点数数字平化成字符串(把数字转化为16进制之后写入字符串)
,再转换成4个字符串,然后转换成4个符号字节数组,运算得到16位无符号整数。
面板介绍
![](https://img-blog.csdnimg.cn/img_convert/bf44d7b989061fe6e457cbfbe74d678a.png)
图3- 前面板
说明:数据
![](https://img-blog.csdnimg.cn/img_convert/20a1daaa32886b68b5c9854210465f48.png)
图4-连线板
2.平化字符串的说明
![](https://img-blog.csdnimg.cn/img_convert/4b490dae2a3d2212773e0e7c4788cee5.png)
图5-怎么找平化字符串
使任何数据输入转换为二进制值组成的平化数据字符串。
此外,还可使用该函数转换已平化的数据字符串的字节顺序或endian格式。
3.下载链接