基于單片機的溫濕度監(jiān)控報警系統(tǒng)設(shè)計畢業(yè)論文.doc

上傳人:good****022 文檔編號:116546762 上傳時間:2022-07-05 格式:DOC 頁數(shù):45 大?。?.69MB
收藏 版權(quán)申訴 舉報 下載
基于單片機的溫濕度監(jiān)控報警系統(tǒng)設(shè)計畢業(yè)論文.doc_第1頁
第1頁 / 共45頁
基于單片機的溫濕度監(jiān)控報警系統(tǒng)設(shè)計畢業(yè)論文.doc_第2頁
第2頁 / 共45頁
基于單片機的溫濕度監(jiān)控報警系統(tǒng)設(shè)計畢業(yè)論文.doc_第3頁
第3頁 / 共45頁

下載文檔到電腦,查找使用更方便

20 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《基于單片機的溫濕度監(jiān)控報警系統(tǒng)設(shè)計畢業(yè)論文.doc》由會員分享,可在線閱讀,更多相關(guān)《基于單片機的溫濕度監(jiān)控報警系統(tǒng)設(shè)計畢業(yè)論文.doc(45頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、基于單片機的溫濕度監(jiān)控報警系統(tǒng)設(shè)計畢業(yè)論文基于單片機的溫濕度監(jiān)控報警系統(tǒng)設(shè)計摘要溫度、濕度和人類的生產(chǎn)、生活有著密切的關(guān)系,尤其是在醫(yī)學(xué)、電子電力、航天航空、食品發(fā)酵,農(nóng)業(yè)生產(chǎn)等領(lǐng)域中對溫濕度的要求尤其嚴(yán)格,是最常見最基本的參數(shù),例如機械、電子、石油、化工等各類工業(yè)中廣泛需要對溫度濕度的實時檢測與控制。并且隨著人們生活水平的提高,人們對自己的生存環(huán)境越來越關(guān)注。而空氣中溫濕度的變化與人體的舒適度和情緒都有直接的影響,所以對溫度濕度的檢測及控制就非常有必要了。使用STC89C52單片機設(shè)計溫濕度監(jiān)控報警系統(tǒng),可以即時精確的反應(yīng)溫室內(nèi)外的溫度以及濕度的變化。完成諸如升溫到特定的溫度、降溫到特定的溫

2、度。在溫度上下限范圍內(nèi)保持恒溫等多種控制方式,在濕度控制方面也是如此。將此系統(tǒng)應(yīng)用到溫室當(dāng)中無疑為植被生長提供了更加適宜的環(huán)境。對于大棚種植和花圃、花卉栽培,必須在某些特定環(huán)境安裝溫濕度裝置對其進(jìn)行監(jiān)控。本系統(tǒng)可以及時、精確的反映室內(nèi)外的溫度以及濕度的變化,能夠滿足溫濕度的控制要求。 關(guān)鍵詞:溫濕度 監(jiān)控 STC89S52 - I -AbstractTemperature, humidity and has close relation with the human production and living, especially in medicine, electronics, elec

3、tric power, aerospace, food fermentation, the requirements for temperature and humidity in areas such as agricultural production is particularly strict, is the most common is the most basic parameters, such as machinery, electronics, petroleum, chemical industry etc widely needed in real-time detect

4、ion and control of temperature, humidity. And as people living standard rise, people for their own survival environment more and more attention. And the bodys comfort level with the change of temperature and humidity in the air and mood has a direct effect, so the detection and control of the temper

5、ature humidity is very necessary.Using a STC89C52 single-chip microcomputer temperature and humidity monitoring alarm system, can real-time accurate reaction inside and outside the greenhouse temperature and humidity changes. Finish such as heating up to a specific temperature and cooling to a speci

6、fic temperature. In upper and lower temperature range constant temperature control of a variety of ways, so in terms of humidity control. Will no doubt of this system is applied to the greenhouse for vegetation growth provide a more comfortable environment. For greenhouses planting and flower beds,

7、flower cultivation, must be installed in some specific environment to monitor the temperature and humidity devices. This system can timely and accurately reflect the change of indoor and outdoor temperature and humidity, can satisfy the requirement of the temperature and humidity control.Keywords: T

8、emperature and humidity, monitoring, STC89S52 - II -目錄摘要IAbstractII目錄III1 總體設(shè)計概述11.1 系統(tǒng)的主要功能11.2 系統(tǒng)的工作原理11.3 總體設(shè)計21.3.1 總體設(shè)計框圖21.3.2 總體設(shè)計工作流程32 系統(tǒng)硬件設(shè)計42.1 主控模塊設(shè)計42.1.1 STC89C52概述42.1.2 時鐘電路與復(fù)位電路72.2 電源模塊設(shè)計82.3 DHT11傳感器模塊設(shè)計82.3.1 DHT11傳感器82.3.2 DHT11傳感器模塊電路設(shè)計102.4 1602液晶顯示模塊設(shè)計112.4.1 1602液晶顯示屏112.4.2

9、 1602液晶顯示屏參數(shù)112.4.3 1602液晶顯示模塊電路設(shè)計132.5 閾值設(shè)置模塊設(shè)計142.6 報警模塊設(shè)計152.6.1 蜂鳴器報警模塊設(shè)計152.6.2 發(fā)光二極管報警模塊設(shè)計162.7 24C02數(shù)據(jù)存儲模塊162.7.1 24C02數(shù)據(jù)存儲器162.7.2 24C02數(shù)據(jù)存儲器模塊電路設(shè)計172.8 系統(tǒng)總體電氣原理圖183 系統(tǒng)軟件設(shè)計194 系統(tǒng)調(diào)試21總結(jié)22致謝23參考文獻(xiàn)24附件1 系統(tǒng)程序25A1.1 主程序25A1.2 24C02程序30A1.3 DHT11傳感器程序33A1.4 1602程序35附件2 PCB板39附件3 實物圖40- IV -1 總體設(shè)計概

10、述1.1 系統(tǒng)的主要功能本系統(tǒng)以單片機最小系統(tǒng)為核心,將溫濕度通過LCD1602顯示器實時的顯示出來,溫濕度最高值可以任意設(shè)置并實時顯示出來。(濕度測量范圍:2095RH。溫度測量范圍:050)。各部分主要功能是:1. 溫濕度實時檢測及顯示。通過LCD1602實時地顯示傳感器DHT11檢測到的溫濕度值,并且固定時間(5s)檢測更新顯示一次。2. 閾值設(shè)置,通過四個按鍵實現(xiàn)。在使用過程中不需要在程序中更改。使得系統(tǒng)更加人性化、智能化,具有更高的實用價值。3. 當(dāng)溫濕度超出閾值時能自動報警。此時對應(yīng)發(fā)光二極管的點亮,蜂鳴器發(fā)出聲音實現(xiàn)報警,以提醒用戶做出相應(yīng)的改進(jìn)措施。通過干燥器、降溫風(fēng)扇等設(shè)備工

11、作。使溫濕度回到設(shè)定值內(nèi),報警自動解除。1.2 系統(tǒng)的工作原理本系統(tǒng)的工作原理:系統(tǒng)主要涉及了溫濕度的測量、顯示以及實現(xiàn)簡單控制。硬件方面有五個模塊,即STC89C52單片機主控模塊、DHT11溫濕度傳感器模塊、LCD1602液晶顯示模塊、報警模塊以及閾值設(shè)置模塊等。其中主控模塊以單片機最小系統(tǒng)為基礎(chǔ),適當(dāng)增加驅(qū)動電路。1. 傳感器模塊使用的是DHT11數(shù)字溫濕度傳感器。通過DHT11檢測出當(dāng)前環(huán)境下的溫濕度,將所測數(shù)據(jù)交給STC89C52單片機進(jìn)行分析和處理,并分別存入不同數(shù)組以便顯示時候用。其中,為了顯示穩(wěn)定,本系統(tǒng)每間隔5s采集一次數(shù)據(jù)送入單片機。2. 1602液晶顯示模塊就是實現(xiàn)溫濕度

12、檢測值和閾值的顯示。其分兩行顯示,上邊一行顯示溫度值,下邊顯示濕度值,兩行的末尾兩位是閾值顯示位,正常工作的時候可以通過閾值設(shè)置模塊實時調(diào)節(jié)需要的閾值,實時顯示出來,構(gòu)建了自動化的人機交互。3. 報警模塊實現(xiàn)了檢測值超過閾值的時候發(fā)光二極管點亮,蜂鳴器鳴響報警。本系統(tǒng)采用的是有源蜂鳴器,因此無論溫度還是濕度超出范圍蜂鳴器都是以相同頻率的聲音進(jìn)行報警提示。提醒工作人員此時溫度濕度數(shù)據(jù)出現(xiàn)異常、需及時調(diào)整室內(nèi)溫濕度。4. 閾值設(shè)置模塊通過四個按鍵實現(xiàn)溫濕度報警閾值的設(shè)置。按一次按鍵溫度、濕度對應(yīng)值加一或者減一。使得溫濕度閾值設(shè)置提供了極大的方便,不需要每次都在程序里改動然后再燒錄,省去了復(fù)雜的過程

13、。實現(xiàn)自動化,便于用于工業(yè),農(nóng)業(yè)等對溫濕度要求較高的場所。1.3 總體設(shè)計1.3.1 總體設(shè)計框圖按照系統(tǒng)功能的具體要求,在保證實現(xiàn)其功能的基礎(chǔ)上,盡可能降低系統(tǒng)成本??傮w設(shè)計方案圍繞上述思想,初步確定系統(tǒng)的方案如圖1.1所示。圖1.1系統(tǒng)總體設(shè)計框圖從圖中可以看出,系統(tǒng)有STC89C52單片機模塊、DHT11傳感器模塊、閾值設(shè)置模塊、1602字符液晶顯示模塊、報警模塊、數(shù)據(jù)存儲模塊等組成。在方案設(shè)計中,外圍模塊采用并行控制,以簡化系統(tǒng),提高控制精度。該設(shè)計以STC89C52單片機為控制核心,實現(xiàn)溫濕度采集、顯示、報警。1.3.2 總體設(shè)計工作流程本次設(shè)計有兩個部分是重點。一個是液晶顯示部分,

14、一個是DHT11傳感器部分。難點是軟件程序的編寫和系統(tǒng)的整體調(diào)試。整個流程如圖1.2所示:圖1.2 整體設(shè)計流程圖- 40 -2 系統(tǒng)硬件設(shè)計2.1 主控模塊設(shè)計2.1.1 STC89C52概述STC89C52單片機是宏晶科技推出的新一代高速,低功耗,超強抗干擾的單片機,指令代碼完全兼容傳統(tǒng)8051單片機。主要特性如下:1. 增強型8051單片機,6時鐘/機器周期和12時鐘/機器周期可以任意選擇,指令代碼完全兼容傳統(tǒng)8051。2. 工作電壓:5.5V3.3V。3. 工作頻率范圍:040MHz,相當(dāng)于普通8051的080MHz,實際工作頻率可達(dá)48MHz。4. 用戶應(yīng)用程序空間為8K字節(jié)。5.

15、片上集成512字節(jié)RAM。6. 通用I/O口(32個),復(fù)位后為:P0/P1/P2/P3是準(zhǔn)雙向口,P0口是漏極開路輸出,作為總線擴展用時,不用加上拉電阻,作為I/O口用時,需加上拉電阻。7. ISP(在系統(tǒng)可編程)/IAP(在應(yīng)用可編程),無需專用編程器,無需專用仿真器,可通過串口(RxD/P3.0,TxD/P3.1)直接下載用戶程序,數(shù)秒即可完成一片。8. 具有EEPROM功能。9. 具有看門狗功能。10. 共3個16位定時器/計數(shù)器。即定時器T0、T1、T2。11. 外部中斷4路,下降沿中斷或低電平觸發(fā)電路,Power Down模式可由外部中斷低電平觸發(fā)中斷方式喚醒。12. 工作溫度范圍

16、:-40+85(工業(yè)級)/075(商業(yè)級)。STC89C52單片機的工作模式1. 掉電模式:典型功耗0.1A,可由外部中斷喚醒,中斷返回后,繼續(xù)執(zhí)行原程序。2. 空閑模式:典型功耗2mA。3. 正常工作模式:典型功耗4Ma7mA。圖2.1 STC89C52引腳圖STC89C52引腳功能說明1. VCC(40引腳):電源電壓。2. VSS(20引腳):接地。3. P0端口(P0.0P0.7,3932引腳):P0口是一個漏極開路的8位雙向I/O口。作為輸出端口,每個引腳能驅(qū)動8個TTL負(fù)載,對端口P0寫入“1”時,可以作為高阻抗輸入。在訪問外部程序和數(shù)據(jù)存儲器時,P0口也可以提供低8位地址和8位數(shù)

17、據(jù)的復(fù)用總線。此時,P0口內(nèi)部上拉電阻有效。在Flash ROM編程時,P0端口接收指令字節(jié);而在校驗程序時,則輸出指令字節(jié)。驗證時,要求外接上拉電阻,一般為10k。4. P1端口(P1.0P1.7,18引腳):P1口是一個帶內(nèi)部上拉電阻的8位雙向I/O口。P1的輸出緩沖器可驅(qū)動4個TTL輸入。對端口寫入1時,通過內(nèi)部的上拉電阻把端口拉到高電位,這是可用作輸入口。P1口作輸入口使用時,因為有內(nèi)部上拉電阻,那些被外部拉低的引腳會輸出一個電流()。此外,P1.0和P1.1還可以作為定時器/計數(shù)2的外部技術(shù)輸入(P1.0/T2)和定時器/計數(shù)器2的觸發(fā)輸入(P1.1/T2EX)。5. P2端口(P2

18、.0P2.7,2128引腳):P2口是一個帶內(nèi)部上拉電阻的8位雙向I/O端口。P2的輸出緩沖器可以驅(qū)動(吸收或輸出電流方式)4個TTL輸入。對端口寫入1時,通過內(nèi)部的上拉電阻把端口拉到高電平,這時可用作輸入口。P2作為輸入口使用時,因為有內(nèi)部的上拉電阻,那些被外部信號拉低的引腳會輸出一個電流()。6. P3端口(P3.0P3.7,1017引腳):P3是一個帶內(nèi)部上拉電阻的8位雙向I/O端口。P3的輸出緩沖器可驅(qū)動(吸收或輸出電流方式)4個TTL輸入。對端口寫入1時,通過內(nèi)部的上拉電阻把端口拉到高電位,這時可用作輸入口。P3做輸入口使用時,因為有內(nèi)部的上拉電阻,那些被外部信號拉低的引腳會輸入一個

19、電流()。P3口除作為一般I/O口外,還有其他一些復(fù)用功能。7. RST(9引腳):復(fù)位輸入。當(dāng)輸入連續(xù)兩個機器周期以上高電平時為有效,用來完成單片機的復(fù)位初始化操作。8. ALE/(30引腳):地址鎖存控制信號(ALE)是訪問外部程序存儲器時,鎖存低8位地址的輸出脈沖。在Flash編程時,此引腳()也用作編程輸入脈沖。9. (29引腳):外部程序存儲器選通信號()是外部程序存儲器選通信號。當(dāng)STC89C52從外部程序存儲器執(zhí)行外部代碼時,在每個機器周期被激活兩次,而訪問外部數(shù)據(jù)存儲器時,將不被激活。10. /VPP(31引腳):訪問外部程序存儲器控制信號。為使能從0000H到FFFFH的外部

20、程序存儲器讀取指令,必須接GND。注意加密方式1時,將內(nèi)部鎖定位RESET。為了執(zhí)行內(nèi)部程序指令,應(yīng)該接VCC。在Flash編程期間,也接收12伏VPP電壓。11. XTAL1(19引腳):振蕩器反相放大器和內(nèi)部時鐘發(fā)生電路的輸入端。12. XTAL2(18引腳):振蕩器反相放大器和內(nèi)部時鐘發(fā)生電路的輸入端。2.1.2 時鐘電路與復(fù)位電路單片機需要外加時鐘電路為內(nèi)部程序提供時序。單片機內(nèi)部具有一個構(gòu)成振蕩器的高增益反相放大器,此放大器的輸入與輸出端分別是引腳XTAL1和XTAL2,在XTAL1和XTAL2上外接時鐘源即可構(gòu)成時鐘電路。本系統(tǒng)的時鐘電路如圖2.2所示。圖2.2 單片機的外部時鐘電

21、路在圖2.2中電容的大小均為30pF,晶振的大小為11.059MHz。為了保證單片機的可控運行,需要給單片機加復(fù)位電路,一般情況下,單片機的復(fù)位電路有以下幾項功能:1. 上電復(fù)位可對內(nèi)部寄存器進(jìn)行復(fù)位,否則寄存器狀態(tài)未知。2. 同步內(nèi)、外部時鐘信號。防止頻率不穩(wěn)及晶振停振。3. 有些高級芯片,不先復(fù)位根本部工作。4. 有復(fù)位引腳的芯片必須加復(fù)位,這是電子設(shè)計的基本要求。5. 在電路上電時候或電壓波動不穩(wěn)定的時候,當(dāng)給單片機上電那一瞬間,電壓有在幾微秒內(nèi)(有的是幾毫秒內(nèi))不是直接跳變到5V的而是一個直線上升的階段,這時候,單片機不能正常工作,需要復(fù)位電路給它延時以等到電壓穩(wěn)定。6. 由于單片機在

22、工作過程中可能會受到各種干擾因素,所以不排除單片機出錯的可能,當(dāng)單片機的程序“跑飛”時可以通過復(fù)位電路是單片機恢復(fù)正常的運行狀態(tài)。單片機的復(fù)位電路主要有以下幾種方式:上電復(fù)位方式、外部脈沖復(fù)位方式、上電+按鈕復(fù)位方式以及軟件復(fù)位等。本系統(tǒng)為了實現(xiàn)方便,使用硬件復(fù)位方式,即采用自動電平復(fù)位的方式,見圖2.3所示。圖2.3 單片機自動電平復(fù)位電路圖2.3的復(fù)位電路直接接單片機得RST管腳,為單片機提供復(fù)位電平,圖中電容為10uF,電阻為10K。本設(shè)計各個輸入輸出點及功能說明:本設(shè)計以STC89C52單片機最小系統(tǒng)為核心。供電電源由USB接口或者干電池供電。將P0口作為與液晶的數(shù)據(jù)傳輸口。P1.5、

23、P1.6作為發(fā)光二極管接口,以控制報警模塊工作。P1.7作為與傳感器DHT11通信的數(shù)據(jù)口,P3口作為閾值模塊中四個按鍵的接口,P2.5、P2.7作為分別于液晶的RS、R/W和E端相連接,以控制液晶顯示,P2.0接蜂鳴器控制端,以控制報警模塊工作。2.2 電源模塊設(shè)計本設(shè)計由于經(jīng)濟等條件限制,沒能單獨設(shè)計制作直流5V電源,暫用USB供電或者使用三節(jié)5號干電池代替,在實際應(yīng)用場合中,需加入此部分,可直接購買市電220V轉(zhuǎn)直流5V開關(guān)電源,以保證系統(tǒng)長時間工作。2.3 DHT11傳感器模塊設(shè)計2.3.1 DHT11傳感器DHT11數(shù)字溫濕度傳感器是一款含有已校準(zhǔn)數(shù)字信號輸出的溫濕度復(fù)合傳感器。它應(yīng)

24、用專用的數(shù)字模塊采集技術(shù)和溫濕度傳感技術(shù),確保產(chǎn)品具有極高的可靠性與卓越的長期穩(wěn)定性。傳感器包括一個電阻式感濕元件和一個NTC測溫元件,并與一個高性能8位單片機相連接。因此該產(chǎn)品具有品質(zhì)卓越、超快響應(yīng)、抗干擾能力強、性價比高等優(yōu)點。每個DHT11傳感器都在極為精確的濕度校驗室中進(jìn)行校準(zhǔn)。校準(zhǔn)系數(shù)以程序的形式儲存在OTP內(nèi)存中,傳感器內(nèi)部在檢測信號的處理過程中要調(diào)用這些校準(zhǔn)系數(shù)。單線制串行接口,使系統(tǒng)集成變得簡易快捷。超小的體積、極低的功耗,信號傳輸距離可達(dá)20米以上,使其成為各類應(yīng)用甚至最為苛刻的應(yīng)用場合的最佳選則。產(chǎn)品為4針單排引腳封裝。連接方便,特殊封裝形式可根據(jù)用戶需求而提供。 DHT1

25、1傳感器引腳圖如下2.4所示:圖2.4 DHT11傳感器引腳圖1. 引腳介紹:Pin1:(VCC),電源引腳,供電電壓為35.5V。Pin2:(DATA),串行數(shù)據(jù),單總線。Pin3:(NC),空腳,請懸浮。Pin4:(VDD),接地端,電源負(fù)極。2. 接口說明:由傳感器資料知連接線長度短于20米時用5K上拉電阻,大于20米時根據(jù)實際情況使用合適的上拉電阻??紤]本設(shè)計實際應(yīng)用情況故使用5K上拉電阻。圖2.5 DHT11典型應(yīng)用電路3. 數(shù)據(jù)幀的描述:DATA用于微處理器與DHT11之間的通訊和同步,采用單總線數(shù)據(jù)格式,一次通訊時間4ms左右,數(shù)據(jù)分小數(shù)部分和整數(shù)部分,具體格式在下面說明,當(dāng)前小

