《MAX6625型智能数字温度传感器工作原理及程序设置经验分享.doc》由会员分享,可在线阅读,更多相关《MAX6625型智能数字温度传感器工作原理及程序设置经验分享.doc(6页珍藏版)》请在三一文库上搜索。
1、MAX6625型智能数字温度传感器工作原理及程序设置经验分享1 引言在系统温度测量和控制中,温度传感器的选用正从模拟式向数字式、从集成化向智能化的方向飞速发展。MAX6625是美国Maxim公司生产的一种新型智能温度传感器,它在风扇控制、温度告警、系统温度测量及工业设备中得到广泛应用。MAX6625将温度传感器、9位AD转换器、可编程温度界限报警和I2C总线串行接口集成在同一个芯片中。MAX6625内含9位A/D转换器可代替LM75。内置的VPN引擎来实现。2 结构和引脚功能MAX6625型智能数字温度传感器主要包括带隙基准电压源及温度传感器、AD转换器、5个控制寄存器(地址指针寄存器、温度数
2、据寄存器、上限温度寄存器、下限温度寄存器和配置寄存器)、设置温度点比较器、故障排队计数器和I2C串行总线接口电路等。其结构框图如图1所示。MAX6625采用SOT236小型化封装如图2所示。其引脚功能如下:SDA是12C兼容的串行双向数据线;SCL是12C兼容的串行时钟线;ADD是:I2C兼容的地址设置端;0T是温度告警输出端;Vs是电源;GND是电源地。3 MAX6225的工作原理MAX6625通过FC总线接口由主控制器进行编程设置OT端的告警模式和极性、温度告警点和读出测量温度数据。MAX6625为从器件,支持I2C总线的字节和字读,写操作命令。一条12C总线可接4个MAX6625可实现一
3、点和多点温度测量与控制。31 地址选择MAX6625用ADD引脚设置地址。当ADD端连接到GND、Vs、SDA、SCL中的任意一个引脚时表示一个独立的地址,分别是1001000B、1001001B、1001010B、100101lB。当主控制器访问MAX6625时,首先将地址送到12C总线。32 MAX6625的初始设置在进行正常工作之前应首先设置好MAX6625OT告警端的工作模式和极性、告警的高温点和低温点。这些功能的实现是由主控制器通过12C总线向MAX6625内部的相关寄存器写特定的数据完成的。下面介绍MAX6625内部的5个寄存器、OT告警工作模式和极性确定及寄存器数据的写入过程。3
4、21 MAX6625的控制寄存器(1)地址指针寄存器主控制器通过I2C总线向地址指针寄存器写人数据确定其他4个寄存器之一被选择。地址指针寄存器的数据格式和其他寄存器的选择如表1所示。当Dl、D0=00时,选择温度寄存器;当D1、D0=01时选择配置寄存器;当D1、DO=10时,选择低温寄存器;当Dl、DO=11时,选择高温寄存器。(2)温度寄存器MAX6625温度寄存器的长度是16位。存放最新的温度转换数据,D15为符号位。D14D7为有效数据D6DO位为0。温度寄存器中的数据是摄氏温度的补码。1LSB表示0.5。(3)高温,低温寄存器MAX6625高温,低温寄存器的长度是16位,其中9位有效
5、数据。不用的位填0。数据格式与温度寄存器相同。(4)配置寄存器配置寄存器是8位的读/写寄存器,其数据格式和作用如表2所示。其中D7、D6、D5位为000。D4、D3位为故障排队深度设置位,当D4、D3=00时,故障排队深度为l:当D4、D3=01时,故障排队深度为2:当D4、D3=10时。故障排队深度为4;当D4、D3=ll时。故障排队深度为6。D2为OT告警极性选择位。当D2=0时,低电平有效;当D2=1时,高电平有效。D1为比较和中断模式选择位,当D1=0时为比较模式:当DI=I时中断模式。DO为掉电模式控制位。当D0=0时为正常工作;当D0=I时为掉电模式。322 OT告警模式与极性配置
6、寄存器中的D1数据位用来设置OT端的告警模式。当Dl=0时为比较模式;当D1=1时为中断模式。在比较模式下,当连续转换超出高温寄存器中的值(THIGH)的数目等于故障排队深度时OT告警。当连续转换低于低温寄存器中的值(TLOW)的数目等于故障排队值时,OT告警清除。例如:THIGH设置为+100,其TLOW的设置为+80,故障排队深度设置为4,直到4个连续转换超出+100时,OT才告警。当4个连续转换都低于+80时,OT将退出告警。在中断模式中,MAX6625的高温点或低温点告警是基于前一个温度告警。OT端有低温告警也有高温告警,确定0T端告警依赖于某一条件。假设上电后故障告警被清除,MAX6
7、625出现一个高温点告警。在高温点告警之后,MAX6625又出现一个低温点告警。在低温点告警之后,MAX6625出现一个高温点告警高温点或低温点告警按一定的节拍交替。一旦任意一个故障发生,它激活的告警是不确定的,直到读温度寄存器的操作之后才可断定。然后对应每一个故障告警。同样,任何一个告警的激活以故障排队深度为条件。图3表示OT端在告警极性为低电平时的二种告警模式示意图。在OT告警时,为防止干扰引起的错误告警MAX6625内部设有故障排队深度计数器,在高温或低温告警出现连续次数等于编程设置的故障排队深度数时才触发告警。图3中的故障深度为4。323 写配置寄存器、高温寄存器和低温寄存器主控制器向
8、MAX6625配置寄存器写数据的过程是先写MAX6625地址,再写配置寄存器地址到指针寄存器然后写配置寄存器数据,其时序如图4所示。高,低温寄存器的写时序与配置寄存器的写时序基本相同但注意高,低温寄存器是16位数据格式。33 读温度寄存器在简单的温度控制中,只需进行初始设置即可。在温度测量与显示应用中则需要读出MAX6625温度寄存器的当前值。其读取过程是首先选择要读的MAX6625,然后选择读取的寄存器,在读寄存器数据时,重写MAX6625的地址,但RW位应为1。4 MAX6625的应用与编程MAX6625可应用在风扇控制、温度告警、系统温度控制和工业设备中。这里列举分布式温度监控与显示的应
9、用实例仅给出单片机与4个MAX6625的连接电路。如图5所示。在应用编程时,应根据系统要求首先用单片机设置MAX6625,其次是读MAX6625中温度寄存器的值。41 MAX6625的设置程序在分布式多点温度测量或监控应用中,MAX6625的初始设置包括MAX6625的选择、配置寄存器的数据写入及高、低温寄存器的写操作。下面以器件1为例进行编程。由于AT89C51无专用的12C总线接口因而这里以模拟12C接口进行编程。(1)配置寄存器的写入程序WRITE:LCALL START :产生起始位MOV A#10010000B;MAX6625器件1地址RW=OLCALL WRBYT :写器件地址LC
10、ALL CACK :查询MAX6625应答JB FO,WRITE ;无应答重新开始MOV A,#00000001B;有应答LcALL WRBYT :写入配置寄存器地址LCALL CACKJB F0,WRITEMOV A,#00010000B:写配置寄存器数据LCALL WRBYTLCALL CACKJB FO,WRITELCALL STOP ;产生停止位RET(2)高,低温寄存器的写入程序WRWEl:LCALL STAlit ;产生起始位MOV A#10010000B;MAX6625器件l的地址写,R/W=OLCALL WRBYT :写器件地址LCALL CACK :查询MAX6625应答JB
11、 F0,WRITEl ;无应答重新开始MOV A#00000011B;有应答LCALL WRBYT :写入高温寄存器地址LCALL CACKJB F0,WRITElMOV A,#01010000B;写高温寄存器高8位LCALL WRBYTICALL CACKJB FO,WRITElMOV A,#00OO000B:写高温寄存器低8位LCALL WRBYTLCALL CACKJB F0,WRITElLCALL STOPRET低温寄存器的编程设置只要改变地址和数据即可。42 MAX6625的寄存器读程序MAX6625的寄存器读程序包括温度寄存器的读、高,低温寄存器的读和配置寄存器的读。温度寄存器的读
12、程序如下:READ:LCALL sTARTMOV A#10010000BIJCALL WRBYT:写读MAX6625的地址LCALL CACKJB F0,READMOV A#0000000BLCALL WRBYT :写温度寄存器的地址LCALL CACKJB F0,READLCALL STARTMOV A,#10010001B;R,W=1LCALL WRBYT :写读MAX6625的地址LCALL CACKJB F0,READLCALL RDBYT :读温度寄存器高8住LcALL MACK :主控制器回答LCALL RDBYT :读温度寄存器低8位LCALL MNACK :主控制器不回答LCALL STOPRET因篇幅所限相关子程序省略。MAX6625智能数字温度传感器可配合各种徽控制器构成智能化温控系统。它还可以脱离微控制器单独工作构成一个温控仪。