基于51單片機(jī)的數(shù)字溫度報(bào)警器_第1頁(yè)
基于51單片機(jī)的數(shù)字溫度報(bào)警器_第2頁(yè)
基于51單片機(jī)的數(shù)字溫度報(bào)警器_第3頁(yè)
基于51單片機(jī)的數(shù)字溫度報(bào)警器_第4頁(yè)
基于51單片機(jī)的數(shù)字溫度報(bào)警器_第5頁(yè)
已閱讀5頁(yè),還剩10頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、基于51單片機(jī)的數(shù)字溫度報(bào)警器摘要:隨著傳感器在生產(chǎn)生活中更加廣泛的應(yīng)用,一種新型的數(shù)字式溫度傳感器實(shí)現(xiàn)對(duì)溫度的測(cè)試與控制得到了更快的開發(fā)。本文設(shè)計(jì)了一種基于單片機(jī)AT89C52的溫度檢測(cè)及報(bào)警系統(tǒng)。該系統(tǒng)將溫度傳感器DS18B20接到單片機(jī)的一個(gè)端口上,單片機(jī)對(duì)溫度傳感器進(jìn)行循環(huán)采集。將采集到的溫度值與設(shè)定的上下限進(jìn)行比較,當(dāng)超出設(shè)定范圍的上下限時(shí),通過(guò)單片機(jī)控制的報(bào)警電路就會(huì)發(fā)出報(bào)警信號(hào),從而實(shí)現(xiàn)了本次課程設(shè)計(jì)的要求。該系統(tǒng)設(shè)計(jì)和布線簡(jiǎn)單、結(jié)構(gòu)緊湊、體積小、重量輕、抗干擾能力較強(qiáng)、性價(jià)比高、擴(kuò)展方便,在工農(nóng)業(yè)等領(lǐng)域的溫度檢測(cè)中有廣闊的應(yīng)用前景。本次課程設(shè)計(jì)的測(cè)量范圍為0-99,測(cè)量誤差為&

2、#177;2。關(guān)鍵字:溫度傳感器、單片機(jī)、報(bào)警、數(shù)碼管顯示一、概述本次設(shè)計(jì)可以應(yīng)用到許多我們用過(guò)的軟件設(shè)計(jì),將前面所學(xué)的知識(shí)融匯在一起實(shí)現(xiàn)溫度監(jiān)測(cè)及其報(bào)警的功能,來(lái)提醒農(nóng)民當(dāng)前大棚內(nèi)溫度是否適合農(nóng)作物的生長(zhǎng)。電子技術(shù)是在十九世紀(jì)末、二十世紀(jì)初開始發(fā)展起來(lái)的新興技術(shù),在二十世紀(jì)發(fā)展最迅速,應(yīng)用最廣泛,成為近代科學(xué)技術(shù)發(fā)展的一個(gè)重要標(biāo)志。隨著電子技術(shù)的飛速發(fā)展,電子技術(shù)在日常生活中得到了廣泛的應(yīng)用,各類轉(zhuǎn)換電路的不斷推出以及電子產(chǎn)品的快速更新,電子技術(shù)已成為世界發(fā)展和人們生活中必不可少的工具。本次課設(shè)應(yīng)用Protues軟件設(shè)計(jì)一個(gè)溫度檢測(cè)報(bào)警系統(tǒng),用溫度傳感器DS18B20采集大棚內(nèi)的溫度,當(dāng)大棚

3、內(nèi)的溫度高于30。或低于15。時(shí),電路發(fā)出報(bào)警信號(hào)并顯示當(dāng)前溫度,達(dá)到提醒農(nóng)民的效果。 本次課設(shè)要求設(shè)計(jì)一個(gè)溫度監(jiān)測(cè)報(bào)警顯示電路,要求溫度范圍:0-99;測(cè)量誤差為±2;報(bào)警下限溫度為:15;報(bào)警上限溫度為:30。二、方案論證設(shè)計(jì)一個(gè)用于溫室大棚溫度監(jiān)測(cè)系統(tǒng)。大棚農(nóng)作物生長(zhǎng)時(shí),其溫度不能太低,也不能太高,太低或太高均不適合農(nóng)作物生長(zhǎng)。該系統(tǒng)可實(shí)時(shí)測(cè)量、顯示大棚的溫度,當(dāng)大棚溫度超過(guò)農(nóng)作物生長(zhǎng)的溫度范圍時(shí),報(bào)警提醒農(nóng)民。方案一:方案一原理框圖如圖1所示。溫度電壓轉(zhuǎn)換電路信號(hào)調(diào)理電路A/D轉(zhuǎn)換電路報(bào)警電路譯碼顯示電路Tx 圖1 大棚溫度檢測(cè)系統(tǒng)的原理框圖方案二:方案二原理框圖如圖2所示。