26、數(shù)部分用于以后擴展,現(xiàn)讀出為零。操作流程如下:一次完整的數(shù)據(jù)傳輸為40bit,高位先出。數(shù)據(jù)格式:8bit濕度整數(shù)數(shù)據(jù)+8bit濕度小數(shù)數(shù)據(jù)。+8bit溫度整數(shù)數(shù)據(jù)+8bit溫度小數(shù)數(shù)據(jù)。數(shù)據(jù)傳送正確時校驗和數(shù)據(jù)等于“8bit濕度整數(shù)數(shù)據(jù)+8bit濕度小數(shù)數(shù)據(jù)+8bi溫度整數(shù)數(shù)據(jù)+8bit溫度小數(shù)數(shù)據(jù)”所得結(jié)果的末8位。4. 電氣特性:VDD=5V,T =25,除非特殊標(biāo)注。表2.1 DHT11的電氣特性參數(shù)條件Mintypmax單位供電DC355.5V供電電流測量0.5-2.5mA平均0.2-1mA待機100-150uA采樣周期秒1-次注:采樣周期間隔不得低于1秒鐘。2.3.2 DHT11傳

27、感器模塊電路設(shè)計 DHT11傳感器連接單片機相對比較簡單。單片機的P2.0口用來發(fā)收串行數(shù)據(jù),即數(shù)據(jù)口。連接傳感器的Pin2(單總線,串行數(shù)據(jù))。由于測量范圍電路小于20米,加一個5K的上拉電阻,因此在傳感器的Pin2口與電源之間連接一個5K電阻。而傳感器的電源端口Pin1和Pin4分別接單片機的VDD和GND端。傳感器的第三腳懸浮放置。DHT11傳感器原件的電路原理圖如下2.6所示:圖2.6 DHT11電路原理圖2.4 1602液晶顯示模塊設(shè)計2.4.1 1602液晶顯示屏1602液晶 是一種工業(yè)字符型液晶,能夠同時顯示16x02 即32個字符。(16列2行)。在日常生活中,我們對液晶顯示器

