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

how can i convert byte array from LPSTK-CC1352R temperature to decimal

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

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

这里有一个值的例子。

我尝试了很多将它们转换成简单的温度值但没有成功。 我什至找到了一种tutorial,但没有成功。

谁能帮我转换一下?

谢谢:)

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

https://en.wikipedia.org/wiki/Endianness#:~:text=Little%2Dendian%20representation%20of%20integers,visualized%2C%20an%20oddity%20for%20programmers.

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