10位低功耗数字温度传感器的应用
武汉力源电子股份有限公司应用推广部(430079) 苏亦雄
摘 要 采用10位低功耗数字温度传感器进行温度测控,可大大简化设计方案,系统性能也更加稳定。重点介绍这种传感器的结构和使用。
关键词 数字温度传感器
OTI输出 故障排队
1 概述
AD公司生产的数字温度传感器,内部包括一个带隙温度传感器和一个10位A/D转换器,精度可达0.25℃,是LM75的升级替换产品。可广泛应用于个人计算机、电子测试设备、办公设备、家用电器、过程控制等场合。
该系列有:AD7414、AD7415、AD7416、AD7814等四种型号,它们的工作原理相同,主要参数见表1,引脚排列如图1所示,引脚说明见表2。
表1 主要参数
型 号 |
AD7414 |
AD7415 |
AD7416 |
AD7814 |
接口方式 |
I2C /SM BUS |
SPI / DSP |
温度测量范围 |
-55~125℃-40~85℃ |
-40~85℃ |
-55~125℃ |
-55~125℃ |
超温指示 |
有 |
无 |
有 |
无 |
省电工作方式 |
无 |
有 |
最大并联数 |
3 |
8 |
1 |
工作电压 |
2.7~5.5V |
转换时间 |
400μs |
封装 |
SOT-23 |
SOT-23 |
SO-8/RM-8 |
SOT-23/uSOIC |

图1 引脚图

图2 AD7416功能框图
2 器件主要组成
以AD7416为例,器件功能框图如图2所示。由带隙温度传感器、10位A/D转换器、温度寄存器、可设点比较器、故障排队计数器等组成。
2.1 带隙温度传感器和10位A/D转换器
传感器将温度转换成电压,再由A/D转换器转换成10位数字量送温度值寄存器。A/D转换器的一次转换时间约400μs。
2.2 温度值寄存器
温度值寄存器是一个16位只读寄存器,它的高10位D15~D6由A/D转换器送来的数字量以补码格式储存,低6位D5~D0未用,如表3所示。
温度数据格式见表4(小数点在D8、D7之间)。该表中显示了A/D转换器的全部理论范围-128℃至+127℃。实际应用中,温度的测量范围将取决于器件的正常工作温度范围,表中所列的数据为理论工作范围中的一些典型值。 |
|
表2 引脚说明
引脚
名称 |
说 明 |
GND |
电源地 |
AS |
逻辑输入,从三个I2C地址中选其一的地址输入 |
VDD |
正电源电压,2.7~5.5V |
SCL |
串行总线时钟 |
OTI |
超温掉电输出(漏极开路) |
SDA |
数字I/O。双向数据串行总线,漏极开路输出 |
A2~A0 |
串行总线地址可编程的低3位 |
DIN |
串行数据输入 |
SCLK |
串行时钟输入 |