28、并不陌生。液晶顯示模塊已作為很多電子產(chǎn)品的通過器件,如在計算器、萬用表、電子表及很多家用電子產(chǎn)品中都可以看到,顯示的主要是數(shù)字、專用符號和圖形。本設(shè)計使用LCD1602液晶顯示器。它有以下幾個優(yōu)點:1. 顯示質(zhì)量高:由于液晶顯示器每一個點在收到信號后就一直保持那種色彩和亮度,恒定發(fā)光,而不像數(shù)碼顯示器那樣需要不斷刷新亮點。因此,液晶顯示器畫質(zhì)高且不會閃爍。2. 數(shù)字式接口:液晶顯示器都是數(shù)字式的,和單片機系統(tǒng)的接口更加簡單可靠,操作更加方便。3. 體積小、重量輕:液晶顯示器通過顯示屏上的電極控制液晶分子狀態(tài)來達(dá)到顯示的目的,在重量上比相同顯示面積的傳統(tǒng)顯示器要輕得多。4. 功耗低:液晶顯示器的

29、功耗主要消耗在其內(nèi)部的電極和驅(qū)動IC上,因而耗電量比其它顯示器要少得多。2.4.2 1602液晶顯示屏參數(shù)1. 1602的基本參數(shù)及引腳功能:(1)1602LCD主要技術(shù)參數(shù):顯示容量:162個字符。芯片工作電壓:4.55.5V。工作電流:2.0mA(5.0V)。模塊最佳工作電壓:5.0V。字符尺寸:2.954.35(WH)mm。(2)引腳功能說明:1602LCD采用標(biāo)準(zhǔn)的14腳(無背光)或16腳(帶背光)接口,各引腳接口說明如表2.2所示:表2.2引腳接口說明表編號符號引腳說明編號符號引腳說明1VSS電源地9D2數(shù)據(jù)2VDD電源正極10D3數(shù)據(jù)3VL液晶顯示偏壓11D4數(shù)據(jù)4RS數(shù)據(jù)/命令選

