《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于AT89S52和DS18B20的溫度顯示報(bào)警系統(tǒng)
基于AT89S52和DS18B20的溫度顯示報(bào)警系統(tǒng)
摘要:  本設(shè)計(jì)所介紹的數(shù)字溫度計(jì)工作可靠、測量誤差小。與傳統(tǒng)的溫度計(jì)相比,具有讀數(shù)方便、測溫范圍廣及輸出溫度采用數(shù)字顯示等特點(diǎn),主要適用于科研實(shí)驗(yàn)室等對測溫要求比較準(zhǔn)確的場所。本溫度計(jì)應(yīng)用AT89S52 單片機(jī)對系統(tǒng)進(jìn)行智能控制,采用溫度傳感器DS18B20 實(shí)現(xiàn)對外界溫度的測量,并通過串口通信將數(shù)據(jù)傳輸?shù)絾纹瑱C(jī)上進(jìn)行處理和分析。同時(shí)采用C51 程序設(shè)計(jì)語言對單片機(jī)的系統(tǒng)控制程序進(jìn)行編寫。
Abstract:
Key words :
 

  引言

  溫度是一種最基本的環(huán)境參數(shù),人們的生活環(huán)境與溫度息息相關(guān),溫度測量也被人們所異常關(guān)注。因此,研究溫度的測量方法和裝置具有重要意義,溫度測控技術(shù)也在各個(gè)領(lǐng)域應(yīng)用越來越廣泛。采用單片機(jī)對溫度進(jìn)行控制,不僅具有控制方便和組態(tài)簡單的優(yōu)點(diǎn),而且可以提高被控溫度的技術(shù)指標(biāo)。本文介紹了一款由單片機(jī)AT89S52 和新型的智能集成溫度傳感器DS18B20 以及LCD 顯示器等部件實(shí)現(xiàn)的溫度測量及報(bào)警系統(tǒng)。同時(shí)在設(shè)計(jì)方面做了功能的擴(kuò)展,鍵盤是用來調(diào)時(shí)和溫度查詢,功能較強(qiáng),可以設(shè)置上下限報(bào)警溫度,且測量準(zhǔn)確、誤差小。單片機(jī)可把由DS18B20、DS1302 讀來的數(shù)據(jù)利用軟件來進(jìn)行處理,從而把數(shù)據(jù)傳輸?shù)斤@示模塊,實(shí)現(xiàn)溫度、日歷的顯示,還有鬧鐘功能以及語音報(bào)時(shí)功能。對溫度實(shí)施監(jiān)測,即當(dāng)溫度超過給定的最高溫度或者低于給定的最低溫度時(shí),系統(tǒng)通過發(fā)光二極管發(fā)光報(bào)警。通過實(shí)驗(yàn)測試說明,所設(shè)計(jì)的溫度計(jì)能達(dá)到精度的要求。

  1 系統(tǒng)設(shè)計(jì)

  在單片機(jī)電路設(shè)計(jì)中,大多都是使用傳感器。因此,采用溫度傳感器DS18B20。DS18B20 是一種改進(jìn)型智能溫度傳感器,可以滿足從-55 攝氏度到+125 攝氏度范圍的溫度測量,且測量精度高,可在一秒內(nèi)把溫度轉(zhuǎn)化成數(shù)字,測得的溫度值存儲(chǔ)在兩個(gè)八位的RAM中,單片機(jī)可以直接從中讀出數(shù)據(jù)并且轉(zhuǎn)換成十進(jìn)制就是溫度,使用方便。按照設(shè)計(jì)時(shí)要求,采取的設(shè)計(jì)方框圖如圖一所示,控制器采用單片機(jī)AT89S52,溫度傳感器采用DS18B20,液晶顯示器LCD1602 以串口傳送數(shù)據(jù)實(shí)現(xiàn)溫度的顯示。

圖一總體設(shè)計(jì)方框圖

  2 硬件電路設(shè)計(jì)

  系統(tǒng)整體硬件電路包括:傳感器數(shù)據(jù)采集電路、溫度顯示電路、上下限報(bào)警調(diào)整電路、單片機(jī)主板電路、復(fù)位電路等,如圖二所示。

