摘要:在日常生活和工農(nóng)業(yè)生產(chǎn)中,經(jīng)常用到溫度檢測和控制。本系統(tǒng)主要以51單片機為核心,使用DS18B20溫度傳感器進行檢測,可實現(xiàn)溫度顯示、溫度調(diào)控和超溫預警等功能,具有硬件簡單、功能齊全的特點。
關鍵詞:單片機;DS18B20;數(shù)碼顯示
中圖分類號:TP391.8 文獻標識碼:A 文章編號:1007-9599 (2012) 17-0000-02
1 引言
隨著電子技術和微型計算機的迅速發(fā)展,微機測量和控制技術得到了迅速的發(fā)展和廣泛的應用,給人們生活帶來了很多方便。在日常生活和工農(nóng)業(yè)生產(chǎn)中,經(jīng)常要用到溫度檢測和控制。單片機自問世以來,已成為主要的控制工具之一,具有處理能強、運行速度快、功耗低等優(yōu)點,應用在溫度測量與控制方面,控制簡單方便,測量范圍廣,精度較高。
2 硬件系統(tǒng)設計
本系統(tǒng)主要以AT89C51單片機為核心,使用DS18B20溫度傳感器進行檢測,可實現(xiàn)溫度顯示、溫度檢測、溫度調(diào)控和溫度預警等功能,具有硬件簡單、功能齊全的特點。
系統(tǒng)總體框圖如下:
2.1 主控制器
主控制器采用目前市場上用量較大、比較普及的51系列中的89系列單片機,AT89C51具有功耗低、體積小、控制簡單的特點,很適合應用于便攜式產(chǎn)品的設計。
2.2 溫度檢測電路
傳感器選擇美國DALLAS公司推出的DS18B20溫度傳感器,它能直接讀出被測溫度,溫度精確度高達0.1度,可以滿足從-55攝氏度到+125攝氏度測量范圍,在許多工業(yè)控制中已經(jīng)足夠。DS18B20通過一個單線接口發(fā)送或接收信息,因此在中央微處理器和DS18B20之間僅需要一條連接線(加上地線),用于讀寫和溫度轉換的電源可以從數(shù)據(jù)線本身獲得,無需外部電源。
DS18B20的測溫原理圖如圖2所示。圖中低溫度系數(shù)晶振的振蕩頻率受溫度影響很小,用于產(chǎn)生固定頻率的脈沖信號送給計數(shù)器1。高溫度系數(shù)晶振隨溫度變化其振蕩率明顯改變,所產(chǎn)生的信號作為計數(shù)器2的脈沖輸入。計數(shù)器1和溫度寄存器被預置在-55℃所對應的一個基數(shù)值。計數(shù)器1對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行減法計數(shù),當計數(shù)器1的預置值減到0時,溫度寄存器的值將加1,計數(shù)器1的預置將重新被裝入,計數(shù)器1重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行計數(shù),如此循環(huán)直到計數(shù)器2計數(shù)到0時,停止溫度寄存器值的累加,此時溫度寄存器中的數(shù)值即為所測溫度。
2.3 顯示電路
顯示電路采用6位LED數(shù)碼管,P0口輸出段選碼,位選輸出由P2.0-P2.5來進行掃描控制。其中高3位LED顯示預設溫度,低3位LED顯示實際溫度,顯示精度為0.1度。
2.4 溫度報警及溫度調(diào)控電路
電路中設計了2個按鍵來進行溫度調(diào)控,分別為加1鍵用來對預設溫度進行加1操作,減1鍵用來對預設溫度進行件1操作。當實際溫度超出預設溫度時,由蜂鳴器和小燈進行聲光報警。
3 系統(tǒng)軟件設計
本系統(tǒng)的軟件的主程序主要包括溫度讀取、溫度轉換、溫度顯示及溫度報警等功能模塊。其中溫度讀取子程序負責通過串口通信讀取18B20傳送來的溫度值,這個溫度值是二進制數(shù)據(jù),必須通過溫度轉換子程序將其轉換成十進制值,才能用于字符顯示。顯示子程序的功能是通過數(shù)碼顯示管顯示出實際測量到溫度值和預設的溫度值。溫度報警子程序的功能是把實際溫度和預設溫度進行比較,如果超過預設值則控制聲光報警。
另外有兩個外部中斷子程序,分別實現(xiàn)預設溫度的加減調(diào)整。
總之,本系統(tǒng)設計結構簡單、功能齊全、成本低廉且測量精度高,具有廣泛的應用價值。
參考文獻:
[1]郭天祥.新概念51單片機C語言教程[J].編程技術,2009,1:8-12.
[2]李葉紫,王喜斌,胡輝,孫東輝.MCS-51單片機應用教程,2004,3:12-13.
[3]摟然苗,李興飛.51系列單片機設計實例,2000.
[4]周杭慈.單片機程序設計基礎,2003.