4、AT89C52單片機(jī)數(shù)字溫度傳感器報(bào)警系統(tǒng)譯碼顯示電路圖2 方案二原理框圖本設(shè)計(jì)采用方案二,設(shè)計(jì)電路較為簡(jiǎn)單不復(fù)雜且硬件實(shí)現(xiàn)及調(diào)試比方案一理想,比較容易實(shí)現(xiàn),性價(jià)比較高。三、電路設(shè)計(jì)1.單片機(jī)最小系統(tǒng)的設(shè)計(jì)單片機(jī)是一種集成電路芯片,是采用超大規(guī)模集成電路技術(shù)把具有數(shù)據(jù)處理能力的中央處理器CPU隨機(jī)存儲(chǔ)器RAM、只讀存儲(chǔ)器ROM、多種I/O口和中斷系統(tǒng)、定時(shí)器/計(jì)時(shí)器等功能集成到一塊硅片上構(gòu)成的一個(gè)小而完善的計(jì)算機(jī)系統(tǒng)。本次課程設(shè)計(jì)中選用AT89C52式單片機(jī),其最小系統(tǒng)主要由電復(fù)位、振蕩電路組成。單片機(jī)的最小系統(tǒng)如圖3所示。單片機(jī)的復(fù)位電路原理是在單片機(jī)的復(fù)位引腳RST上電阻和電容,實(shí)現(xiàn)上電復(fù)

5、位。當(dāng)復(fù)位電平持續(xù)兩個(gè)時(shí)鐘周期以上時(shí)復(fù)位有效。復(fù)位電路由按鍵復(fù)位和上電復(fù)位兩部分組成,上電復(fù)位是在復(fù)位引腳上連接一個(gè)電容到VCC,再連接一個(gè)電阻到GND;按鍵復(fù)位是在復(fù)位電容上并聯(lián)一個(gè)開關(guān),當(dāng)開關(guān)按下時(shí)電容被放電、RST也被拉到高電平,而且由于電容的充電,會(huì)保持一段時(shí)間的高電平來(lái)使單片機(jī)復(fù)位。AT89C51單片機(jī)使用12MHZ的晶振最為振蕩源,由于單片機(jī)內(nèi)部有振蕩電路,所以外部只要連接一個(gè)晶振和兩個(gè)電容即可,電容一般在15pF至50pF之間。外部晶振結(jié)合單片機(jī)內(nèi)部電路產(chǎn)生單片機(jī)所需的時(shí)鐘頻率。圖3 單片機(jī)最小系統(tǒng)2.溫度采集電路的設(shè)計(jì)溫度采集電路部分,采用數(shù)字溫度傳感器DS18B20進(jìn)行溫度采

6、集。DS18B20是DALLAS公司生產(chǎn)的一線式數(shù)字溫度傳感器,具有3個(gè)引腳;溫度側(cè)量范圍為-55+125,測(cè)量精度為0.5;被測(cè)溫度用符號(hào)擴(kuò)展的16位數(shù)字量方式串行輸出;CPU只需用一個(gè)端口線就可以與DS18B20通信。溫度采集電路如圖4所示。圖4 溫度采集電路3.LED顯示報(bào)警電路的設(shè)計(jì)LED數(shù)碼管與單片機(jī)的P0口相連,單片機(jī)將采集到的溫度值轉(zhuǎn)化為與數(shù)碼管對(duì)應(yīng)的數(shù)據(jù),通過(guò)P0口輸出顯示。即信號(hào)通過(guò)譯碼管的端口a、b、c、d、e、f、g 、dp 端來(lái)控制每段譯碼管的亮滅與否,同時(shí)通過(guò)端口1、2、3、4 四個(gè)端口來(lái)控制四個(gè)譯碼管。在本次設(shè)計(jì)中,用集成芯片74HC245驅(qū)動(dòng)數(shù)碼管。同時(shí)當(dāng)采集到的

