双精度和单精度分别占8字节、4字节,在与下位机进行通信时,经常遇到一种请况:一个量是小数形式—>也就是双精度或者单精度。在通信协议中,却只有两个字节的的大小表示该量,很明显,这就存在两个问题。
第一,两个字节无法表示四个字节的内容。
第二,不存在两个字节的小数。
但是强大的liabview提供了一种机制(转换为定点函数),可以轻而易举的实现这种转换
代码如下
上述代码中,具体转换由定点类型指定,下图是定点类型的数据类型设置,表示转换后的字节长度为两字节且不带符号,高八位表示整数位,第八位表示小数位,范围为0~255.996094,步径为0.00390625
运行结果如下
(1)数值在设定范围内时运行结果
(2)数值在设定范围外时运行结果
(a)大于设定最大值
(b)小于设定最小值
**注:**有一个问题我不明白,为什么转换为定点后,虽然可以表示指定的定点数,但是,转换后值 所占的大小却变成了8个字节????
如果你觉得还不错,那就点个赞吧!!!