30、擇12D5數(shù)據(jù)5R/W讀/寫選擇13D6數(shù)據(jù)6E使能信號14D7數(shù)據(jù)7D0數(shù)據(jù)15BLA背光源正極8D1數(shù)據(jù)16BLK背光源負(fù)極第1腳:VSS為地電源。第2腳:VDD接5V正電源。第3腳:VL為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地時對比度最高,對比度過高時會產(chǎn)生“鬼影”,使用時可以通過一個10K的電位器調(diào)整對比度。第4腳:RS為寄存器選擇,高電平時選擇數(shù)據(jù)寄存器、低電平時選擇指令寄存器。第5腳:R/W為讀寫信號線,高電平時進(jìn)行讀操作,低電平時進(jìn)行寫操作。當(dāng)RS和R/W共同為低電平時可以寫入指令或者顯示地址,當(dāng)RS為低電平R/W為高電平時可以讀忙信號,當(dāng)RS為高電平R/W為低電平時

31、可以寫入數(shù)據(jù)。第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。第714腳:D0D7為8位雙向數(shù)據(jù)線。第15腳:背光源正極。第16腳:背光源負(fù)極。2. 1602的RAM地址映射及標(biāo)準(zhǔn)字庫表液晶顯示模塊是一個慢顯示器件,所以在執(zhí)行每條指令之前一定要確認(rèn)模塊的忙標(biāo)志為低電平,表示不忙,否則此指令失效。要顯示字符時要先輸入顯示字符地址,也就是告訴模塊在哪里顯示字符,圖2.7是1602的內(nèi)部顯示地址。圖2.7 1602LCD內(nèi)部顯示地址2.4.3 1602液晶顯示模塊電路設(shè)計液晶顯示的原理是利用液晶的物理特性,通過電壓對其顯示區(qū)域進(jìn)行控制,有電就有顯示。液晶顯示器具有厚度薄、適用于

