完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
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左右,我哪里做错了,请告诉我正常的设置,多谢! |
|
相关推荐
1个回答
|
|
首先,我们需要了解AD7124-8是一款12位、8通道的模数转换器(ADC),具有内部温度传感器。在您的代码中,您已经设置了通道配置,但是可能存在一些问题。让我们逐步检查并解决问题。
1. 通道配置设置: 您提供的通道配置为:{0x1A, 0x09F0, 2, 1}。这个配置看起来是正确的,其中PGA(增益)设置为1,参考电压设置为2.50V。但是,我们需要确保这个配置与您的硬件和需求相匹配。 2. 读取内部温度传感器: 您的代码中使用了以下公式来计算内部温度: `Tint = (pAd7124_dev[0]->channel_samples[7] - 0x800000) * 10 / 13584 - 2725;` 这个公式看起来有问题。根据AD7124-8的数据手册,内部温度传感器的输出与温度的关系应该是: `Tint = (pAd7124_dev[0]->channel_samples[7] - 0x800000) * 5 / 32768 - 273.15;` 这里,我们将公式中的10改为5,并将-2725改为-273.15,以获得更准确的温度值。 3. 温度偏差问题: 您提到温度比芯片表面温度总是低了1.5°C左右。这可能是由于以下原因: - 温度传感器的位置:内部温度传感器可能位于芯片内部,与芯片表面有一定的距离,因此温度可能略有差异。 - 环境因素:周围环境的温度变化可能会影响测量结果。 为了解决这个问题,您可以尝试以下方法: - 校准温度传感器:通过在已知温度下测量芯片表面温度,然后调整公式中的常数以消除偏差。 - 考虑环境因素:在计算温度时,考虑周围环境的温度变化。 总之,您需要修改温度计算公式,并考虑可能影响测量结果的因素。希望这些建议能帮助您解决问题。 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
为什么在频率为10^3 Hz处,产生的相移就可以确定约为-90度
1321 浏览 1 评论
【高手问答】电路的功能是为了0.6v到40v之间调压,运放发热严重
3486 浏览 8 评论
USB3.0 工业相机的传输速率是否受到电脑主板某些硬件的限制?
1227 浏览 0 评论
2420 浏览 1 评论
1330 浏览 0 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 23:30 , Processed in 0.763650 second(s), Total 77, Slave 59 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号