7、溫度值超過(guò)所設(shè)置的范圍時(shí),單片機(jī)會(huì)輸出一信號(hào),通過(guò)三極管放大后驅(qū)動(dòng)蜂鳴器發(fā)出報(bào)警信號(hào)。LED數(shù)碼管報(bào)警電路如圖5所示。圖5 LED顯示及報(bào)警電路四、程序流程1.主程序流程圖主程序中對(duì)單片機(jī)做了初始化的設(shè)計(jì),包含溫度的讀取、數(shù)碼管顯示、報(bào)警三個(gè)子系統(tǒng),運(yùn)行時(shí)由主程序先調(diào)用DS18B20讀取溫度的子函數(shù)進(jìn)行溫度采集,再將數(shù)據(jù)送入數(shù)碼管顯示。同時(shí)判斷所采集的數(shù)據(jù)是否超出所設(shè)置的溫度范圍。如果超出,調(diào)用報(bào)警子系統(tǒng);未超出,程序自動(dòng)返回。主程序流程圖如圖6所示。圖6 主程序流程圖2.DS18B20讀取溫度流程圖根據(jù)DS18B200的通訊協(xié)議,單片機(jī)控制DS18B20完成溫度轉(zhuǎn)換必須經(jīng)過(guò)三個(gè)步驟:每一次讀

8、寫之前都要對(duì)DS18B20進(jìn)行復(fù)位操作,復(fù)位成功后發(fā)送一條ROM指令,最后發(fā)送RAM指令,這樣才能對(duì)DS18B20進(jìn)行預(yù)定的操作(復(fù)位要求主CPU將數(shù)據(jù)線下拉500微秒然后釋放,當(dāng)DS18B20收到信號(hào)后等待1660微秒左右,后發(fā)出60240微秒的存在低脈沖,主CPU收到此信號(hào)表示復(fù)位成功)。DS18B20讀取溫度時(shí)先讀取溫度低字節(jié),在讀取溫度高字節(jié)。程序中命令0xCC:跳過(guò)讀序號(hào)列號(hào)的操作;命令0x44:?jiǎn)?dòng)溫度轉(zhuǎn)換;命令0xBE:讀取溫度寄存器等,前兩個(gè)字節(jié)就是溫度。后面的寄存器省略不讀。DS18B20讀取溫度流程圖如圖7所示。圖7 DS18B20讀取溫度流程圖3.譯碼顯示流程圖。譯碼顯示

9、程序中,要先將初始標(biāo)識(shí)清除。將溫度的個(gè)位送至低位數(shù)碼管顯示,清除標(biāo)志再將溫度值的高位送到高位數(shù)碼管顯示。之后延時(shí),清除標(biāo)志返回繼續(xù)顯示下一數(shù)據(jù)。譯碼顯示流程圖如圖8所示。圖8 譯碼顯示流程圖4.報(bào)警程序流程圖程序中首先判斷所讀取的溫度是否超出所設(shè)定的下限,如果超出下限,報(bào)警器報(bào)警;如果沒(méi)超出下限,再跟上限值比較判斷是否超出上限。如果超出,則報(bào)警;若無(wú),程序返回。報(bào)警程序流程圖如圖9所示。圖9 報(bào)警程序流程圖五、電路性能的測(cè)試1.軟件測(cè)試在PROTUES軟件中,連接好電路圖后將在Keil中生成的“溫度監(jiān)測(cè).HEX”程序文件導(dǎo)入單片機(jī)中。由于DS18B20系統(tǒng)中設(shè)置的溫度初值為85,所以當(dāng)開始仿真

10、時(shí)報(bào)警器會(huì)報(bào)警,數(shù)碼管顯示也為85。4至5秒后數(shù)字溫度傳感器會(huì)顯示當(dāng)前溫度,數(shù)碼管也相應(yīng)顯示其數(shù)值。在PROTUES軟件仿真中,調(diào)節(jié)DS18B20的左右按鈕可是溫度值對(duì)應(yīng)加減,數(shù)碼管會(huì)顯示當(dāng)前值。當(dāng)減到15以下或加到30以上時(shí),報(bào)警器會(huì)報(bào)警。調(diào)節(jié)數(shù)字溫度傳感器DS18B20使其溫度減到14,此時(shí)報(bào)警器報(bào)警,數(shù)碼管顯示14。14時(shí)的電路仿真如圖10所示。圖10 14時(shí),仿真電路圖調(diào)節(jié)DS18B20的溫度值使其在099之間變化,電路仿真情況如表1所示。設(shè)置溫度值051015182023252729數(shù)碼管顯示051015182023252729是否報(bào)警是是是否否否否否否否設(shè)置溫度值303135405

