登录站点

用户名

密码

温度测量

已有 352 次阅读  2011-12-25 20:39   标签测量  温度 

温度测量

下图是温度测量的原理结构图

  DS1624在测量温度时使用了独有的在线温度测量技术。它通过在一个由对温度高度敏感的振荡器决定的计数周期内对温度低敏感的振荡器时钟脉冲的计数值的计算来测量温度。DS1624在计数器中预置了一个初值,它相当于-55℃。如果计数周期结束之前计数器达到0,已预置了此初值的温度寄存器中的数字就会增加,从而表明温度高于-55℃。

  与此同时,计数器斜坡累加电路被重新预置一个值,然后计数器重新对时钟计数,直到计数值为 0。

  通过改变增加的每 1℃内的计数器的计数,斜坡累加电路可以补偿振荡器的非线性误差,以提高精度,任意温度下计数器的值和每一斜坡累加电路的值对应的计数次数须为已知。

  DS1624通过这些计算可以得到0.03125℃的精度,温度输出为13位,在发出读温度值请求后还会输出两位补偿值。表2给出了所测的温度和输出数据的关系。这些数据可通过2线制串行口连续输出,MSB在前,LSB在后。

表 2  温度与输出数据关系表

温度

数字量输出(二进制)

数字量输出(十六进制)

+ 125 ℃

0111 , 1101 , 0000 , 0000

7D00H

+ 25.0625 ℃

0001 , 1001 , 0001 , 0000

1910H

+ 0.5 ℃

0000 , 0000 , 1000 , 0000

0080H

+ 0 ℃

0000 , 0000 , 0000 , 0000

0000H

-0.5 ℃

1111 , 1111 , 1000 , 0000

FF80H

-25.0625 ℃

1110 , 0110 , 1111 , 0000

E6F0H

-55 ℃

1100 , 1001 , 0000 , 0000

C900H

由于数据在总线上传输时 MSB在前,所以DS1624读出的数据可以是一个字节(分辨率为1℃),也可以是两个字节,第二个字节包含的最低位为0.03125℃。

表 2 是 13 位温度寄存器中存储温度值的数据格式

表 3  温度值的数据存储格式  
放大

 

其中 S -为符号位,当 S = 0 时,表示当前的测量的温度为正的温度;当 S = 1 时,表示当前的测量的温度为负的温度。 B14 - B3 为当前测量的温度值。最低三位被设置为 0 。

DS1624 工作方式

DS1621的工作方式是由片上的配置/状态寄存器来决定的,如表4,该寄存器的定义如下:

表 4 配置/状态寄存器格式

DONE

1

0

0

1

0

1

1SHOT

其中 DONE为转换完成位,温度转换结束时置1,正在进行转换时为0; 1SHOT 为 温度转换模式选择。 1SHOT 为 1时为单次转换模式,DS1624在收到启动温度转换命令EEH后进行一次温度转换。 1SHOT 为 0时为连续转换模式,此时DS1624将连续进行温度转换,并将最近一次的结果保存在温度寄存器中。该位为非易失性的。

上一篇: C语言深入浅出 :回味经典 下一篇: 片内 256字节存储器操作

分享 举报