1 引言
隨著現(xiàn)代信息技術(shù)的飛速發(fā)展和傳統(tǒng)工業(yè)改造的逐步實現(xiàn).能夠獨立工作的溫度檢測和顯示系統(tǒng)應用于諸多領(lǐng)域。傳統(tǒng)的溫度檢測以熱敏電阻為溫度敏感元件。熱敏電阻的成本低,但需后續(xù)信號處理電路,而且可靠性相對較差,測溫準確度低,檢測系統(tǒng)也有一定的誤差。與傳統(tǒng)的溫度計相比,這里設(shè)計的數(shù)字溫度計具有讀數(shù)方便,測溫范圍廣,測溫精確,數(shù)字顯示,適用范圍寬等特點。選用AT89C51型單片機作為主控制器件,DSl8820作為測溫傳感器通過4位共陽極LED數(shù)碼管串口傳送數(shù)據(jù),實現(xiàn)溫度顯示。通過DSl8820直接讀取被測溫度值,進行數(shù)據(jù)轉(zhuǎn)換,該器件的物理化學性能穩(wěn)定,線性度較好,在O℃~100℃最大線性偏差小于0.1℃。該器件可直接向單片機傳輸數(shù)字信號,便于單片機處理及控制。另外,該溫度計還能直接采用測溫器件測量溫度,從而簡化數(shù)據(jù)傳輸與處理過程。
2 系統(tǒng)硬件設(shè)計方案
根據(jù)系統(tǒng)功能要求,構(gòu)造圖1所示的系統(tǒng)原理結(jié)構(gòu)框圖。
2.1 單片機的選擇
AT89C51作為溫度測試系統(tǒng)設(shè)計的核心器件。該器件是INTEL公司生產(chǎn)的MCS一5l系列單片機中的基礎(chǔ)產(chǎn)品,采用了可靠的CMOS工藝制造技術(shù),具有高性能的8位單片機,屬于標準的MCS一51的CMOS產(chǎn)品。不僅結(jié)合了HMOS的高速和高密度技術(shù)及CHMOS的低功耗特征,而且繼承和擴展了MCS一48單片機的體系結(jié)構(gòu)和指令系統(tǒng)。
2.2 溫度傳感器與單片機的連接
溫度傳感器的單總線(1-Wire)與單片機的P2.0連接,P2.0是單片機的高位地址線A8。P2端口是一個帶內(nèi)部上拉電阻的8位雙向I/O,其輸出緩沖級可驅(qū)動(吸收或輸出電流)4個TTL邏輯門電路。對該端口寫“1”,可通過內(nèi)部上拉電阻將其端口拉至高電平,此時可作為輸入口使用,這是因為內(nèi)部存在上拉電阻,某一引腳被外部信號拉低時會輸出一個電流。在訪問外部程序存儲器或16位地址的外部數(shù)據(jù)存儲器時。如執(zhí)行MOVX DPTR指令,則表示P2端口送出高8位的地址數(shù)據(jù)。在訪問8位地址的外部數(shù)據(jù)存儲器時,可執(zhí)行MOVX RI指令,P2端口內(nèi)容即為特殊功能寄存器(SFR)區(qū)中R2寄存器內(nèi)容,整個訪問期間不改變。在Flash編程和程序校驗時,P2端口也接收高位地址和其他控制信號。圖2為DSl8820內(nèi)部結(jié)構(gòu)。圖3為DSl8820與單片機的接口電路。
2.3 復位信號及外部復位電路
單片機的P1.6端口是MAX813看門狗電路中喂狗信號的輸入端,即單片機每執(zhí)行一次程序就設(shè)置一次喂狗信號,清零看門狗器件。若程序出現(xiàn)異常,單片機引腳RST將出現(xiàn)兩個機器周期以上的高電平,使其復位。該復位信號高電平有效,其有效時間應持續(xù)24個振蕩脈沖周期即兩個機器周期以上。若使用頻率為12 MHz的晶體振蕩器,則復位信號持續(xù)時間應超過2μs才完成復位操作。
2.4 單片機與報警電路
系統(tǒng)中的報警電路是由發(fā)光二極管和限流電阻組成,并與單片機的P1.2端口連接。P1端口的作用和接法與P2端口相同,不同的是在Flash編程和程序校驗期間,P1接收低8位地址數(shù)據(jù)。
2.5 電源電路
由于該系統(tǒng)需要穩(wěn)定的5 V電源,因此設(shè)計時必須采用能滿足電壓、電流和穩(wěn)定性要求的電源。該電源采用三端集成穩(wěn)壓器LM7805。它僅有輸入端、輸出端及公共端3個引腳,其內(nèi)部設(shè)有過流保護、過熱保護及調(diào)整管安全保護電路.由于所需外接元件少,使用方便、可靠,因此可作為穩(wěn)壓電源。圖4為電源電路連接圖。
2.6 顯示電路
采用技術(shù)成熟的74HCl64實現(xiàn)串并轉(zhuǎn)換。LED顯示分為靜態(tài)顯示和動態(tài)顯示。這里采用靜態(tài)顯示,系統(tǒng)通過單片機的串行口來實現(xiàn)靜態(tài)顯示。串行口為方式零狀態(tài),即工作在移位寄存器方式,波特率為振蕩頻率的1/12。當器件執(zhí)行任何一條將SBUF作為目的寄存器的命令時,數(shù)據(jù)便開始從RXD端發(fā)送。在寫信號有效時,相隔一個機器周期后發(fā)送控制端SEND有效,即允許RXD發(fā)送數(shù)據(jù),同時允許從TXD端輸出移位脈沖。圖5為顯示電路的連接圖。
2.7 看門狗電路
系統(tǒng)中把P1.6作為看門狗的“喂狗”信號;將MAX813的RESET與單片機的復位信號RST連接。由于單片機每執(zhí)行一次程序,就會給看門狗器件一個復位信號,這樣也可以用手工方式實現(xiàn)復位。當按鍵按下時,SW—SPST就會在MAX813引腳產(chǎn)生一個超過200 ms的低電平,其實看門狗器件在1.6 s時間內(nèi)沒有復位,使7引腳輸出一個復位信號的作用是相同的,其連接圖如圖6所示。
3 軟件設(shè)計
DSl8820的主要數(shù)據(jù)元件有:64位激光Lasered ROM,溫度靈敏元件和非易失性溫度告警觸發(fā)器TH和TL。DSBl820可以從單總線獲取電源,當信號線為高電平時,將能量貯存在內(nèi)部電容器中;當單信號線為低電平時,將該電源斷開,直到信號線變?yōu)楦唠娖街匦陆由霞纳?電容)電源為止。此外,還可外接5 V電源,給DSl8820供電。DSl8820的供電方式靈活,利用外接電源還可增加系統(tǒng)的穩(wěn)定性和可靠性。圖7為讀取數(shù)據(jù)流程圖。
讀取DS18B20數(shù)據(jù)的部分程序代碼為:
4 數(shù)據(jù)測試
將溫度傳感器與冰水混合物接觸,經(jīng)過充分攪拌達到熱平衡后調(diào)節(jié)系統(tǒng),使顯示讀數(shù)為0.00(標定0℃);利用氣壓計讀出當時當?shù)氐拇髿鈮簭?,并根?jù)大氣壓強和當?shù)刂亓铀俣扔嬎愠霎敃r的實際壓強;根據(jù)沸點與壓強的關(guān)系查出沸點溫度。把溫度傳感器放入沸水中,待顯示讀數(shù)穩(wěn)定后重新調(diào)節(jié),使顯示器顯示讀數(shù)等于當?shù)禺敃r沸點溫度后工作結(jié)束。該溫度計的量程為一50℃~150℃,讀數(shù)精度為0.1℃,實際使用一般在0℃~100℃。采用0℃~50℃和50℃~100℃的精密水銀溫度計作檢驗標準,對設(shè)計的溫度計進行測試,其結(jié)果表明能達到該精度要求。
5 結(jié)語
該溫度測試系統(tǒng)不僅具有結(jié)構(gòu)簡單、體積小、價格低廉、精確度較高、反應速度較快、數(shù)字化顯示和不易損壞等特點,而且性能穩(wěn)定,適用范圍廣,因此特別適用于對測溫要求比較準確的場所。