11、06070809099數(shù)碼管顯示30313540506070809099是否報(bào)警否是是是是是是是是是表1 099溫度范圍內(nèi)電路仿真情況統(tǒng)計(jì)表2.硬件測(cè)試完成硬件焊接并檢查電路無(wú)誤后,給電路加5V電壓。用萬(wàn)用表測(cè)量各點(diǎn)電壓均正確,將相關(guān)的C語(yǔ)言程序?qū)雴纹瑱C(jī)中,打開開關(guān)進(jìn)行硬件測(cè)試。測(cè)試時(shí)發(fā)現(xiàn)了如下幾個(gè)問(wèn)題:(1)數(shù)碼管不顯示經(jīng)過(guò)查找資料發(fā)現(xiàn)由于我們把晶振焊接的離單片機(jī)內(nèi)部的振蕩電路太遠(yuǎn),導(dǎo)致無(wú)振蕩產(chǎn)生。重心將晶振焊接離單片機(jī)較近的地方,數(shù)碼管顯示正常。(2)單片機(jī)的復(fù)位電路不工作由于軟件仿真比較理想,復(fù)位電路選擇的電容在硬件中不起作用。將復(fù)位電路的電容并聯(lián)一個(gè)較大的電容,并將單片機(jī)EA腳接電源

12、后,單片機(jī)復(fù)位電路有效。六、結(jié)論及性價(jià)比應(yīng)用方案二設(shè)計(jì)的簡(jiǎn)易溫度檢測(cè)報(bào)警系統(tǒng),符合課設(shè)任務(wù)的要求。測(cè)溫范圍:0-99;誤差:±2報(bào)警下限溫度:15;報(bào)警上限溫度:30。當(dāng)溫度低于15或高于30時(shí)報(bào)警器會(huì)報(bào)警同時(shí)數(shù)碼管也會(huì)顯示當(dāng)時(shí)溫度。此次課程設(shè)計(jì)所需要的元件在實(shí)驗(yàn)室都可以找到,同時(shí)價(jià)格也比較合理。做出來(lái)的硬件實(shí)現(xiàn)功能比較理想,具有體積小、重量輕、抗干擾能力強(qiáng)、精確度高等優(yōu)點(diǎn)。同時(shí)也可以做進(jìn)一步的擴(kuò)展,可擴(kuò)展為多路溫度采集系統(tǒng)??傮w來(lái)說(shuō)符合了性價(jià)比要求。七、課程設(shè)設(shè)計(jì)體會(huì)及合理建議本次課程設(shè)計(jì)是一次綜合性的應(yīng)用,全方位考察了我們對(duì)所學(xué)軟件的理解與掌握。通過(guò)本學(xué)期對(duì)單片機(jī)課程和傳感器課程

13、的學(xué)習(xí)我們不但對(duì)以前學(xué)過(guò)的知識(shí)點(diǎn)有了更深一步的掌握,同時(shí)還學(xué)到了更多書本中所沒(méi)有涉及到的東西。從開始做期末作品后就不斷地去圖書館借書查找相關(guān)資料、上網(wǎng)搜索信息、與同組同學(xué)討論方案。在我們的共同努力下,在本周成功的完成了軟件的設(shè)計(jì)。因?yàn)閷?shí)驗(yàn)室要為電子競(jìng)賽準(zhǔn)備,所以不能能打印PCB版做出實(shí)物,這也是本次作品遺憾的地方。雖然在設(shè)計(jì)的過(guò)程中遇到各種各樣的困難,但最終在老師和同學(xué)的幫助下完成了設(shè)計(jì)。極大的培養(yǎng)了我們的科研精神,激發(fā)了我們的專業(yè)興趣,積累了實(shí)踐經(jīng)驗(yàn),為將來(lái)的繼續(xù)學(xué)習(xí)和工作打下了基礎(chǔ)。雖然這是我們?cè)谄谀┣暗淖詈笠粋€(gè)簡(jiǎn)單的課程設(shè)計(jì),但卻讓我們學(xué)到了很多。所以希望學(xué)院能夠多安排一些類似的實(shí)踐訓(xùn)練

