如何将一个四字节的数 转换成一个浮点数

我现在碰到一个问题 用S71200读国网协议的电表,电表的协议时DLT645-1997 这种仪表收发数据都是按字节形式,而且每个数据不是连续的,比如对于一个数据 13589.20  是这样的我现在通过PLC读取 DB1.DBB1 放的是20  DB1.DBB2放的是 89  DB1.DBB3放的是 35  DB1.DBB4 放的是01现在如何把他们装到一个浮点数中,这样我做上位机时可以剩很多变量。如我把数放到 DB2.DBD0 13589.20 。因为不是MODBUS-RTU协议,所以不能直接读浮点数,而且数据是不连续的,DLT645-1997 这种协议的数据容器全部是字节。请用大家告诉我如何实现

最佳答案

你这应该是字符串,先转换成实数数值,然后db1.dbb4*10000.0+db1.dbb3*100.0+db1.dbb2+db1.dbb1/100.0就是你要的实数。

提问者对于答案的评价:
谢谢 我觉得我这个问题太2B了,我的本意是如何将 DB1.DBB0 DB1.DBB1 DB1.DBB2 DB1.DBB3  这四个字节转换完还放到 DB1.DBD0 太傻了这是不可能的。明白了 想多了  谢谢

专家置评

已阅,最佳答案正确。

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc204468.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年11月1日 下午7:55
下一篇 2017年11月1日

相关推荐