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.

[参考译文] AMC7823:使用内部温度传感器

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/883754/amc7823-using-the-internal-temperature-sensor

器件型号:AMC7823

我无法从内部温度传感器获取有效的温度读数。 我可以很好地读取所有其他 ADC 通道、并使用 DAC 通道和数字 I/O、而不会出现任何问题。 但温度传感器、没有乐趣。

我将 ADC 控制寄存器的值设置为0x8080: 内部触发、自动模式、转换全部9个通道。 配置寄存器设置为0x0040:2.5V 基准电压。

当我读取通道8时、该值会跳到整个位置。  使用数据表第28页的公式将 ADC 计数转换为摄氏度: C = 2.6 * VBE - 273。  VBE 的计算公式为:VBE = Counts * 0.00122。

我一定会错过一些东西。

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

    您好、Steve、

    您能给我一个连续测量值的示例吗?  您是说数字代码发生了巨大变化吗? 或温度快速变化? 分辨率相当低、因此它可能会变化几个 LSB。

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

    这是器件处于室温时的原始连续 ADC 计数。 实际上、计数看起来不会太糟糕。 我想、这是计算出的温度会跳转。  但温度始终在-270'ish 范围内。 要使用第一个计数: 0x0062 = 98十进制。

    98 * 0.00122 = 0.11956mV (VBE)。

    2.6 * 0.11956 - 273 =-272C

    0x0062
    0x0066
    0x0065
    0x0064
    0x0064
    0x0061
    0x0060
    0x0063
    0x0060
    0x0063
    0x0062
    0x0066
    0x005d
    0x0064
    0x0065
    0x005c
    0x0066
    0x0064
    0x005c
    0x0061
    0x0064
    0x0061
    0x0067
    0x0069
    0x005f
    0x0061
    0x0062
    0x0063
    0x005d
    0x0062
    0x005d
    0x0063
    0x0062
    0x005f
    0x0061
    0x0068
    0x0062
    0x005f
    0x0063
    0x005e
    0x0061
    0x0061
    0x0067
    0x0068
    0x0062
    0x0064
    0x005f
    0x0063
    0x0063
    0x0061
    0x0062
    0x0061
    0x0060
    0x0065
    0x005d
    0x0061
    0x0067
    0x0062
    0x0061
    0x0068
    0x005f
    0x0064
    0x0062
    0x005f
    0x0064

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

    您好、Steve、

    该公式有点令人困惑、因为它将单位保持在 mV、而不是 V

    EXT_REF_IN 上是否有用于噪声滤波的电容器? 我10µF……

    例如、  

    VBE = 98×1.22mV = 119.56mV

    温度(°C)=(2.6 (K/mV)×119.56mV)- 273K = 37.856°C

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

    数据表中未显示2.6项的单位是一个巨大的误差。

    在任何情况下、我都相应地更改了计算、现在我得到了更好的值、但它们会跳到整个地方。

    但是、我获取上一个帖子中的前两个 ADC 计数(0x0062、0x0066)、它们的计算结果为37C 和50C。  这是不可用的。

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

    您好、Steve、

    温度传感器精度在±4°C 时指定、大约为±1LSB。  

    您仍会看到高于该值的值、因此让我们看看是否可以将其稍微提高一点。  EXT_REF_IN 上是否有用于噪声滤波的电容器? 我10µF……

    您如何为器件供电? 是否使用未滤波的 SMPS 直流/直流转换器?

    谢谢、

    Paul