数字温度传感器DS1621及其应用

时间:2008-08-29

  DS1621是DALLAS公司生产的一种功能较强的数字式温度传感器和恒温控制器。与同系列的DS1620相比控制更为简单,接口与I2C总线兼容,且可以使用一片控制器控制多达8片的DS1621。其数字温度输出达9位,为0.5℃。通过读取内部的计数值和用于温度补偿的每摄氏度计数值,利用公式计算还可提高温度值的。DS1621可工作在2.7V电压下,适用于低功耗应用系统。利用DS1621和一片2051单片机即可构成一个简洁但功能强大的低电压温度测量控制系统。

  1. DS1621基本特性

  DS1621无需外围元件即可测量温度,将结果以9位数字量(两字节传输)给出,测量范围为-55℃~+155℃,为0.5℃;典型转换时间为1s;用户可自行设置恒温计的温度值,且将该设置值存储在非易失存储器中。数据的读出和写入通过一个2-线串行接口完成,DS1621采用8脚DIP或SOIC封装。

  2. 引脚描述及功能方框图

  DS1621的引脚描述如表1所列。图1是DS1621的功能框图。

  3. DS1621的工作方式

  DS1621既可独立工作(此时作为恒温控制器),也可通过2-线接口在MPU的控制下完成温度的测量和计算。DS1621的工作方式是由片上的设置/状态寄存器来决定的,该寄存器的定义如下:

  其中DONE为转换完成位,温度转换结束时置1,正在进行转换时为0;THF为高温标志位,当温度超过TH预置值时置1;TLF为低温标志位,当温度低于TL预置值时置1;NVB为非易失存储器忙位,向片内E2PROM写入时置1,写入结束后复位写入E2PROM通常需要10ms;PCL为输出极性位,为1时激活状态为逻辑高电平,为0时激活状态为逻辑低电平,该位是非易失的;1SHOT为模式位,该位为1时每次收到开始转换命令执行温度转换,为0时执行连续温度转换,该位亦是非易失的。

  DS1621在嵌入一个系统前,需由MPU将设置/状态寄存器值通过2-线接口写入该寄存器,之后DS1261或作为恒温计独立工作,或在MPU控制下进行温度测量和计算。MPU对DS1621的控制和写入是通过2-线接口进行数据传输的,MPU对DS1621发命令字,之后完成对DS1621的读或写。由于数据传输协议满足I2C总线规范,MPU可将DS1621作为具有I2C总线接口的从器件对待,器件地址为1001A2A1A0R/W,通过A2A1A0编码,可控制多8片DS1621,完成8点温度采样。写入和读出数据格式和时序完成按串行通讯接口规范,SCL和SDA线满足串口通讯启动条件,MPU发出器件地址字节,其中R/W决定读/写方向。MPU发出DS1621的命令字,DS1621发出ACK信号,之后为从器件的数据字节,主器件的ACK信号,……,为串口通讯结束条件,完成数据通讯。

  DS1621的命令集包含下述8个命令字:

DONE
THF
TLF
NVB
1
0
PCL
1SHOT

  ●读温度命令[AAh]

  该命令读出近温度转换的结果。DS1621将送出两字节数据:字节为8位二进制温度值(摄氏温度),该数据以二进制补码形式给出,其中位为温度符号位(0为高于0℃,1为低于0℃),第二字节位为位(0为0.0℃,1为0.5℃),其余位不用。

  ●读写TH寄存器命令[A1h]

  若R/W为0,该命令写入高温寄存器TH,之后MPU发出两字节温度上限值以确定DS1621的恒温上限;若R/W为1,DS1621送出两字节的TH寄存器值。

  ●读写TL寄存器命令[A2h]

  若R/W为0,该命令写入低温寄存器TL,之后MPU发出两字节温度下限值以确定DS1621的恒温下限;若R/W为1,DS1621送出两字节的TL寄存器值。

  ●读写设置命令[ACh]

  若R/W为0,该命令写入设置/状态寄存器,之后MPU发出一字节设置/状态寄存器值以确定DS1621的工作方式;若R/W为1,DS1621送出设置/状态寄存器值。

  ●读计数器命令[A8h]

  该命令只在R/W为1时有效,发出命令后,DS1621送出计数器计数值COUNT_REMAIN。

  ●读斜率命令[A9h]

  该命令只在R/W为1时有效,发出命令后,DS1621送出用于温度补偿的斜率计数器值,即前面提到的每摄氏度计数值COUNT_RER桟。

  ●开始温度转换命令[EEh]

  该命令启动温度转换,无需更多数据。在工作方式下,该命令启动转换,DS1621完成之后保持空闲;在连续工作方式下,该命令启动DS1621连续进行温度转换。

  ●结束温度转换命令[22h]

  该命令结束温度转换,无需更多数据。在连续工作方式下,该命令停止DS1621的温度转换,之后DS1621保持空闲直到MPU发出新的开始温度转换命令来继续温度转换。

  通过该命令集可以看出,DS1621既可以作为独立的恒温控制器单独工作(利用命令A1h、A2h、ACh),也可以进行实时的温度测量(利用命令AAh、ACh、EEh、22h,为0.5℃),还可配合命令A8h、A9h,通过软件计算得到更高的温度,计算公式为:

  T=TR-0.25+[(N-M)/N]

  式中,T2为读出温度值,N为计数器计数值COUNT_RER_C,M为每摄氏度计数值COUNT_REMAIN。

  4. 应用实例

  图2给出了一个多点测温的应用实例,图MPU为ATMEL公司的AT89C2051-24PC,带8片DS1621,整个系统供电电压为3V。

  系统中由P1.7和P1.6担当SDA和SCL,利用软件形成串口通讯时序,程序循环读出000、001、…、111八片DS1621的测温值并存储。图3给出系统的软件流程图。

  由应用实例可看出,利用单片机和多片DS1621可以很容易地构成一个低电压低功耗的多点数字测温系统,该系统可应用于大多数应用场合,且能得到较高的测温。

  欢迎转载,信息来自维库电子市场网(www.dzsc.com)


  
上一篇:谐振技术及其应用
下一篇:基于CAN总线技术在车站信号系统中的应用

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料