MAX6625型溫度傳感器的原理及應用
摘 要:MAX6625是美國Maxim公司生產(chǎn)的一種新型智能溫度傳感器。它在風扇控制、溫度告警、系統(tǒng)溫度測量及工業(yè)設備中得到了廣泛應用。介紹MAX6625的功能和結(jié)構(gòu),分析MAX6625的工作原理。給出采用MAX6625進行溫度測控的電路及編程。
關(guān)鍵詞:MAX6625;智能數(shù)字溫度傳感器:12C總線:分布式控制
1 引言
在系統(tǒng)溫度測量和控制中,溫度傳感器的選用正從模擬式向數(shù)字式、從集成化向智能化的方向飛速發(fā)展。MAX6625是美國Maxim公司生產(chǎn)的一種新型智能溫度傳感器,它在風扇控制、溫度告警、系統(tǒng)溫度測量及工業(yè)設備中得到廣泛應用。MAX6625將溫度傳感器、9位A/D轉(zhuǎn)換器、可編程溫度界限報警和I2C總線串行接口集成在同一個芯片中。MAX6625內(nèi)含9位A/D轉(zhuǎn)換器.可代替LM75。內(nèi)置的VPN引擎來實現(xiàn)。
2 結(jié)構(gòu)和引腳功能
MAX6625型智能數(shù)字溫度傳感器主要包括帶隙基準電壓源及溫度傳感器、A/D轉(zhuǎn)換器、5個控制寄存器(地址指針寄存器、溫度數(shù)據(jù)寄存器、上限溫度寄存器、下限溫度寄存器和配置寄存器)、設置溫度點比較器、故障排隊計數(shù)器和I2C串行總線接口電路等。其結(jié)構(gòu)框圖如圖1所示。
MAX6625采用SOT23―6小型化封裝.如圖2所示。
其引腳功能如下:SDA是12C兼容的串行雙向數(shù)據(jù)線;SCL是12C兼容的串行時鐘線;ADD是:I2C兼容的地址設置端;0T是溫度告警輸出端;Vs是電源;GND是電源地。
3 MAX6225的工作原理
MAX6625通過FC總線接口由主控制器進行編程.設置OT端的告警模式和極性、溫度告警點和讀出測量溫度數(shù)據(jù)。MAX6625為從器件,支持I2C總線的字節(jié)和字讀,寫操作命令。一條12C總線可接4個MAX6625.可實現(xiàn)一點和多點溫度測量與控制。
3.1 地址選擇
MAX6625用ADD引腳設置地址。當ADD端連接到GND、Vs、SDA、SCL中的任意一個引腳時表示一個獨立的地址,分別是1001000B、1001001B、1001010B、100101lB。當主控制器訪問MAX6625時,首先將地址送到12C總線。
3.2 MAX6625的初始設置
在進行正常工作之前應首先設置好MAX6625OT告警端的工作模式和極性、告警的高溫點和低溫點。這些功能的實現(xiàn)是由主控制器通過12C總線向MAX6625內(nèi)部的相關(guān)寄存器寫特定的數(shù)據(jù)完成的。下面介紹MAX6625內(nèi)部的5個寄存器、OT告警工作模式和極性確定及寄存器數(shù)據(jù)的寫入過程。
3.2.1 MAX6625的控制寄存器
(1)地址指針寄存器
主控制器通過.I2C總線向地址指針寄存器寫人數(shù)據(jù).確定其他4個寄存器之一被選擇。地址指針寄存器的數(shù)據(jù)格式和其他寄存器的選擇如表1所示。當Dl、D0=00時,選擇溫度寄存器;當D1、D0=01時.選擇配置寄存器;當D1、DO=10時,選擇低溫寄存器;當Dl、DO=11時,選擇高溫寄存器。
(2)溫度寄存器
MAX6625溫度寄存器的長度是16位。存放最新的溫度轉(zhuǎn)換數(shù)據(jù),D15為符號位。D14~D7為有效數(shù)據(jù).D6~DO位為0。溫度寄存器中的數(shù)據(jù)是攝氏溫度的補碼。1LSB表示O.5℃。
(3)高溫,低溫寄存器
MAX6625高溫,低溫寄存器的長度是16位,其中9位有效數(shù)據(jù)。不用的位填0。數(shù)據(jù)格式與溫度寄存器相同。
(4)配置寄存器
配置寄存器是8位的讀/寫寄存器,其數(shù)據(jù)格式和作用如表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時為掉電模式。
3.2.2 OT告警模式與極性
配置寄存器中的D1數(shù)據(jù)位用來設置OT端的告警模式。當Dl=0時為比較模式;當D1=1時為中斷模式。在比較模式下,當連續(xù)轉(zhuǎn)換超出高溫寄存器中的值(THIGH)的數(shù)目等于故障排隊深度時.OT告警。當連續(xù)轉(zhuǎn)換低于低溫寄存器中的值(TLOW)的數(shù)目等于故障排隊值時,OT告警清除。例如:THIGH設置為+100℃,其TLOW的設置為+80℃,故障排隊深度設置為4,直到4個連續(xù)轉(zhuǎn)換超出+100℃時,OT才告警。當4個連續(xù)轉(zhuǎn)換都低于+80℃時,OT將退出告警。在中斷模式中,MAX6625的高溫點或低溫點告警是基于前一個溫度告警。OT端有低溫告警也有高溫告警,確定0T端告警依賴于某一條件。假設上電后故障告警被清除,MAX6625出現(xiàn)一個高溫點告警。在高溫點告警之后,MAX6625又出現(xiàn)一個低溫點告警。在低溫點告警之后,MAX6625出現(xiàn)一個高溫點告警.高溫點或低溫點告警按一定的節(jié)拍交替。一旦任意一個故障發(fā)生,它激活的告警是不確定的,直到讀溫度寄存器的操作之后才可斷定。然后對應每一個故障告警。同樣,任何一個告警的激活以故障排隊深度為條件。圖3表示OT端在告警極性為低電平時的二種告警模式示意圖。在OT告警時,為防止干擾引起的錯誤告警.MAX6625內(nèi)部設有故障排隊深度計數(shù)器,在高溫或低溫告警出現(xiàn)連續(xù)次數(shù)等于編程設置的故障排隊深度數(shù)時才觸發(fā)告警。圖3中的故障深度為4。
3.2.3 寫配置寄存器、高溫寄存器和低溫寄存器
主控制器向MAX6625配置寄存器寫數(shù)據(jù)的過程是先寫MAX6625地址,再寫配置寄存器地址到指針寄存器.然后寫配置寄存器數(shù)據(jù),其時序如圖4所示。高,低溫寄存器的寫時序與配置寄存器的寫時序基本相同.但注意高,低溫寄存器是16位數(shù)據(jù)格式。
3.3 讀溫度寄存器
在簡單的溫度控制中,只需進行初始設置即可。在溫度測量與顯示應用中則需要讀出MAX6625溫度寄存器的當前值。其讀取過程是首先選擇要讀的MAX6625,然后選擇讀取的寄存器,在讀寄存器數(shù)據(jù)時,重寫MAX6625的地址,但R/W位應為1。
4 MAX6625的應用與編程
MAX6625可應用在風扇控制、溫度告警、系統(tǒng)溫度控制和工業(yè)設備中。這里列舉分布式溫度監(jiān)控與顯示的應用實例.僅給出單片機與4個MAX6625的連接電路。如圖5所示。在應用編程時,應根據(jù)系統(tǒng)要求首先用單片機設置MAX6625,其次是讀MAX6625中溫度寄存器的值。
4.1 MAX6625的設置程序
在分布式多點溫度測量或監(jiān)控應用中,MAX6625的初始設置包括MAX6625的選擇、配置寄存器的數(shù)據(jù)寫入及高、低溫寄存器的寫操作。下面以器件1為例進行編程。由于AT89C51無專用的12C總線接口.因而這里以模擬12C接口進行編程。
(1)配置寄存器的寫入程序
WRITE:LCALL START :產(chǎn)生起始位
MOV A.#10010000B;MAX6625器件1
地址.R/W=O
LCALL WRBYT :寫器件地址
LCALL CACK :查詢MAX6625應答
JB FO,WRITE ;無應答重新開始
MOV A,#00000001B;有應答
LcALL WRBYT :寫入配置寄存器地址
LCALL CACK
JB F0,WRITE
MOV A,#00010000B:寫配置寄存器數(shù)據(jù)
LCALL WRBYT
LCALL CACK
JB FO,WRITE
LCALL STOP ;產(chǎn)生停止位
RET
(2)高,低溫寄存器的寫入程序
WRWEl:LCALL STAlit ;產(chǎn)生起始位
MOV A.#10010000B;MAX6625器件l
的地址寫,R/W=O
LCALL WRBYT :寫器件地址
LCALL CACK :查詢MAX6625應答
JB F0,WRITEl ;無應答重新開始
MOV A.#00000011B;有應答
LCALL WRBYT :寫入高溫寄存器地址
LCALL CACK
JB F0,WRITEl
MOV A,#01010000B;寫高溫寄存器高
8位
LCALL WRBYT
ICALL CACK
JB FO,WRITEl
MOV A,#00OO000B:寫高溫寄存器低8位
LCALL WRBYT
LCALL CACK
JB F0,WRITEl
LCALL STOP
RET
低溫寄存器的編程設置只要改變地址和數(shù)據(jù)即可。
4.2 MAX6625的寄存器讀程序
MAX6625的寄存器讀程序包括溫度寄存器的讀、高,低溫寄存器的讀和配置寄存器的讀。溫度寄存器的讀程序如下:
READ:LCALL sTART
MOV A.#10010000B
IJCALL WRBYT:寫讀MAX6625的地址
LCALL CACK
JB F0,READ
MOV A.#0000000B
LCALL WRBYT :寫溫度寄存器的地址
LCALL CACK
JB F0,READ
LCALL START
MOV A,#10010001B;R,W=1
LCALL WRBYT :寫讀MAX6625的地址
LCALL CACK
JB F0,READ
LCALL RDBYT :讀溫度寄存器高8住
LcALL MACK :主控制器回答
LCALL RDBYT :讀溫度寄存器低8位
LCALL MNACK :主控制器不回答
LCALL STOP
RET
因篇幅所限.相關(guān)子程序省略。MAX6625智能數(shù)字溫度傳感器可配合各種徽控制器構(gòu)成智能化溫控系統(tǒng)。它還可以脫離微控制器單獨工作.構(gòu)成一個溫控儀。
評論