廣東省高級(jí)技工學(xué)校 朱小燕
超低功耗電子溫度計(jì)的制作
廣東省高級(jí)技工學(xué)校 朱小燕
以單片機(jī)(AT89S51)為控制核心,用溫度傳感器對(duì)溫度進(jìn)行實(shí)時(shí)采集,利用時(shí)鐘芯片構(gòu)成萬年歷,最后通過液晶顯示屏把各項(xiàng)參數(shù)顯示出來。外部設(shè)備的啟停由溫度的整定值來控制。時(shí)鐘芯片可以準(zhǔn)確顯示年、月、日、時(shí)、分、秒,還可以設(shè)置鬧鈴。通過鍵盤可以方便的實(shí)現(xiàn)畫面切換、各項(xiàng)參數(shù)的設(shè)置、喚醒等操作。
AT89S51;溫度傳感器;時(shí)鐘芯片;MAX232CPE;液晶顯示屏
系統(tǒng)可以分為溫度采集部分、控制部分和顯示部分。其中溫度采集部分由數(shù)字式溫度傳感器構(gòu)成。控制部分由通訊模塊,時(shí)鐘模塊,外設(shè)驅(qū)動(dòng)模塊,鍵盤模塊構(gòu)成。顯示部分由顯示器構(gòu)成。
本系統(tǒng)的單元電路包括:溫度采集電路,鍵盤識(shí)別電路,液晶顯示電路,時(shí)鐘接口電路,外設(shè)驅(qū)動(dòng)電路及串口通信電路。各部分緊密聯(lián)系在一起形成了一套完善的低功耗溫度采集控制系統(tǒng)。
溫度檢測模塊我們采用單總線數(shù)字式溫度傳感器DS18B20,它不僅能直接輸出串行數(shù)字信號(hào),而且具有微型、低功耗、高性能、易于微處理器連接和抗干擾能力強(qiáng)等優(yōu)點(diǎn)。DS18B20數(shù)字式溫度傳感器對(duì)于實(shí)測的溫度提供了9-12位的數(shù)據(jù)和報(bào)警溫度寄存器,它的測溫范圍為-55℃~+125℃,其中在-10℃~+85℃的范圍內(nèi)的測量精度為±0.5℃。由于每個(gè)DS18B20有唯一的一個(gè)連續(xù)64位的產(chǎn)品號(hào),所以允許在一根電纜上連接多個(gè)傳感器,以構(gòu)成大型溫度測控網(wǎng)絡(luò)。DS18B20的①腳接地,②腳為一線式總線通過一個(gè)4.7K的上拉電阻接到單片機(jī)的P3.4口,③腳接電源。如圖1所示。

圖1 溫度檢測電路和鍵盤電路

圖2 液晶顯示電路和外設(shè)驅(qū)動(dòng)電路
矩陣式鍵盤的行線和列線通過上拉電阻接電源(如圖1所示),并將行線接在單片機(jī)的P0.4~P0.7引腳上作為輸出端口,而列線接在P0.0~P0.3引腳上作為輸入端口。如果行線輸出低電平,那么一鍵按盤,輸入線就會(huì)變成低電平,這樣通過讀輸入線的狀態(tài)就可知道是否有鍵盤輸入了。
MS12864R LCD顯示器采用單獨(dú)+5V直流電源供電,可與單片機(jī)并口連接(如圖2所示),使用REQ/BUSY握手通訊協(xié)議,通訊簡單可靠。模塊本身自帶低電平復(fù)位的阻容復(fù)位電路,復(fù)位后可自動(dòng)進(jìn)行初始化設(shè)置,同時(shí)向用戶提供一個(gè)復(fù)位引腳,也可由單片機(jī)進(jìn)行軟件復(fù)位或硬件復(fù)位。在顯示器的電源和背光燈處各加一個(gè)PNP型三極管對(duì)電源進(jìn)行管理,在不必要時(shí)可關(guān)閉電源,以便降低系統(tǒng)的能耗。
選用固態(tài)繼電器來驅(qū)動(dòng)交流220V的外部設(shè)備(如圖2所示),固態(tài)繼電器是無觸點(diǎn)開關(guān)器件。單相固態(tài)繼電器是四端有源器件,其中兩個(gè)輸入端為發(fā)光二極管,兩個(gè)輸出端為感光三極管,輸入輸出間通過光隔離,輸入端加上直流或脈沖信號(hào),其內(nèi)部發(fā)光二極管就會(huì)發(fā)光,輸出端的感光三極管就從斷態(tài)轉(zhuǎn)變成通態(tài),當(dāng)單片機(jī)采集到的溫度達(dá)到一定范圍時(shí),單片機(jī)就會(huì)通過改變相應(yīng)引腳的電位來驅(qū)動(dòng)外設(shè)工作。
時(shí)鐘接口芯片DS12RC887內(nèi)部由振蕩電路、分頻電路、周期中斷/方波選擇電路、14字節(jié)時(shí)鐘和控制單元、114字節(jié)用戶非易失RAM、十進(jìn)制/二進(jìn)制累加器、總線接口電路、電源開關(guān)寫保護(hù)單元和內(nèi)部鋰電池等部分組成,其硬件接口如圖3所示。

圖3 時(shí)鐘接口電路

