微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 测试测量 > 虚拟仪器 > 在Labview中SGL类型是几位的浮点型呢?

在Labview中SGL类型是几位的浮点型呢?

时间:12-13 整理:3721RD 点击:
我想读一组数据,是4位二进制格式,用Read File.VI 其中设置byte stream type为SGL,
通过运行,有的数据是对的,但也出现了一些如8.7E+18的离谱数据,改了其它几个参数
也没有得到正确结果,所以想请教大家了,该如何读4位二进制文件呢?谢谢!
.197

存储是按 32-bit IEEE标准格式存储的
而你说的那个位数,应该是自己设置的吧
.68

这个数据文件不是用Labview采集存储的,是一个已经采集好的现成数据,已知它的数据结构是4位二进制存储的
.197

那我觉得不应该用SGL吧,这个不是浮点吗?
你说的4位二进制,是不是0000到1111这种啊?
这种恐怕应该用定点的,至于选哪个,我也没做过,不妄下评论了,还是请牛人给你指点吧,:)
.68
.68

4位2进制 我理解是不是 0000-1111这种阿?
如果是这样应该用 读二进制文件的那个 vi
设置成每次读4个2进制位就行了吧
.35

实在不好意思,写错了,我想的和你一样的,呵呵
.68

如果真是4位那分辨率就只有1/16.我觉得这不可能. 你大概是想说4byte的二进制吧.
不同的卡采集出来的数是不一样的.取决于卡和驱动的设计.一般从AD出来到寄存器.直接读
取得到是unsigned int类型.需要转换成对应电压的形式.有的驱动做转换,有的不做转换但
提供转换方法或函数. 转换后可能用int,也可能用float.不看说明没人能确定.
在labview里面,float(single)是4字节的.double是八字节.U32是四字节.I32也是四字节.
你就一个一个试吧.Goodluck
.70

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top