微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 硬件电路设计 > TI模拟硬件电路设计 > tmp006 电压寄存器读数满值,计算出的目标温度为300多摄氏度?

tmp006 电压寄存器读数满值,计算出的目标温度为300多摄氏度?

时间:10-02 整理:3721RD 点击:

现在利用tmp006计算出的目标温度好像可以了,至少是接近真实温度了。但是不知道为什么在某些情况下,如探头对着天花板或者用手捏着探头,Vobj寄存器读数(总是满值65535或者接近满值),这时候按照公式转换出来的摄氏温度就为300多度了。可以肯定iic通信没有问题,因为本地温度显示一直正常,求解答!

Vobj中寄存器的数是以补码方式出现的,因此如果读出是FFFFh的话其实是一个非常接近0的数,即-156.25nV

请帮我确认下你说的这些特殊情况测试下的寄存器读数满值指的是7FFFh即32767还是FFFFh即-1,谢谢!

FFFF,但是已做if(tmp006_data&0x8000)tmp006_v=-((~tmp006_data)+1)*156.25*0.000000001;我再看看是不是你说的这种情况,我算错了?

我又看了看,我确实算错了,应该把读出来的0xffff取反加1后,然后进行类型转换(float)才对,谢谢你的提醒!

您好!

     请问您测目标温度所需的时间是多少?我测人体温度,测量时间居然达到30s,能向您请教一下原因吗?

     当我把tmp006靠近人体额头时,这时从寄存器里读的电压值变化缓慢,计算出来的值也是变化缓慢,直到大约30s时,才值才稳定。

     请问您测得是什么物体?校准系数用的是多少?测目标温度所需的时间是多少?像我的这种情况,为什么会出现这种情况呢?

  

我感觉人体温度与周围环境温度的差值不算太大时,电压寄存器里值的变化相对缓慢吧,其实测量人体温度时也只是测量了人的体表温度,与人体的实际温度还是有点误差的,但不知道这种误差是不是相对误差,即测量的这个体表的温度还是能够反映出实际体温的变化,只是要做一定的误差修正,不知道你试验下来测量人体温度的结果如何?

你好!我测量的人体温度,结果是响应速度慢。个人觉得我是布局有问题。没有按照要求的布局,才会导致这样的结果。

手册第3页,最长的转换时间才4秒,正常情况下不应该出现30s的响应时间。会不会是你给的SCL频率太低了?另外,如果怀疑布局有问题,可以参考手册第6页提到的那篇文档“TMP006 Layout and Assembly Guidelines”。

上一篇:ads8329驱动问题
下一篇:采样定理求解答

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top