32、大規(guī)模集成電路直接驅(qū)動、易于實現(xiàn)全彩色顯示的特點,目前已經(jīng)被廣泛應(yīng)用在便攜式電腦、數(shù)字?jǐn)z像機、PDA移動通信工具等眾多領(lǐng)域。其中Vo腳,即第三引腳加了一個10K的滑動變阻器,該變阻器的目的是調(diào)節(jié)液晶的顯示對比度,通過調(diào)節(jié)滑阻改變Vo的電壓值,從而使液晶顯示在最清晰的狀態(tài)。圖2.8 1602顯示模塊原理圖2.5 閾值設(shè)置模塊設(shè)計從圖2.9可以看到。從上到下依次設(shè)為K2、K5、K6、K7四個按鍵,其連接單片機引腳分別是P1.2、P3.3、P3.4、P3.5四個引腳。根據(jù)該模塊使得閾值設(shè)置分為兩個模塊,分別是濕度最高值設(shè)置模式、溫度最高值設(shè)置模式。例如濕度最高值設(shè)置,按一次K6濕度最高值加一,按一次

33、K7濕度最高值減一,1602液晶顯示將實時顯示出設(shè)置值。其他值設(shè)置類似。按鍵閾值設(shè)置模塊部分,設(shè)置非常人性化,而不用每次設(shè)置閾值都到程序里邊去設(shè)置后再燒制進(jìn)單片機,實現(xiàn)了自動化。圖2.9 閾值設(shè)置模塊原理圖2.6 報警模塊設(shè)計2.6.1 蜂鳴器報警模塊設(shè)計圖2.10 蜂鳴器報警模塊原理圖系統(tǒng)在設(shè)計時候采用的是有源蜂鳴器,只要給蜂鳴器一定的電流值,蜂鳴器就可以按照一定的頻率發(fā)聲,但是單片機引腳的驅(qū)動電流比較小,不足以驅(qū)動蜂鳴器工作,因此采用了一個PNP的三極管S9012來驅(qū)動。當(dāng)單片機P2.0輸出一個低電平時,蜂鳴器響,實現(xiàn)報警。2.6.2 發(fā)光二極管報警模塊設(shè)計此部分利用發(fā)光二極管的點亮來實現(xiàn)