圖二單片機(jī)系統(tǒng)整體電路

  圖二中有三個(gè)獨(dú)立式按鍵可以分別調(diào)整溫度計(jì)的上下限報(bào)警設(shè)置,蜂鳴器在被測溫度超出上下限范圍時(shí),發(fā)出報(bào)警鳴叫聲音,同時(shí)LCD顯示屏沒有被測溫度值顯示,這時(shí)如統(tǒng)果調(diào)整報(bào)警上下限,可測出被測的溫度值。

  按健復(fù)位電路是上電復(fù)位加手動(dòng)復(fù)位,使用比較方便,在程序跑飛時(shí),可以手動(dòng)復(fù)位,這樣就不用在重起單片機(jī)電源,就可以實(shí)現(xiàn)復(fù)位。

  液晶顯示器為TS1602-1,可以同時(shí)顯示16*2個(gè)字符,能夠?qū)ψ址M(jìn)行左右平移,操作方便,占用8個(gè)I/O端口。

  溫度測量傳感器采用DS18B20 的單總線數(shù)字化溫度傳感器,測溫范圍為-55℃~125℃,可編程為9 位~12 位A/D轉(zhuǎn)換精度,測溫分辨率達(dá)到0.0625℃,采用寄生電源工作方式,CPU 只需一根總線便能與DS18B20 通信,占用CPU 總線少,可節(jié)省大量引線和邏輯電路。

  時(shí)鐘模塊采用DS1302 芯片,DS1302 是由DALLAS 公司推出的涓流充電時(shí)鐘芯片內(nèi)含有一個(gè)實(shí)時(shí)時(shí)鐘/ 日歷和31字節(jié)靜態(tài)RAM,通過簡單的串行接口與單片機(jī)進(jìn)行通信,實(shí)時(shí)時(shí)鐘/ 日歷電路提供秒分時(shí)日期月年的信息,每月的天數(shù)和閏年的天數(shù),可自動(dòng)調(diào)整時(shí)鐘操作,可通過AM/PM 指示決定采用24 或12 小時(shí)格式,DS1302 與單片機(jī)之間能簡單地采用同步串行的方式進(jìn)行通信,僅需用到三條總線1RES 復(fù)位,2 I/O 數(shù)據(jù)線,3 SCLK 串行時(shí)鐘。時(shí)鐘/RAM 的讀/ 寫數(shù)據(jù)以一個(gè)字節(jié)或多達(dá)31 個(gè)字節(jié)的字符組方式通信,DS1302工作時(shí)功耗很低保持?jǐn)?shù)據(jù)和時(shí)鐘信息時(shí)功率小于1mW。

  3 軟件分析

  系統(tǒng)程序主要包括主程序、讀出溫度子程序、溫度轉(zhuǎn)換命令子程序、計(jì)算溫度子程序,顯示數(shù)據(jù)刷新子程序等。

  主程序的主要功能是負(fù)責(zé)溫度的實(shí)時(shí)顯示、讀出并處理DS18B20的測量的當(dāng)前溫度值,對鬧鐘的時(shí)、分、秒進(jìn)行設(shè)置。這樣可以在一秒之內(nèi)測量一次被測溫度,其程序流程見圖三所示。

圖三主程序流程圖

  4 結(jié)束語

  本設(shè)計(jì)所介紹的數(shù)字溫度計(jì)工作可靠、測量誤差小。與傳統(tǒng)的溫度計(jì)相比,具有讀數(shù)方便、測溫范圍廣及輸出溫度采用數(shù)字顯示等特點(diǎn),主要適用于科研實(shí)驗(yàn)室等對測溫要求比較準(zhǔn)確的場所。本溫度計(jì)應(yīng)用AT89S52 單片機(jī)對系統(tǒng)進(jìn)行智能控制,采用溫度傳感器DS18B20 實(shí)現(xiàn)對外界溫度的測量,并通過串口通信將數(shù)據(jù)傳輸?shù)絾纹瑱C(jī)上進(jìn)行處理和分析。同時(shí)采用C51 程序設(shè)計(jì)語言對單片機(jī)的系統(tǒng)控制程序進(jìn)行編寫。



 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。