chenqiangme
工控小蚂蚁 天道酬勤
级别: 略有小成
精华主题: 0
发帖数量: 86 个
工控威望: 262 点
下载积分: 514 分
在线时间: 85(小时)
注册时间: 2007-08-28
最后登录: 2024-12-29
查看chenqiangme的 主题 / 回贴
楼主  发表于: 2020-03-04 22:22
大神们,智能仪表中收到IEEE-754标准的四个浮点字节,比如:D0 41;  D1  30;  D2 00 ;  D3 00
如何处理合并成一个字节。例如:0x41300000(11.0)
wanzhen2006
做工控人.不停学习.分享.交流.
级别: 论坛先锋
精华主题: 0
发帖数量: 263 个
工控威望: 1790 点
下载积分: 2438 分
在线时间: 610(小时)
注册时间: 2012-03-01
最后登录: 2025-01-23
查看wanzhen2006的 主题 / 回贴
1楼  发表于: 2020-03-06 10:46
例如:D0=A;  D1=B;  D2=C ;  D3=D.

西门子为例:解 VB0=A,VB1=B,VB2=C,VB3=D
                             VW0=AB=40001,VW2=CD=40002
                             VD0=ABCD

VB=字节=8bit(8进制),VW =字=16bit(16进制),VD=双字=32bit(32进制)

它结合了两个16位的Modbus寄存器。它可以以4种不同的字/字节顺序显示。如下交换
使用此命令以浮点格式显示数据。大端法。使用2个寄存器。
采用IEEE 754规范。
字节顺序:A B C D
浮点数123456.00或十六进制47 F1 20 00
在Modbus消息中通过电线时的顺序:47 F1 20 00

使用此命令以浮点格式显示数据。小端法。使用2个寄存器。
采用IEEE 754规范。
字节顺序:D C B A
浮点数123456.00或十六进制47 F1 20 00
在Modbus消息中通过电线订购:00 20 F1 47

使用此命令以浮点格式显示数据。大端字节交换。使用2个寄存器。
采用IEEE 754规范。
字节顺序:B A D C
浮点数123456.00或十六进制47 F1 20 00
在Modbus消息中通过电线时的顺序:F1 47 00 20

使用此命令以浮点格式显示数据。小端字节交换。使用2个寄存器。
采用IEEE 754规范。
字节顺序:C D A B
浮点数123456.00或十六进制47 F1 20 00
在Modbus消息中通过电线时订购:20 00 47 F1
[ 此帖被wanzhen2006在2020-03-06 22:44重新编辑 ]
做工控人.不停学习.分享.交流.