圖4 主程序流程圖
MOT引腳為時(shí)序模式選擇,當(dāng)與MS-51單片機(jī)連接時(shí)此引腳接低電平,選擇INTEL時(shí)序。
AD0~AD7是雙向地址/數(shù)據(jù)復(fù)用總線,接到AT89S51的P0或P2口,因?yàn)閱纹瑱C(jī)的P0口接有矩陣鍵盤,所以不能接到此口,可以接到P2口通過片選信號(hào)線/CS來分時(shí)為LCD或DS12CR887使用。
AS引腳為地址選通輸入,用于實(shí)現(xiàn)信號(hào)分離,在AD/ALE的下降沿把地址鎖入DS12RC887。
DS引腳在MOT接低電平時(shí)為數(shù)據(jù)讀輸入(RD),可與單片機(jī)的/RD引腳相連。
R/W引腳在MOT接低電平時(shí)為數(shù)據(jù)寫輸入(WR),可與單片機(jī)的/WR引腳相連。
CS引腳為片選輸入,在訪問DS12RC887的總線周期內(nèi),片選信號(hào)必須保持為低。
RESET(復(fù)位輸出):當(dāng)該腳保持低電平時(shí)間大于200ms,保證DS12RC887有效復(fù)位。
本系統(tǒng)軟件主要由系統(tǒng)初始化模塊,鍵盤掃描識(shí)別模塊,DS18B20溫度采集模塊,LCD顯示器與實(shí)時(shí)時(shí)鐘模塊,外設(shè)驅(qū)動(dòng)模塊,串行通信模塊和中斷服務(wù)程序組成,工作流程如圖4所示。

圖5 鍵盤掃描識(shí)別流程圖
3.2.1 系統(tǒng)初始化
系統(tǒng)通電后首要任務(wù)是要對(duì)MCU和外設(shè)進(jìn)行初始化,包括單片機(jī)內(nèi)部RAM空間的分配,各類外部中斷、定時(shí)/計(jì)數(shù)器和串行口的初始化,溫度傳感器DS18B20的參數(shù)配置,LCD顯示器的初始化等。
3.2.2 鍵盤掃描識(shí)別
通過鍵盤掃描來實(shí)現(xiàn)溫度上限,下限的整定和系統(tǒng)時(shí)間的修改,LCD顯示畫面的切換和LCD電源及其背光的打開與關(guān)閉等功能,其具體工作流程如圖5所示。
首先系統(tǒng)要進(jìn)行鍵盤掃描來確定是否有按鍵輸入,為了保證按鍵信號(hào)的可靠與穩(wěn)定,系統(tǒng)要在第一次檢測到按鍵信號(hào)后延時(shí)5~10mS以去除干擾信號(hào),然后再進(jìn)行掃描,如這時(shí)發(fā)現(xiàn)有鍵按下時(shí)就要進(jìn)行按鍵識(shí)別,并通過跳轉(zhuǎn)指令去執(zhí)行相應(yīng)的功能程序。
下面簡單介紹一下鍵盤部分功能鍵的作用:
(1)在沒有進(jìn)行參數(shù)設(shè)置的情況下,每按一次“↑或↓”鍵便可切換LCD所顯示的畫面以便查看系統(tǒng)的其他信息。
(2)當(dāng)按下“Setup”鍵時(shí)便可對(duì)系統(tǒng)的各類參數(shù)進(jìn)行設(shè)置,如溫度的上限,下限和整定時(shí)間等。
(3)在進(jìn)行參數(shù)設(shè)置時(shí)按下“Cancel”鍵,可以取消各類參數(shù)的設(shè)置,在沒有進(jìn)行參數(shù)設(shè)置時(shí)按下該鍵可以關(guān)閉LCD和其背光電源。
(4)在進(jìn)行參數(shù)設(shè)置時(shí)按下“Enter”鍵,可以保存各類參數(shù)的設(shè)置,在沒有進(jìn)行參數(shù)設(shè)置時(shí)按下該鍵可以打開LCD和其背光電源。
(5)數(shù)字鍵用于參數(shù)的設(shè)置,在沒有進(jìn)行參數(shù)設(shè)置時(shí)按下數(shù)字鍵是不起作用的。
測試的結(jié)果:
1)系統(tǒng)能檢測的溫度范圍達(dá)到-10℃~+125℃,且能夠通過鍵盤更改溫度的設(shè)定值和設(shè)置報(bào)警溫度;
2)分辨率達(dá)到±0.1℃;
3)空閑狀態(tài)下整機(jī)功耗為40uA;
4)能正確顯示時(shí)分秒,且在一天內(nèi)的誤差小于0.1秒,可以設(shè)置整定時(shí)間,對(duì)外設(shè)進(jìn)行定時(shí)控制。
5.總結(jié)
本系統(tǒng)采用高精度,低功耗的外圍電子元件,輔以AT89S51單片機(jī)為控制器,以“一線式”溫度傳感器DS18B20作為檢測元件,完成了高分辨率、低功耗的電子溫度計(jì)的制作。本系統(tǒng)能夠正確顯示當(dāng)前的溫度并能通過調(diào)整溫度的設(shè)定值來控制外部設(shè)備的運(yùn)行,而且還可以通過上位機(jī)來實(shí)時(shí)接收下位機(jī)采集到的溫度數(shù)據(jù)并進(jìn)行全面直觀的顯示和分析。整個(gè)系統(tǒng)結(jié)構(gòu)簡單,性能穩(wěn)定,可靠性高。
[1]趙文博.常用集成電路速查手冊(cè)[M].機(jī)械工業(yè)出版社,2010.3.
[2]李全利.單片機(jī)原理與應(yīng)用[M].清華大學(xué)出版社,2011.10.
[3]王幸之.AT89系列單片機(jī)原理與接口技術(shù)[M].北京航空航天大學(xué)出版社,2004.5.
[4]謝志萍.傳感器與檢測技術(shù)[M].電子工業(yè)出版社,2004.8.
[5]21IC中國電子網(wǎng)[OL].www.21ic.com.