如何将字节数组从LPSTK-CC1352R温度转换为十进制



我尝试使用Node RED和蓝牙连接设置LPSTK-CC1352R Launchpad。内置传感器是hdc2080传感器。我不是电子工程师,所以数据表让我有点困惑。我做到了这一点,通过蓝牙连接到MCU,并每秒获取温度值。不幸的是,我得到这些值作为一个4维十六进制数组。

[04 4a d5 41]
[dc 44 d5 41]
[b4 3f d5 41]
[8c 3a d5 41]
...

这是一个价值观的例子。

我试了很多次把它们转换成一个简单的温度值,但都没有成功。我甚至找到了一种教程,但没有成功。

有人能帮我转换吗?

谢谢:(

您必须从右到左重新排列十六进制值,因为最后一个十六进制值没有变化,这意味着它必须是小端序。

https://en.wikipedia.org/wiki/Endianness#:~:text=%20整数的小%2D字节%20表示%20,为%20程序员可视化%2C%20奇数%20。

4hex是32位

转换为IEEE-754浮点:

[41 d5 4a 04] = 26.6611404419
[41 d5 44 dc] = 26.6586227417
[41 d5 3f b4] = 26.6561050415
[41 d5 3a 8c] = 26.6535873413

https://www.h-schmidt.net/FloatConverter/IEEE754.html

最新更新