14、,能讓我們有更多的機(jī)會(huì)接觸具有現(xiàn)實(shí)意義的項(xiàng)目,能接觸更多的硬件,更好的提升自己的實(shí)踐能力和綜合能力。參考文獻(xiàn)1.沙占友、李學(xué)芝著.中外數(shù)字萬(wàn)用表電路原理與維修技術(shù).M北京:人民郵電出版社,1993年.P157-P180。2.黃志偉主編.全國(guó)大學(xué)生電子設(shè)計(jì)競(jìng)賽電路設(shè)計(jì).M北京:北京航空航天大學(xué)出版社,2006年.P5-P21。3.戴伏生主編.基礎(chǔ)電子電路設(shè)計(jì)與實(shí)踐.M北京:國(guó)防工業(yè)出版社,2002年.P65-68。4.譚博學(xué)主編.集成電路原理與應(yīng)用.M北京:電子工業(yè)出版社,2003年.P134-P140。5.張毅剛、劉杰主編.單片機(jī)原理與應(yīng)用.M哈爾濱:哈爾濱工業(yè)大學(xué)出版社,2010年.P55-

15、P60。6.田立、田清、代方震主編.51單片機(jī)C語(yǔ)言程序設(shè)計(jì)快速入門.M北京:人民郵電出版社,2007年.P123-P144。7.劉文濤主編.單片機(jī)語(yǔ)言C51典型應(yīng)用設(shè)計(jì).M北京:人民郵電出版社,2005年.P211-P213。8.張學(xué)昭、王東云主編.單片機(jī)原理、接口技術(shù)及應(yīng)用(含C51).M西安:西安電子科技大學(xué)出版社,2009年.P33-P45。9.高慧芳主編.單片機(jī)原理與應(yīng)用技術(shù).M北京:科學(xué)出版社,2010年.P235-P258。附錄I:總電路圖 和PCB圖附錄II:元器件清單序號(hào)編號(hào)名稱型號(hào)數(shù)量1R1 電阻4.7K12R2電阻100K13R3電阻5K14RP1排阻5K15C1、C2電

16、容33P26C3電容100u17S1按鍵開關(guān)18X1晶振12M19Q1三極管PNP110LS1蜂鳴器111U151單片機(jī)AT89C52112U2溫度傳感器DS18B20113U3集成芯片74HC245114U44位7段數(shù)碼管共陽(yáng)1附錄:程序清單#include<reg52.h>#include<intrins.h>#define uchar unsigned char#define uint unsigned intsbit DQ=P37; sbit beep=P30; void reset(); /DS18B20復(fù)位函數(shù) void write_byte(uchar v

17、al); /DS18B20寫命令函數(shù) uchar read_byte(void); /DS18B20讀1字節(jié)函數(shù) void read_temp(); /溫度讀取函數(shù) void LED_display();void alarm();uchar tempH,tempL,num;uchar table10= 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90; /09的LED字符編碼 uchar setValue_low=15;uchar setValue_high=30;main() while(1) read_temp(); LED_display

18、(); alarm();void delay(uint t)for(;t>0;t-);void reset() /DS18B20的復(fù)位uchar presence=1;while(presence) while(presence) DQ=1;_nop_();_nop_(); DQ=0; delay(50); DQ=1; delay(6); presence=DQ; delay(45); presence=DQ; DQ=1;void write_byte(uchar val)/DS18B20寫一個(gè)字節(jié) uchar i;for(i=8;i>0;i-) DQ=1;_nop_();_nop_(); DQ=0;_nop_();_nop_();_nop_();_nop_();_nop_(); DQ=val&0x01; delay(6); val=val>>1; DQ=1;_nop_();uchar read_byte(void)/DS18B20讀一個(gè)字節(jié) uchar i;uchar value=0;for(i=8;i>0;i-) DQ=1;_nop_();_nop_(); value>>=1; DQ=0; _nop_();_nop_();_nop_();_nop_(); DQ=1;_nop

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論