This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TMP102:温度寄存器返回温度度数

Guru**** 2587345 points
Other Parts Discussed in Thread: TMP102

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/sensors-group/sensors/f/sensors-forum/649779/tmp102-temperature-register-transfer-back-temp-degree

器件型号:TMP102

您好、Sirs、

我们使用了 TMP102、我们读取温度寄存器的值为 40250 (数字)= 0x9D3A

如何 传递回温度度?

驱动器返回值单位似乎是毫摄氏度、这是正确的吗?

比如
40250 MC = 40.25度?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、舒成

    您能否共享您正在使用的驱动程序? 您的软件应与以下类似、其中 HiByte 是通过 I2C 接收的前8位、而 LoByte 是接收到的后8位。
    浮点转换温度(char HiByte、char LoByte){
    浮点温度;
    temp =(float)(HiByte << 8 | LoByte);
    temp *= 0.00390625;//等于*2^-8或/2^8或>> 8
    返回温度;


    您能否分享您的通信示波器画面? 0x9D3A 的结果对于 TMP102的12位或13位模式没有意义。 在这两种情况下、它都表示负温度错误。

    谢谢、
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Sirs、

    请参阅我们的答复如下

    我们将 SoC 供应商的本机 SDK 与现有的 TMP102驱动程序结合使用,您可以在以下 URL 中找到该驱动程序:

           https://elixir.free-electrons.com/linux/v3.9.11/source/drivers/hwmon/tmp102.c

    我只是在安装驱动程序后从 sysfs 中读取设备属性 temp1_input。

    顺便说一下、您能否提供 TI 官方 TMP102驱动程序示例供我们参考?

    谢谢!!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、舒成

    此驱动程序随 Linux 内核提供、并由开源社区创建。 TI 不支持此驱动程序。 TI 不为 TMP102提供 TI 官方 Linux 内核驱动程序。

    也就是说、如果您查看链接的源代码、会发现有注释、指出温度结果会转换为摄氏度。

    对于任何其他寻找 TMP102驱动程序的人、请参阅 TMP102产品登录页面上的 Arduino 示例。  www.ti.com/.../toolssoftware


    谢谢、