34、報警,當(dāng)單片機P1.5、P1.6引腳輸出一個低電平時發(fā)光二極管亮,實現(xiàn)報警。圖2.11 發(fā)光二極管報警模塊原理圖2.7 24C02數(shù)據(jù)存儲模塊2.7.1 24C02數(shù)據(jù)存儲器總線是一種由PHILIPS公司開發(fā)的兩線式串行總線,用于連接微控制器及其外圍設(shè)備。存儲器24C02系列等都是使用協(xié)議進(jìn)行數(shù)據(jù)的操作。主要在存儲一些掉電后還要保存數(shù)據(jù)的場合。總線特點: 1. 要求兩條總線線路:一條串行數(shù)據(jù)線SDA,一條串行時鐘線SCL。2. 每個連接到總線的器件都可以通過唯一的地址和一直存在的簡單的主機、從機關(guān)系軟件設(shè)定地址,主機可以作為主機發(fā)送器或主機接收器。3. 串行的8 位雙向數(shù)據(jù)傳輸位速率在標(biāo)準(zhǔn)模式

35、下可達(dá)100kbit/s,快速模式下可達(dá)400kbit/s,高速模式下可達(dá)3.4Mbit/s。 2.7.2 24C02數(shù)據(jù)存儲器模塊電路設(shè)計本設(shè)計為實現(xiàn)溫濕度閾值的連續(xù)性??紤]了溫濕度閾值的存儲,在掉電后,下一次使用時能回到原來設(shè)定的閾值。24C02的時鐘線SCL與單片機的P1.0相連,數(shù)據(jù)線SDA與單片機的P1.1相連。其電氣原理圖如圖2.12所示。圖2.12 24C02數(shù)據(jù)存儲模塊原理圖2.8 系統(tǒng)總體電氣原理圖圖2.13 系統(tǒng)總體電氣原理圖PCB板(見附件2)。實物圖(見附件3)。3 系統(tǒng)軟件設(shè)計軟件是一個設(shè)計實現(xiàn)功能的重要部分。本設(shè)計采用了C語言進(jìn)行模塊化編寫程序。圖3.1主程序流程圖

36、圖3.2 DHT11傳感器程序流程圖圖3.3 1602程序流程圖系統(tǒng)程序(見附件1)。4 系統(tǒng)調(diào)試本設(shè)計是在Keil C環(huán)境下開發(fā)的,Keil C軟件支持C語言的編程及調(diào)試,運用方便。 在完成對程序的編寫及燒錄之后,還需對其各部分功能進(jìn)行驗證。開始供電后、稍帶幾秒等1602液晶屏能正常顯示當(dāng)前溫濕度了之后。觀察當(dāng)前溫濕度的變化。并且針對與自己設(shè)定的限值相比較。若當(dāng)前溫度沒有超標(biāo),即沒有超過限值。可以用手捂住DHT11傳感器,令其溫度的顯示超標(biāo)。測試能否達(dá)到報警,經(jīng)過測試,完全可行。因而簡單的實現(xiàn)了對溫度的控制。濕度控制原理跟溫度一樣。1. 硬件問題及解決方法蜂鳴器不夠響。在加報警裝置的時候,蜂

37、鳴器不夠響。因為單是單片機的引腳輸出電流還不足以驅(qū)動蜂鳴器,后來又加了一個NPN的三極管來驅(qū)動蜂鳴器。最后就能夠自如的驅(qū)動蜂鳴器發(fā)聲了。2. 軟件所遇問題及解決方法本次畢業(yè)設(shè)計大部分時間都花在了軟件調(diào)試上了,軟件調(diào)試不像硬件那么直觀,對我來說是個難點。閾值設(shè)置模塊加了按鍵以后按鍵始終不能按預(yù)期效果工作。剛開始還以為是硬件部分沒有連接好,用萬用表查了很久,但是電平變化都是正確的。后面在老師的指導(dǎo)下才知道是延時太長,當(dāng)按鍵時間比較長的時候,單片機是可以讀出按鍵的。最后修改了程序,系統(tǒng)功能得以實現(xiàn)。總結(jié)本設(shè)計是以單片機為控制器件的溫濕度監(jiān)控報警系統(tǒng)。采用DHT11數(shù)字溫濕度傳感器檢測環(huán)境中的溫濕度,