|
片选输入 |
DOUT |
串行数据输出 |
表3 温度值寄存器
D15 |
D14 |
D13 |
D12 |
D11 |
D10 |
D9 |
D8 |
D7 |
D6 |
D5~D0 |
B9 |
B8 |
B7 |
B6 |
B5 |
B4 |
B3 |
B2 |
B1 |
B0 |
未用 |
|
2.3 可设点比较器
它对实际测量温度与预先设定的高(TOTI )和低(THYST
)门限(寄存在图2中所示的上、下限寄存器中)进行比较,并在超温指示输出端(OTI)输出一个指示信号。OTI输出端需一个外部上拉电阻,通常为10kΩ。
图3是一简单的风扇控制器,当温度超过80℃时它将接通冷却风扇,而在温度降到75℃时关断风扇。
2.4 故障排队计数器
为了避免在噪声环境下的误触发,器件提供了一个故障排队计数器。例如,如果故障排队设置为4,则必须连续4次的测量温度大于TOTI(或小于THYST),OTI才输出有效。任何打断了这种持续的读操作将复位故障排队计数器,所以如果有三次读数大于TOTI,接着有一次读数小于TOTI,则故障排队计数器将被复位而不会触发OTI。
3 使用方法
3.1 数字温度传感器的安装
数字温度传感器可用于表面或空气温度检测。如用热传导的粘合剂将器件粘附在一个表面上,则管芯温度与表面温度之差大约在0.2℃之内。当环境空气温度与被测量的表面温度不同时,应将器件的背面和引线与空气隔离。接地引脚是通向管芯的最主要的热量路径,必须保证接地引脚也与被测温的表面有良好的热接触。数字温度传感器封装的小型化使其可以被安装在密封的金属探头中进行温度测量。
3.2 器件地址
AD7814的地址由其片选信号 决定; |
AD7416的地址由A0、A1、A2决定,地址格式为:1001
A2A1A0 R/W;
AD7414和AD7415的地址见表5。
3.3 多个数字温度传感器的系统
D7416串行地址的低3位可以由用户设置,允许从1001000至1001111共8个地址中选择。图4示出了有8个AD7416接到一个串行总线的系统,它们的OTI输出“线与”,形成一个公共的中断请求线。 |
|
表4 温度值寄存器
温度 |
数字量输出 |
-128℃ |
10 0000 0000 |
-125℃ |
10 0000 1100 |
-100℃ |
10 0111 0000 |
-75℃ |
10 1101 0100 |
-50℃ |
11 0011 1000 |
-25℃ |
11 1001 1100 |
-0.25℃ |
11 1111 1111 |
0℃ |
00 0000 0000 |
+0.25℃ |
00 0000 0001 |
+10℃ |
0 0001 01000 |
+25℃ |
0 0011 00100 |
+50℃ |
0 0110 01000 |
+75℃ |
0 1001 01100 |
+100℃ |
0 1100 10000 |
+125℃ |
0 1111 10100 |
+127℃ |
0 1111 11100 |
图3 风扇控制器
表5 AD7414/AD7415的地址
器件型号 |
AS引脚连接方式 |
器件地址 |
AD7414.0 |
Floal |
1001 000 |
AD7414.0 |
GND |
1001 001 |
AD7414.0 |
VDD |
1001 010 |
AD7414.1 |
Floal |
1001 100 |
AD7414.1 |
GND |
1001 101 |
AD7414.1 |
VDD |
1001 110 |
|
|
4 应用实例
硬件原理图见图5。这是一个评估电路,可同时安装三片数字温度传感器:AD7414、AD7416、AD7814,软件轮流显示各器件所测得的环境温度,并模拟OTI输出,用LED指示。现作如下几点说明:
(1)各器件的地址不同,而SDA、DOUT引线可直接相连;AD7414、AD7416的OTI输出线与(低电平有效),现作超限报警指示。
(2)因温度的惯性系数较大,可采用简便有效的移动平均法、中值法、低通滤波法等进行软件滤波。在实际应用中,可边采样,边计算其平均值,以其平均值作为温度采样值。采样次数为8~16次即可。
(3)本系统采用LCM103液晶模块作温度显示,X25045作上电复位及看门狗用。
(4)AD7414、AD7416、AD7814的温度数据采样参考程序如下:
;伪定义 |
|
|
|
|
ADCH |
EQU |
32H |
;采样值高字节 |
|
ADCL |
EQU |
31H |
;采样值低字节 |
|
ADCNUM |
EQU |
30H |
;采样次数 |
|
ADCS |
BIT |
P1.5 |
;AD7814片选 |
|
ADSCLK |
BIT |
P1.1 |
;AD7814时钟 |
|
ADDOUT |
BIT |
P1.7 |
;AD7814数据输出 |
|
ADSCL |
BIT |
P1.1 |
;AD7416时钟 |
|
ADSDA |
BIT |
P1.7 |
;AD7416数据I/O |
|
······ |
|
|
|
;程序初始化 |
|
|
|
|
······ |
|
|
|
;AD7814的采样参考程序 |
|
SAMPLE78: |
MOV |
ADCNUM, #8 ;采样8次 |
SE078: |
CLR |
ADCS ;选中AD7814 |
|
MOV |
R7, #16 ;产生16个取数脉冲 |
|
MOV |
ADCH, #0 ;A/D值高字节 |
|
MOV |
ADCL, #0 ;A/D值低字节 |
SE178: |
CLR |
ADSCLK |
|
NOP |
|
|
NOP |
|
|
JB |
ADDOUT, SE178 |
SE378: |
CLR |
ADSCLK |
|
NOP |
|
|
NOP |
|
|
MOV |
C, ADDOUT |
|
MOV |
A, ADCL |
|
RLC |
A |
|
MOV |
ADCL, A |
|
MOV |
A, ADCH |
|
RLC |
A |
|
MOV |
ADCH, A |
|
SETB |
ADSCLK |
|
NOP |
|
|
NOP |
|
|
DJNZ |
R7, SE378 |
|
SETB |
ADCS |
|
······ |
;进行数据处理 |
|
DJNZ |
ADCNUM, SE078 |
|
RET |
|
;AD7416的采样参考程序;AD7414、AD7415与AD7416相似,但地址不同。 |
SAMPLE74: |
MOV |
ADCNUM, #8 ;连续采样8次 |
SE074: |
MOV |
R6, #9EH ;片选AD7416的地址写操作 |
|
MOV |
R5, #1 ;选中配置寄存器 |
|
MOV |
R4, #18H ;给配置寄存器赋值 |
|
LCALL |
WRCOM ;三字节的写操作 |
|
MOV |
R6,#10011110B |
|
MOV |
R5,#3 ;选中温度上限寄存器 |
|
MOV |
R4,#40H ;上限温度=64 |
|
LCALL |
WRCOM |
|
MOV |
R6,#10011110B |
|
MOV |
R5,#2 ;选中温度下限寄存器 |
|
MOV |
R4,#20H ;上限温度=32 |
|
LCALL |
WRCOM |
|
MOV |
R6,#10011110B |
|
MOV |
R5,#0 ;选中温度寄存器 |
|
MOV |
WREXE ;两字节的写操作 |
|
MOV |
DATA1,#10011111B ;片选AD7416,读操作 |
|
LCALL |
RDCOM |
|
······ |
;数据处理 |
|
DJNZ |
ADCNUM,SE074 ;采样未完,返回 |
WRCOM: |
LCALL |
BEGIN ;三字节的写操作 |
|
MOV |
DATA1,R6 |
|
LCALL |
OUTBYTE ;输出字节 |
|
MOV |
DATA1,R5 |
|
LCALL |
OUTBYTE |
|
MOV |
DATA1,R4 |
|
LCALL |
OUTBYTE |
|
LCALL |
STOP |
|
RET |
|
WREXE: |
LCALL |
BEGIN ;两字节的写操作 |
|
MOV |
DATA1,R6 |
|
LCALL |
OUTBYTE |
|
MOV |
DATA1,R5 |
|
LCALL |
OUTBYTE |
|
LCALL |
STOP |
|
RET |
|
RDCOM: |
LCALL |
BEGIN ;读操作 |
|
LCALL |
OUTBYTE |
|
LCALL |
INBYTE ;输入字节 |
|
MOV |
ADCH,DATA1 |
|
LCALL |
NACK ;MCU使ADSDA数据线变为低电平 |
|
LCALL |
INBYTE |
|
MOV |
ADCL,DATA1 |
|
LCALL |
ACK ;MCU使ADSDA数据线变为高电平 |
|
LCALL |
STOP |
|
RET |
|
OUTBYTE: |
MOV |
R7,#8 ;输出字节 |
OE1: |
MOV |
A,DATA1 |
|
RLCA |
|
|
MOV |
ADSDA,C |
|
MOV |
DATA1,A |
|
LCALL |
CLOCK |
|
DJNZ |
R7,OE1 |
|
LCALL |
ACK ;AD7416产生应答 |
|
RET |
|
INBYTE: |
SETB |
ADSDA ;输入字节 |
|
MOV |
R7,#8 |
INE1: |
LCALL |
CLOCK |
|
MOV |
A,DATA1 |
|
RLCA |
|
|
MOV |
DATA1,A |
|
DJNZ |
R7,INE1 |
|
RET |
|
NACK: |
CLR |
ADSDA ;AD7416无应答 |
|
LCALL |
CLOCK ;ADSDA数据线为0,一个时钟脉冲之后,ADSDA为1 |
|
RET |
|
ACK: |
SETB |
ADSDA ;AD7416有应答 |
|
LCALL |
CLOCK ;ADSDA为1,一个时钟脉冲之后,ADSDA为0 |
|
RET |
|
STOP: |
CLR |
ADSDA ;产生停止信号 |
|
SETB |
ADSCL |
|
NOP |
|
|
NOP |
|
|
NOP |
|
|
NOP |
|
|
SETB |
ADSDA |
|
RET |
|
BEGIN: |
SETB |
ADSDA ;产生开始信号 |
|
SETB |
ADSCL |
|
NOP |
|
|
NOP |
|
|
NOP |
|
|
NOP |
|
|
NOP |
|
|
CLR |
ADSDA |
|
NOP |
|
|
NOP |
|
|
NOP |
|
|
NOP |
|
|
CLR |
ADSCL |
|
RET |
|
CLOCK: |
NOP |
;产生时钟脉冲 |
|
SETB |
ADSCL |
|
NOP |
|
|
NOP |
|
|
NOP |
|
|
NOP |
|
|
MOV |
C,ADSDA |
|
CLR |
ADSCL |
|
RET |
|
总之,采用数字温度传感器,可使设计者完全打破传统的设计模式:传感器-运放-A/D转换,从而大大简化了设计方案,提高了电路的可靠性,轻松地实现标度变换过程。
参 考 文 献
1 AD7416具有二线接口的10位低功耗数字温度传感器数据手册.
武汉力源电子股份有限公司, 1999.8
2 AD7414 Data sheet. AD公司
3 AD7415 Data sheet. AD公司
4 AD7814 Data sheet. AD公司
|