1 引言 在工業(yè)生產(chǎn)及日常生活中,多點(diǎn)溫度檢測系統的應用十分廣泛,例如消防電氣的非破壞性溫度檢測,電力設備的過(guò)熱故障預知檢測,空調系統的溫度檢測,各類(lèi)運輸工具組件的過(guò)熱檢測,醫療與診斷設備的溫度測試等。針對這一情況,本文設計了一種基于A(yíng)T89C51、數字溫度傳感器DSl8820的多點(diǎn)溫度檢測系統,該系統利用DSl8820單總線(xiàn)的特點(diǎn),可以方便地組建傳感器網(wǎng)絡(luò ),從而實(shí)現多點(diǎn)溫度的測量。該系統設計靈活、抗干擾性好,可以在惡劣的工作環(huán)境中進(jìn)行溫度測量。 2 總體結構 設計的多點(diǎn)溫度檢測系統如圖1所示。該系統主要由AT89C51單片微型計算機、鍵盤(pán)顯示電路、溫度顯示電路、看門(mén)狗電路、溫度測試電路、串口通信電路等組成。 3 硬件電路 3.1 溫度測試電路 溫度測試電路主要采用溫度芯片DSl8820,它是DALLAS公司生產(chǎn)的一線(xiàn)式數字溫度傳感器,測溫范圍為-55~+125℃,測溫分辨率可達O.062 5℃,它具有微型化、低功耗、高性能、抗干擾能力強、易配微處理器等特點(diǎn),特別適合于構成多點(diǎn)溫度測控系統。其內部結構如圖2所示。 DSl8820有4個(gè)主要的數據部件: (1)64位激光ROM。64位激光ROM從高位到低位依次為8位CRC、48位序列號和8位家族代碼(28H)組成; (2)溫度靈敏元件; (3)非易失性溫度報警觸發(fā)器TH和TL,可通過(guò)軟件寫(xiě)入用戶(hù)報警上下限值; (4)配置寄存器。配置寄存器為高速暫存存儲器中的第五個(gè)字節。DSl8820在0工作時(shí)按此寄存器中的分辨率將溫度轉換成相應精度的數值,其各位定義如圖3所示。 圖3中:TM為測試模式標志位,出廠(chǎng)時(shí)被寫(xiě)入0,不能改變;R0,Rl為溫度計分辨率設置位,其對應4種分辨率如表1所列,出廠(chǎng)時(shí)R0,R1置為缺省值:R0=1,R1=1(即12位分辨率),用戶(hù)可根據需要改寫(xiě)配置寄存器以獲得合適的分辨率。 高速暫存存儲器由9個(gè)字節組成,其分配如圖4所示。當溫度轉換命令發(fā)布后,經(jīng)轉換所得的溫度值以二字節補碼形式存放在高速暫存存儲器的第O和第1個(gè)字節。單片機可通過(guò)單線(xiàn)接口讀到該數據,讀取時(shí)低位在前,高位在后,數據格式如圖4所示。對應的溫度計算:當符號位S=O時(shí),直接將二進(jìn)制位轉換為十進(jìn)制;當S=1時(shí),先將補碼變?yōu)樵a,再計算十進(jìn)制值。 由于DSl8B20是單線(xiàn)數字溫度傳感器,因此它基本不需要外圍電路就可以與單片機直接以1根線(xiàn)相連,圖5為多個(gè)DSl8B20通過(guò)單總線(xiàn)與單片機相連的原理圖,圖中,DSl8B20采用外部電源供電方式。 3.2 鍵盤(pán)及顯示電路 該系統采用的是矩陣式鍵盤(pán),共組成20個(gè)按鍵,主要包括10個(gè)數字鍵以及“上限”、“下限”、“確定”等功能鍵。當有鍵按下時(shí),8279產(chǎn)生中斷信號送入單片機,然后轉向相應的功能程序。 顯示部分采用1片75451與5個(gè)LED數碼管相連來(lái)實(shí)現動(dòng)態(tài)顯示,工作狀況下,從左向右依次顯示為通道號、溫度的正負號、溫度值的十位、溫度值的個(gè)位以及溫度值的小數點(diǎn)后一位。 3.3 電源電路 因為單片機工作電源為+5 V,且底層電路功耗很小,采用7805三端穩壓片即可滿(mǎn)足要求。具體電路如圖6所示。 3.4 看門(mén)狗電路 考慮到底層電路板的工作環(huán)境相對惡劣,單片機會(huì )受到周?chē)h(huán)境的干擾,因而出現程序跑飛、死機等一些不可預知的不正常工作現象,工作人員也不可能到現場(chǎng)對單片機重起,本設計為單片機電路添加一個(gè)外部看門(mén)狗電路,定時(shí)查詢(xún)單片機的工作狀態(tài),一但發(fā)現異常即對單片機延時(shí)重起,以保證系統安全可靠的運行。其電路如圖7所示。 4 軟件設計 系統的軟件采用模塊化方法進(jìn)行編程,主要由主程序、數碼管顯示程序、鍵盤(pán)掃描以及按鍵處理程序、溫度測試程序、中斷控制程序等組成。其中主程序完成系統初始化和對采集到的溫度進(jìn)行計算等;鍵盤(pán)掃描電路及按鍵處理程序實(shí)現鍵盤(pán)的輸入按鍵的識別及相關(guān)處理;溫度測試程序主要完成由溫度芯片傳送數據的處理,并進(jìn)行判斷和顯示;數碼管顯示程序完成向數碼的顯示送數,控制系統的顯示部分;中斷控制程序則實(shí)現循環(huán)顯示功能。 系統程序流程圖如圖8所示。 5 結語(yǔ) 利用AT89C51單片機和DSl8B20數字溫度傳感器可以實(shí)現多點(diǎn)溫度的檢測與控制。系統具有信號數字化、硬件簡(jiǎn)單化和抗干擾能力強等特點(diǎn),如果與相應的可擴展接口芯片相連,則可實(shí)現更多路溫度的測量與控制,以適應工業(yè)生產(chǎn)的需要。 |