38、輸入到單片機進(jìn)行處理。通過LCD1602顯示器實時的將溫濕度檢測并顯示出來。并且能夠設(shè)置溫濕度上限值,當(dāng)環(huán)境溫濕度超過設(shè)定值時,系統(tǒng)自動報警,當(dāng)溫濕度回到設(shè)定值內(nèi),報警自動解除。本系統(tǒng)具有硬件少,結(jié)構(gòu)簡單,容易實現(xiàn),性能穩(wěn)定可靠,成本低等特點??偨Y(jié)本文的研究工作,主要做了下面幾點較突出的工作:1. 掌握了LCD1602顯示屏的使用,了解了LCD1602顯示屏特有的工作優(yōu)點。2. 本設(shè)計使用DHT11數(shù)字溫濕度傳感器。能同時對濕度和溫度進(jìn)行測量,使用方便。 3.文章給出了系統(tǒng)具體的硬件設(shè)計方案,硬件結(jié)構(gòu)電路圖,軟件流程圖和具體C語言程序設(shè)計與調(diào)試等方面。存在缺陷:溫濕度的精度是較低的,反應(yīng)相對慢

39、。第一次PCB制版也有很多的不足之處,有些過孔太小不便于元件安裝,硬件的布局設(shè)計不夠美觀,液晶顯示器不便于固定。以后有機會應(yīng)該在這些方面多學(xué)習(xí),多注意。致謝本文從開題論證、研究設(shè)計到論文完成都是在導(dǎo)師的悉心指導(dǎo)下完成的。一直以來,老師在本設(shè)計硬件原理、軟件編寫、論文的寫作中給予我巨大的幫助,老師對我的教導(dǎo)將使我終身受益。在此,謹(jǐn)向?qū)煴硎局孕牡母兄x!經(jīng)過幾個月的查資料、整理材料、做實物,寫作論文,今天終于可以順利的完成論文的最后的謝辭了。論文得以完成,要感謝的人實在太多了,特別感謝老師們的幫助,在硬件實物方面缺少元件,老師們都想盡辦法幫助我解決,并提供給了我許多有益的指導(dǎo)和熱心的幫助。正是有了

40、你們的悉心幫助和支持,才使我的畢業(yè)論文工作順利完成,我衷心的對老師們表示感謝。另外,要感謝在大學(xué)期間所有傳授我知識的老師,是你們的悉心教導(dǎo)使我有了良好的專業(yè)課知識,這也是論文得以完成的基礎(chǔ)。謝謝你們,謝謝母校!在論文開題論證、研究設(shè)計、系統(tǒng)調(diào)試過程中,還得到了很多同學(xué)的熱情幫助。在此,特向幫助過我的老師和朋友表示誠摯的謝意!參考文獻(xiàn)1 姜志海, 黃玉清,劉連鑫. 單片機原理及應(yīng)用M. 電子工業(yè)出版社,2009.2 郭天祥. 51單片機C語言教程M. 電子工業(yè)出版社.2009.3 張毅剛, 彭喜元, 彭宇. 單片機原理及應(yīng)用M. 高等教育出版社.2010.4 楊素行. 模擬電子技術(shù)基礎(chǔ)簡明教程M

41、. 高等教育出版社.2006. 5 李維提, 郭強. 液晶顯示應(yīng)用技術(shù)M. 電子工業(yè)出版社.2003.6 劉湘濤. 單片機原理與應(yīng)用M. 電子工業(yè)出版社.2006.7 何立民. 單片機高級教程M. 北京航空航天大學(xué)出版社.2004.8 周潤景, 徐宏偉, 丁莉. 單片機電路設(shè)計分析與制作M. 機械工業(yè)出版社. 2010.9 李全利. 單片機原理及應(yīng)用技術(shù)M. 高等教育出版社, 2004.10 李秀霞. 鄭春厚. Protel DXP 2004電路設(shè)計與仿真教程M. 北京航空航天大學(xué)出版社.2008.11 余家春. Protel99Se電路設(shè)計實用教程M. 中國鐵道出版社, 2002.12 郭強

42、. 液晶顯示應(yīng)用技術(shù)M. 電子工業(yè)出版社. 2000.13 王建校. 51系列單片機及C51程序設(shè)計M. 科學(xué)出版社. 2002.14 馬忠梅. 單片機的C語言應(yīng)用程序設(shè)計M. 北京航空航天大學(xué)出版社.1998.附件1 系統(tǒng)程序A1.1 主程序/實現(xiàn)功能,設(shè)定溫度上限和濕度上限,超過上限值時報警。報警現(xiàn)象,對應(yīng)二極管亮,蜂鳴器響/#include #include 1602.h#include dht.h#include 2402.h /定義變量sbit Led_qushi=P16;/潮濕報警燈sbit Led_jiangwen=P15; /超溫報警燈sbit Key_TH1 = P12;/溫

43、度最高值設(shè)置按鍵sbit Key_TH2 = P33; /溫度最高值設(shè)置按鍵sbit Key_HH1 = P34;/濕度最高值設(shè)置按鍵sbit Key_HH2 = P35;/濕度最高值設(shè)置按鍵sbit beep=P20; /蜂鳴器volatile bit FlagStartRH = 0; /開始溫濕度轉(zhuǎn)換標(biāo)志volatile bit FlagKeyPress = 0; /有鍵按下extern U8 U8FLAG,k; /定義溫濕度傳感器用外部變量extern U8 U8count,U8temp;extern U8 U8T_data_H,U8T_data_L,U8RH_data_H,U8RH_d

44、ata_L,U8checkdata;extern U8 U8T_data_H_temp,U8T_data_L_temp,U8RH_data_H_temp,U8RH_data_L_temp,U8checkdata_temp;extern U8 U8comdata;extern U8 count, count_r;U16 temp;S16 temperature, humidity;S16 idata TH, HH; /溫度上限和濕度上限char * pSave;U8 keyvalue, keyTH1, keyTH2, keyHH1, keyHH2;U16 RHCounter;void Data_

