IEEE754格式的32位浮点数怎么换算,一个智能仪表输出的数据转换成10进制或者浮点数显示

已锁定

蛋扯年华

  • 帖子

    2
  • 精华

    0
  • 被关注

    0

论坛等级:游民

注册时间:2017-09-25

普通 普通 如何晋级?

IEEE754格式的32位浮点数怎么换算,一个智能仪表输出的数据转换成10进制或者浮点数显示

937

3

2018-08-22 16:36:54

仪表地址为3,波特率9600 资料格式N 8 1,标准modbus协议

仪表发送:03 03 00 00 00 06 C4 2A

03     地址

03     功能码

00 00  读取数据起始地址

00 06  读取数据长度,读取6个地址

C4 2A  CRC校验


仪表收到数据后回复

03 03 0C 41 CB 33 33 BF A0 00 00 42 C8 00 00 FA 13

03 地址

03功能码

0C 回来的字节数,12个字节

41 CB 33 33 温度,浮点数为32位,4个字节,温度25.4℃

BF A0 00 00 压力    数值为-1.25

42 C8 00 00 补偿前流量    数值为100

FA 13的校验码


因为每个数据都是占用两个寄存器的,看协议好像是要把两个寄存器高低位进行对调

41 CB    33 33      BF A0   00 00    42 C8   00 00

VD100  VD101   VD102 VD103    VD104  VD105


所以我们需要将V100与V101的数值进行交换,请问用什么指令换?

就是把41CB 3333  高低对调成3333 41CB   



或者有没有好的方法直接转成对应的数据即可

IEEE754格式的32位浮点数怎么换算,一个智能仪表输出的数据转换成10进制或者浮点数显示 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33257条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。