1 引言
ADT75是ADI公司推出的数字温度传感器,内置1个高度集成的温度传感器,其额定工作温度范围为-55℃~+125℃,能够对温度进行准确测量。其内部还包含1个12位的ADC,用来监测并数字化温度值,其分辨率可达0.0625℃,功耗低,工作电压范围是3 V~5.5 V。若工作电压在3.3 V,其典型电流值为300 μA;在关断模式下,典型电流值仅为3μA。ADT75是一款完善的数字温度传感器,集传感器和模数转换器于一体,可大大简化温度测试系统的设计,提高系统的集成化。
ADT75的主要特点如下:
内含12位A/D转换器;
温度误差最大是±1℃,温度分辨率0.0625℃;
SMBus/I2C兼容接口;
工作温度范围为-55℃~+125℃;
超温指示器;
采用关断模式降低能耗;
在3.3 V工作电压下的功耗典型值为69μW;
8引脚MSOP和SOIC封装。
2 ADT75的引脚排列及功能
ADT75的引脚排列如图l所示。各个引脚的功能如表l所列。
3 ADT75的工作原理
ADl75的内部结构如图2所示。主要包括温度传感器、∑一△调节器、4个数据寄存器(温度数据寄存器、配置寄存器、THYST定值寄存器和TOS定值寄存器)和1个地址指针寄存器、数字比较器、SM-Bus/I2C串行接口等。其工作过程如下:温度传感器进行温度采集,产生与绝对温度成一定比例的精确电压,并与内部参考电压进行比较,输入精确的数字式调节器中,转换为有效精度为12位的数据。被测量的温度值与限定值比较,如果测量值超限,则OS/ALERT引脚输出超限信息。
ADl75包含5个寄存器:4个数据寄存器和1个地址指针寄存器。配置寄存器是惟一的8位数据寄存器,其余的均是16位。温度数据寄存器是惟一的只读数据寄存器。上电时,地址指针寄存器被设置为Ox00,且指针指向温度数据寄存器,具体描述见表2。
(1)地址指针寄存器
该8位写寄存器存放指向4个数据寄存器之一的1个地址,并选择单步模式。采用单步模式可以减少电能消耗,当单步模式启动时,ADT75立刻进入关断模式。当VDD为3.3V时,电流消耗为3μA;当VDD为5 V时,电流消耗为5.5μA。P0和P1选择被写入或读出数据字节的数据寄存器。PO、Pl和P2通过向这个寄存器写入04H来选择单步模式。该8位寄存器其余位都设置为零。寄存器地址选择见表3。
(2)温度数据寄存器
16位只读寄存器存储由内置温度传感器测得的温度值,以二进制补码的方式存储,以MSB为温度标记位。读寄存器时,先读高8位,后读低8位。
(3)配置寄存器
8位可读/写寄存器为ADT75配置各种模式,如关断、超温中断、单步、SMBus报警使能、OS/ALERT引脚极性和超温错误队列等。
(4)THYST定值寄存器
这个16位读/写寄存器存放2个中断模式下的温度滞后限定值。温度限定值以二进制补码的方式存储,用MSB作为温度标志位。当从这个寄存器读数时,先读高8位MSB,后读低8位LSB。THYST的缺省设置极限温度为+75℃。
(5)TOS定值寄存器
这个16位读/写寄存器以2个中断模式存放超温限定值。温度限定值以二进制补码的方式存储。当从这个寄存器读数时,先读高8位MSB,后读低8位LSB。TOS的缺省设置极限温度为+80℃。
4 典型应用
温度是测控系统中主要的被控参数之一。实际应用中,经常需要控制温度使之保持在某一范围内。以往,在实际测控系统中,多采用热敏电阻器或热电偶测量温度。这种温度采集电路有时需要冷端补偿电路,这样就增加了电路的复杂性;而且电路易受干扰,使采集到的数据不准确。
4.1 应用比较
在传统的温度测控系统中,用热电偶或热敏电阻器采集温度,再由前置放大电路将检测到的微小信号转变为ADC可转换的信号,同时经过冷端温度补偿后进行A/D转换,这样才能把模拟温度信号数字化,如图3所示。
这种传统电路的特点是需要的器件多,电路所占空间大,电路易受干扰,调试工作量大,电路集成度差,误差大。
ADT75是一款完善的数字温度传感器,集传感器和模/数转换器于一体。采用ADT75大大简化了温度测试系统的设计,电路集成度高,所占空间小,精度高,大大减少了调试工作量。
4.2 应用实例
直冷式电冰柜的机件相对较少,设备不容易出故障,而且制冷相对迅速,它是利用冰柜内空气自然对流的方式冷却食品的。其蒸发器常常安装在冰柜上部,蒸发器周围的空气要与蒸发器产生热交换,空气循环往复自然对流,从而达到制冷的目的。在实际使用中,电冰柜的温度应保持在设定值,这就需要采用温度测控系统进行自动调节。温度控制原理是根据蒸发器的温度控制制冷压缩机的启停、使冰柜内的温度保持在设定的温度范围内。
在直冷式电冰柜温度测控系统的设计中,以AT89C51型单片机为核心,采用ADT75构成温度控制电路。这种电路硬件设计简单且功耗较低,实用性强。ADT75与AT89C51的硬件接口电路如图4所示。
在电路中,将ADT75的SMBus/I2C串行数据输入/输出端SDA与单片机的P11脚相连,串行时钟输入端SCL由P10脚依次发出高低电平,lO kΩ电阻为漏极开路时的上拉电阻器;ADT75采用比较模式,当OS/ALERT输出设置为低电平时,与其相接的蜂鸣器进行温度超限报警。设计中A2、Al和A0接地,则SMBus/I2C的地址为1001000。系统根据测得的温度值,由单片机内部完成PID运算,然后通过外部温度控制装置控制制冷压缩机的启停,进行温度的调节,使电冰柜内的温度保持在某个设定的范围内。
5 工作方式
5.1 串行总线的协议操作方式
主设备(如单片机等,见图4)通过设置开始条件启动数据转换,由ADT75串行数据线SDA定义高到低的转换,同时串行时钟线SCL一直为高电平。
ADT75在第9个时钟脉冲之前拉低数据线,等待数据读出或写入。如果R/W位是0,将数据写入ADT75。如果R/W位是1,将从ADT75中读数据。
数据按照9个时钟脉冲序列的顺序传送到串行总线上。在写入模式下,在第10个时钟脉冲到停止状态期间主设备将拉高数据线。在读出模式下,在第9个时钟脉冲之前的低电平期间单片机将拉高数据线。
5.2 ADT75的写入方式
ADl75有2种不同的写入方式。
(1)寄存器写地址
为了从特定的寄存器读数据,地址指针寄存器必须包含该寄存器地址。如果没有包含该地址,必须通过执行单字节写操作将正确的地址写入地址指针寄存器。
(2)向寄存器写数据
配置寄存器是8位,因此只有数据的1个字节能写入这个寄存器。写到配置寄存器的数据字节包括串行总线地址,数据寄存器地址写到地址指针寄存器中,接着数据字节写入所选择的数据寄存器。THYST寄存器和TOS寄存器都是16位,所以可将2个数据字节写入这些寄存器中。
5.3 ADT75的读出方式
对于配置寄存器,以1个单字节数据的方式从ADT75中读数据。对于温度数据寄存器、THYST寄存器和TOS寄存器,以1个双字节数据的方式从ADT75中读数据。从其他寄存器读数据,需要对地址指针寄存器设定相关的寄存器地址。
5.4 超温模式工作方式
ADT75有2种超温模式,即比较模式和中断模式。
(1)比较模式
在比较模式下,当测量温度降至被存放在THYST定值寄存器中的温度限制值以下时,OS/ALERT指针将再次恢复到无效状态。在比较模式下,设置ADT75为关断模式时,无需重新设置OS/ALERT的状态。
(2)中断模式
在中断模式下,只有从ADT75的寄存器读数据时,OS/ALERT引脚才进入无效状态。在被测温度低于存放在THYST定值寄存器中的设定值时,OS/ALERT引脚返回到有效状态。一旦OS/ALERT引脚被重新设詈,只有当温度高于TOS定值寄存器中的设定值时,它才将再次回到有效状态。
5.5 多电路工作方式
在1个主设备的控制下,最多可将8个ADT75连接到一条SMBus/I2C总线上。像所有的SMBus/I2C兼容设备一样,ADl75有1个7位串行地址,这个地址的高4位被设置为1001;低3位由引脚5、引脚6和引脚7设置(即A2、A1和A0),有8种不同的地址选择。如果不需要多个ADT75共同工作,那么A2、Al和A0引脚接地。
6 结束语
在直冷式电冰柜温度测控系统的硬件设计中,ADT75完全能够满足温度采集的要求,使用起来也很方便。由于温度检测电路的外部接口电路简单,串行接口占用单片机口线少,且性能优良,功耗低,可靠性好,所以设计和运行都达到了非常满意的效果。