Post Go back to editing

AD7124-8内部温度传感器如何读取,通道配置如何设置?

Category: Software
Product Number: AD7124-8
Software Version: 通道配置

现在自己摸索了下,通道配置为: {0x1A, 0x09F0, 2, 1}, /* AD7124_Config_1 */ //PGA = 001, REF=2.50V;

采样处理: Tint = (pAd7124_dev[0]->channel_samples[7] - 0x800000) * 10 / 13584 - 2725; //读AD7124内部温度,精度0.5°C

发现温度比芯片表面温度总是低了1.5°C左右,我哪里做错了,请告诉我正常的设置,多谢!

  • 因为内部传感器测的是Die的温度,不是芯片封装表面的温度,你比较芯片表面温度和7124内部温度是没特别大意义的,你只要相信7124高速您的温度值就行了,否则你也没法自行绕过外部封装测到内部die的温度。

  • 很显然,我问这个问题就是测试发现内部温度传感器不准,芯片内部温度应该会比表面高才对。目前官方就只给了这么一个公式,其他详细的文档也没有,所以我才咨询你们。我现在不知道是我的配置有问题,还是内部传感器就是这样不准。

  • 金属和塑料导热性本身就不一样,所以,即使同样的热源下,二者温度测出来通常就是有差异的。您现在认为芯片测量温度有误差,且认为芯片内部测出来的温度应该比芯片外部的高。怎么说呢,符合直观的逻辑,但是还是那句话,你作为芯片的使用者,没有很好的手段和方法测到芯片内部die的温度,那您就无法认为芯片告诉你的测试结果是错的,而我们作为芯片原厂,我们是有办法测到芯片内部die的温度,并标定其温度精度和测量能力的。

    就像人体正常温度是37度,但医院不会拿你身体任意部位测量体温一样,通常只会拿腋下,口腔这些部位来测温才是比较准确能反映实际体温的,且你通常不能拿手脚测得的人体温度不是37度就反驳水银温度计测不准。

    7124的温度传感器会在芯片内部的一个具体位置,芯片即使内部整个die的温度,也不会完全一致,就和人体的腋下和手脚一样。比如芯片内温度传感器所在的die的位置就是比die其它位置低个1.5度也都不是没可能,芯片内部也是有些地方功耗高有些地方功耗低。再就是die和外塑两种媒介温度更是直接没法比较。

    7124芯片内部测温的typ值是±0.5度,但是也存在个别误差大于typ的情况,但是概率很小,你可以多测几片。

    总之,我不认为您现在观察到的现象,可以推断出7124内部传感器不准的结论。

  • 请你直接告诉我的配置和计算方案是否正确?

    通道配置为: {0x1A, 0x09F0, 2, 1}, /* AD7124_Config_1 */ //PGA = 001, REF=2.50V;

    采样处理: Tint = (pAd7124_dev[0]->channel_samples[7] - 0x800000) * 10 / 13584 - 2725; //读AD7124内部温度,精度0.5°C

  • 配置请使用confuguration register 上电复位值的默认配置。

    公式是对的。

  • 1、默认的通道配置是AIN0、AIN1,不是内部温度传感器通道;

    2、默认的配置0是外部REF,也不是内部2.5V参考;

    所以按上电默认配置压根就出不了温度,请告知通道相关的配置参数,谢谢!

  • 我说的是CONFIGURATION REGISTERS.

    - Internal reference 

    - Bipolar 

    - 1 x Gain 

    - FS = 32