带有存储器功能的数字温度计-DS1624技术应用
1. DS1624基本原理
DS1624是美国DALLAS公司生产的集成了测量系统和存储器于一体的芯片。数字接口电路简单,与I2C总线兼容,且可以使用一片控制器控制多达8片的DS1624。其数字温度输出达13位,精度为0.03125℃。DS1624可工作在最低2.7V电压下,适用于低功耗应用系统。
(1). DS1624基本特性
◆ 无需外围元件即可测量温度
◆ 测量范围为-55℃~+125℃,精度为0.03125℃
◆ 测量温度的结果以13位数字量(两字节传输)给出
◆ 测量温度的典型转换时间为1秒
◆ 集成了256字节的E2PROM非易性存储器
◆ 数据的读出和写入通过一个2-线(I2C)串行接口完成
◆ 采用8脚DIP或SOIC封装,如图2.34.1
图2.34.1
(2). 引脚描述及功能方框图
其引脚描述如表1所示:
DS1624的功能结构图如图4.34.2所示:
图4.34.2
(3). DS1624工作原理
温度测量
图4.34.3是温度测量的原理结构图
图4.34.3 温度测量的原理结构图
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
表2是13位温度寄存器中存储温度值的数据格式
高八位字节 低八位字节
S
B14
B13
B12
B11
B10
B9
B8
B7
B6
B5
B4
B3
0
0
0
表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将连续进行温度转换,并将最近一次的结果保存在温度寄存器中。该位为非易失性的。片内256字节存储器操作
控制器对DS1624的存储器编程有两种模式:一种是字节编程模式,另一种是页编程模式。
在字节编程模式中,主控制器发送地址和一个字节的数据到DS1624。
在主器件发出开始(START)信号以后,主器件发送写控制字节即1001A2A1A00(其中R/W控制位为低电平“0”)。指示从接收器被寻址,DS1624接收后应答,再由主器件发送访问存储器指令(17H)后,DS1624接收后应答,接着由主器件发送的下一个字节字地址将被写入到DS1624的地址指针。主器件接收到来自DS1624的另一个确认信号以后,发送数据字节,并写入到寻址的存储地址。DS1624再次发出确认信号,同时主器件产生停止条件STOP,启动内部写周期。在内部写周期DS1624将不产生确认信号。