45、Init() /數(shù)據(jù)初始化 RHCounter = 0; keyvalue = 0; Led_qushi = 1; Led_jiangwen = 1; TH = 40; HH = 85; keyTH1 = 1; keyTH2 = 1; keyHH1 = 1; keyHH2 = 1; beep=1; void Timer0_Init() /定時器0初始化ET0 = 1; /允許定時器0中斷TMOD = 1; /定時器工作方式選擇TL0 = 0 x06; /定時器賦予低位初值TH0 = 0 xf8; /定時器賦予高位初值TR0 = 1; /啟動定時器void Timer0_ISR (void) i

46、nterrupt 1 using 0 /定時器0中斷TL0 = 0 x06; /定時器賦予低位初值TH0 = 0 xf8; /定時器賦予高位初值 RHCounter +; /每2秒鐘啟動一次溫濕度轉(zhuǎn)換 if (RHCounter = 1000) FlagStartRH = 1; RHCounter = 0; void Save_Setting() /存入設(shè)定值、 pSave = (char *)&TH; /地址低位對應(yīng)低8位,高位對應(yīng)高8位 wrteeprom(0, *pSave); /存溫度上限值TH低8位 DELAY(500); /延時 pSave +; wrteeprom(1, *pSa

47、ve); /存溫度上限值TH高8位 DELAY(500); pSave = (char *)&HH; wrteeprom(2, *pSave); /存濕度上限值RH低8位 DELAY(500); pSave +; wrteeprom(3, *pSave); /存濕度上限值RH高8位 DELAY(500); void Load_Setting() /載入設(shè)定值、 pSave = (char *)&TH; *pSave+ = rdeeprom(0); *pSave = rdeeprom(1); pSave = (char *)&HH; *pSave+ = rdeeprom(2); *pSave =

48、 rdeeprom(3); if (TH99)|(TH99)|(HH0) HH = 85; void KeyProcess(uint num) switch (num) case 1: if (TH1) TH-; L1602_char(1, 15, TH/10+48); L1602_char(1, 16, TH%10+48); break; case 3: if (HH1) HH-; L1602_char(2, 15, HH/10+48); L1602_char(2, 16, HH%10+48); break; default: break; Save_Setting();/*主函數(shù)*/voi

49、d main() U16 i, j, testnum; EA = 0;Timer0_Init(); /定時器0初始化 Data_Init();EA = 1; L1602_init();L1602_string(1,1, Welcome to T&H );L1602_string(2,1, Control System! );for (i=0;i1000;i+) /延時 for (j=0;j TH) /判斷超溫Led_jiangwen = 0;/二極管亮,超溫報警beep=0;/蜂鳴器響,超溫報警DELAY(500); /延時else Led_jiangwen = 1;beep=1;DELAY(

50、500); if (humidity HH) /判斷潮濕 Led_qushi = 0; /二極管亮,超濕報警 beep=0; /蜂鳴器響,超溫報警 DELAY(500); else Led_qushi = 1;beep=1; DELAY(500); /鍵盤查詢,在彈起時響應(yīng) if (Key_TH1)&(keyTH1=0) FlagKeyPress = 1; keyvalue = 1; else if(Key_TH2)&(keyTH2=0)FlagKeyPress=1;keyvalue = 2; else if(Key_HH1)&(keyHH1=0)FlagKeyPress =1;keyvalu

51、e=3; else if(Key_HH2)&(keyHH2=0)FlagKeyPress=1;keyvalue=4;if (FlagKeyPress = 1) KeyProcess(keyvalue); FlagKeyPress = 0; if (!Key_TH1) keyTH1 = 0;else keyTH1 = 1; if (!Key_TH2) keyTH2 = 0;else keyTH2 = 1; if (!Key_HH1) keyHH1 = 0;else keyHH1 = 1; if (!Key_HH2) keyHH2 = 0;else keyHH2 = 1;A1.2 24C02程序#

52、include 2402.hvoid DELAY(unsigned int t)while(t!=0)t-; void IICStart(void) SCL=0; DELAY(1); SDA=1; SCL=1; DELAY(1); SDA=0; DELAY(1); SCL=0; void IICStop(void) SDA=0;SCL=1; DELAY(1); SDA=1; DELAY(1); SCL=0; void SEND0(void)SDA=0;SCL=1;DELAY(1);SCL=0; void SEND1(void)SDA=1; DELAY(1);SCL=1; DELAY(1);SC

53、L=0; bit Check_Ack(void) unsigned char errtime=250; DELAY(1); SCL=1; DELAY(1); CY=SDA; while(CY) errtime-; CY=SDA; if (!errtime) IICStop(); return 1; DELAY(1); SCL=0; return 0;void Write_byte(unsigned char dat) unsigned char i;for(i=0;i8;i+)if(dati)&0 x80)SEND1();elseSEND0(); unsigned char Read_byte

54、(void)unsigned char i,temp=0; for(i=0;i8;i+) SDA=1; SCL=1; DELAY(1); if(SDA=1)temp=temp1;temp=temp|0 x01; elsetemp=temp1; SCL=0; return temp; unsigned char rdeeprom(unsigned char addr) unsigned char temp=0;bit flag=0;IICStart();Write_byte(0 xa0); Check_Ack();Write_byte(addr);Check_Ack();IICStart();W

55、rite_byte(0 xa1);Check_Ack();temp=Read_byte();SEND1();IICStop(); return temp; void wrteeprom(unsigned char addr,unsigned char dat) IICStart();Write_byte(0 xa0);Check_Ack();Write_byte(addr);Check_Ack();Write_byte(dat);Check_Ack();IICStop(); #ifndef _2402_H_#define _2402_H_#include sbit SCL = P10; /模擬I2C 總線的引腳定義sbit SDA = P11; /定義2402在I2C總線協(xié)議中從機地址void DELAY(unsigned int t); /延時函數(shù)void IICStart(vo

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

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!