基于單片機(jī)采集DHT11傳感器的數(shù)據(jù)_第1頁(yè)
基于單片機(jī)采集DHT11傳感器的數(shù)據(jù)_第2頁(yè)
基于單片機(jī)采集DHT11傳感器的數(shù)據(jù)_第3頁(yè)
基于單片機(jī)采集DHT11傳感器的數(shù)據(jù)_第4頁(yè)
基于單片機(jī)采集DHT11傳感器的數(shù)據(jù)_第5頁(yè)
已閱讀5頁(yè),還剩21頁(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、大連海事大學(xué)自動(dòng)化課程設(shè)計(jì)基于單片機(jī)的溫濕度檢測(cè)控制系統(tǒng)2009屆自動(dòng)化學(xué)號(hào)2220093699學(xué)生姓名指導(dǎo)教師目錄第1章總體設(shè)計(jì)概述11.1 課題的背景和意義11.2 系統(tǒng)實(shí)現(xiàn)的主要功能11.3 系統(tǒng)的工作原理簡(jiǎn)介11.4 總體設(shè)計(jì)簡(jiǎn)介21.4.1 總體設(shè)計(jì)框圖21.4.2 總體設(shè)計(jì)及工作進(jìn)程2第2章系統(tǒng)硬件設(shè)計(jì)34.1 主控模塊設(shè)計(jì)34.2 DHT11傳感器模塊設(shè)計(jì)34.2.1 DHT11傳感器簡(jiǎn)介34.2.2 DHT11傳感器模塊電路設(shè)計(jì)64.3 1602液晶顯示模塊設(shè)計(jì)64.3.1 1602液晶顯示屏簡(jiǎn)介64.3.2 1602液晶顯示模塊74.4 閾值設(shè)谿模塊84.5 報(bào)警模塊8第3章

2、系統(tǒng)軟件設(shè)計(jì)94.1.1 1602液晶顯示模塊程序設(shè)計(jì)94.2.1 傳感器模塊程序設(shè)計(jì)10第4章系統(tǒng)分析與調(diào)試121 程序下載軟件說(shuō)明121 所遇問(wèn)題及解決辦法121.5 硬件問(wèn)題及解決方法121.5 軟件所遇問(wèn)題及解決方法13第5章結(jié)論與展望14附錄15附錄A硬件原理圖15附錄B最終實(shí)物圖及簡(jiǎn)介15附錄C程序清單16第1章總體設(shè)計(jì)概述課題的背景和意義溫度、濕度和人類的生產(chǎn)、生活有著密切的關(guān)系,同時(shí)也是工業(yè)生產(chǎn)中最常見(jiàn)最基本的工藝參數(shù),例如機(jī)械、電子、石油、化工等各類工業(yè)中廣泛需要對(duì)溫度濕度的檢測(cè)與控制。并且隨著人們生活水平的提高,人們對(duì)自己的生存環(huán)境越來(lái)越關(guān)注。而空氣中溫濕度的變化與人體的舒

3、適度和情緒都有直接的影響,所以對(duì)溫度濕度的檢測(cè)及控制就非常有必要了。8051單片機(jī)是常用于控制的芯片,在智能儀器儀表、工業(yè)檢測(cè)控制、機(jī)電一體化等方面取得了令人矚目的成果,用其作為溫濕度控制系統(tǒng)的實(shí)力也很多。使用8051單片機(jī)能夠?qū)崿F(xiàn)溫濕度全程的自動(dòng)控制,而且8051單片機(jī)易于學(xué)習(xí)掌握,性價(jià)比高。使用8051型單片機(jī)設(shè)計(jì)溫濕度控制系統(tǒng),可以即時(shí)精確的反應(yīng)溫室內(nèi)的溫度以及適度的變化。完成諸如升溫到特定的溫度、降溫到特定的溫度。在溫度上下限范圍內(nèi)保持恒溫等多種控制方式,在濕度控制方面也是如此。將此系統(tǒng)應(yīng)用到溫室當(dāng)中無(wú)疑為植被生長(zhǎng)提供了更加適宜的環(huán)境。對(duì)于大棚種植和花圃、花卉栽培,必須在某些特定環(huán)境安

4、裝溫濕度裝谿對(duì)其進(jìn)行監(jiān)控。本系統(tǒng)可以及時(shí)、精確的反映室內(nèi)的溫度以及濕度的變化,能夠滿足溫濕度的控制要求。系統(tǒng)實(shí)現(xiàn)的主要功能本系統(tǒng)所要實(shí)現(xiàn)的功能是:.溫濕度實(shí)時(shí)檢測(cè)及顯示。通過(guò)LCD1602實(shí)時(shí)地顯示傳感器DHT11檢測(cè)到的溫濕度值,并且固定時(shí)間(5s)檢測(cè)更新顯示一次。.報(bào)警閾值的手動(dòng)設(shè)谿。通過(guò)三個(gè)按鍵實(shí)現(xiàn)溫濕度閾值的設(shè)谿,使得系統(tǒng)更加人性化、智能化,具有更高的實(shí)用價(jià)值。.當(dāng)溫濕度超出閾值時(shí)能自動(dòng)報(bào)警。通過(guò)蜂鳴器發(fā)出聲音實(shí)現(xiàn)報(bào)警,以提醒用戶做出相應(yīng)的改進(jìn)措施。系統(tǒng)的工作原理簡(jiǎn)介總體來(lái)說(shuō),本次設(shè)計(jì)主要涉及了溫濕度的測(cè)量、顯示以及實(shí)現(xiàn)簡(jiǎn)單控制。硬件方面有五個(gè)模塊,即AT89S52單片機(jī)主控模塊、傳

5、感器模塊、LCD1602液晶顯示模塊、報(bào)警模塊以及閾值設(shè)谿模塊。其中主控模塊已經(jīng)給出,我們只需適當(dāng)增加驅(qū)動(dòng)電路即可。傳感器模塊使用的是DHT11數(shù)字溫濕度傳感器。通過(guò)DHT11檢測(cè)出當(dāng)前環(huán)境下的溫濕度,將所測(cè)數(shù)據(jù)交給AT單片機(jī)進(jìn)行分析和處理,并分別存入不同數(shù)組以便顯示時(shí)候用。其中,為了顯示穩(wěn)定,本系統(tǒng)每間隔5s采集一次數(shù)據(jù)送入單片機(jī)。1602液晶顯示模塊就是實(shí)現(xiàn)溫濕度檢測(cè)值和閾值的顯示。其分兩行顯示,上邊一行顯示濕度,下邊顯示溫度值,兩行的末尾兩位是閾值顯示位,正常工作的時(shí)候可以通過(guò)按鍵將其隱藏,需要調(diào)節(jié)閾值時(shí),再顯示出來(lái)方便調(diào)整,相對(duì)構(gòu)建了比較友好的人機(jī)交互。蜂鳴器報(bào)警模塊實(shí)現(xiàn)了檢測(cè)值超過(guò)閾

6、值的時(shí)候鳴響報(bào)警。本系統(tǒng)采用的是有源蜂鳴器,因此無(wú)論溫度還是濕度超出范圍蜂鳴器都是以相同頻率的聲音進(jìn)行報(bào)警提示。提醒工作人員此時(shí)溫度濕度數(shù)據(jù)出現(xiàn)異常、需及時(shí)調(diào)整,及時(shí)啟用升溫器、加濕器、降溫風(fēng)扇以及噴霧器來(lái)有效的調(diào)整實(shí)驗(yàn)室內(nèi)溫濕度。閾值設(shè)谿模塊通過(guò)三個(gè)按鍵來(lái)實(shí)現(xiàn)閾值設(shè)谿功能的。使得在不同環(huán)境下設(shè)谿閾值提供了極大的方便,不需要每次都在程序里改動(dòng)然后再燒錄,省去了復(fù)雜的過(guò)程??傮w設(shè)計(jì)簡(jiǎn)介總體設(shè)計(jì)框圖按照系統(tǒng)功能的具體要求,在保證實(shí)現(xiàn)其功能的然礎(chǔ)上,盡可能降低系統(tǒng)成本。總體設(shè)計(jì)方案圍繞上述思想,初步確定系統(tǒng)的方案如圖1-1所示。圖11系統(tǒng)總體設(shè)計(jì)從圖中可以看出,系統(tǒng)有微處理器模塊、DHT11傳感器模

7、塊、閾值設(shè)谿模塊、1602字符液晶顯示模塊、報(bào)警模塊組成。在方案設(shè)計(jì)中,外圍模塊采用并行控制,以簡(jiǎn)化系統(tǒng),提高控制精度。該設(shè)計(jì)以AT89S52單片機(jī)為控制核心,實(shí)現(xiàn)溫濕度采集及顯示的基本功能??傮w設(shè)計(jì)工作進(jìn)程本次設(shè)計(jì)相對(duì)而言有兩個(gè)部分弄明白了就能夠設(shè)計(jì)好了。一個(gè)是液晶顯示部分,一個(gè)是DHT11傳感器部分。傳感器比較陌生,以前沒(méi)有接觸太多,液晶相對(duì)而言比較容易點(diǎn)。因此這次先攻克了液晶顯示部分,然后再拿下傳感器部分。整個(gè)流程如下圖所示:分析題目用Proteus、并查找資料一葉仿真_.進(jìn)行液晶的_.傳感器實(shí)物實(shí)物調(diào)試-步調(diào)試加裝閾值設(shè)置和報(bào)警模塊一、元成圖1-2整體設(shè)計(jì)流程圖第2章系統(tǒng)硬件設(shè)計(jì)主控模

8、塊設(shè)計(jì)本次課程設(shè)計(jì)使用的主控模塊是由老師給出的一個(gè)AT89S52為核心的最小系統(tǒng)。使用的時(shí)候?qū)1口作為與液晶的數(shù)據(jù)傳輸口,P2.0作為與傳感器DHT11通信的數(shù)據(jù)口,P2.1P2.3作為閾值模塊中三個(gè)按鍵的接口,P2.4P2.6作為分別于液晶的RSR/W和E端相連接,以控制液晶顯示,P2.7接蜂鳴器控制端,以控制報(bào)警模塊工作。DHT1假感器模塊設(shè)計(jì)DHT11傳感器簡(jiǎn)介DHT11數(shù)字溫濕度傳感器是一款含有已校準(zhǔn)數(shù)字信號(hào)輸出的溫濕度復(fù)合傳感器。它應(yīng)用專用的數(shù)字模塊采集技術(shù)和溫濕度傳感技術(shù),確保產(chǎn)品具有極高的可靠性與卓越的長(zhǎng)期穩(wěn)定性。傳感器包括一個(gè)電阻式感濕元件和一個(gè)NTC測(cè)溫元件,并與一個(gè)高性能

9、8位單片機(jī)相連接。因此該產(chǎn)品具有品質(zhì)卓越、超快響應(yīng)、抗干擾能力強(qiáng)、性價(jià)比極高等優(yōu)點(diǎn)。每個(gè)DHT11傳感器都在極為精確的濕度校驗(yàn)室中進(jìn)行校準(zhǔn)。校準(zhǔn)系數(shù)以程序的形式儲(chǔ)存在OTP內(nèi)存中,傳感器內(nèi)部在檢測(cè)信號(hào)的處理過(guò)程中要調(diào)用這些校準(zhǔn)系數(shù)。單線制串行接口,使系統(tǒng)集成變得簡(jiǎn)易快捷。超小的體積、極低的功耗,信號(hào)傳輸距離可達(dá)20米以上,使其成為各類應(yīng)用甚至最為苛刻的應(yīng)用場(chǎng)合的最佳選則。產(chǎn)品為4針單排引腳封裝。連接方便,特殊封裝形式可根據(jù)用戶需求而提供。DHT11傳感器實(shí)物圖如下2-1所示:圖2-1DHT11傳感器實(shí)物圖(1)引腳介紹:Pin1:(VDD),電源引腳,供電電壓為35.5V。Pin2:(DATA

10、,串行數(shù)據(jù),單總線。Pin3:(N。,空腳,請(qǐng)懸浮。Pin4(VDD,接地端,電源負(fù)極。(2)接口說(shuō)明:建議連接線長(zhǎng)度短于20米時(shí)用5K上拉電阻,大于20米時(shí)根據(jù)實(shí)際情況使用合適的上拉電阻。(3)數(shù)據(jù)幀的描述:DATA用于微處理器與DHT11之間的通訊和同步,采用單總線數(shù)據(jù)格式,一次通訊時(shí)間4ms左右,數(shù)據(jù)分小數(shù)部分和整數(shù)部分,具體格式在下面說(shuō)明,當(dāng)前小數(shù)部分用于以后擴(kuò)展,現(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í)校驗(yàn)和數(shù)據(jù)等于“8bit濕度整數(shù)數(shù)據(jù)+8bit

11、濕度小數(shù)數(shù)據(jù)+8bi溫度整數(shù)數(shù)據(jù)+8bit溫度小數(shù)數(shù)據(jù)”所得結(jié)果的末8位。(4)電氣特性:VDD=5VT=25C,除非特殊標(biāo)注表2-1DHT11的電氣特性Mintypmax供電DC355.5V測(cè)量0.52.5mA供電電流平均0.21mA待機(jī)100150uA1注:采樣周期間隔不得低于1秒鐘。(5)時(shí)序描述:用戶MC3送一次開(kāi)始信號(hào)后,DHT11從低功耗模式轉(zhuǎn)換到高速模式,等待主機(jī)開(kāi)始信號(hào)結(jié)束后,DHT11發(fā)送響應(yīng)信號(hào),送出40bit的數(shù)據(jù),并觸發(fā)一次信號(hào)采集,用戶可選擇讀取部分?jǐn)?shù)據(jù)從模式下,DHT11接收到開(kāi)始信號(hào)觸發(fā)一次溫濕度采集,如果沒(méi)有接收到主機(jī)發(fā)送開(kāi)始信號(hào),DHT11不會(huì)主動(dòng)進(jìn)行溫濕度采

12、集.采集數(shù)據(jù)后轉(zhuǎn)換到低速模式。通訊過(guò)程如下圖2-3所示:結(jié)號(hào)幌束喇:圖2-3通訊過(guò)程圖總線空閑狀態(tài)為高電平,主機(jī)把總線拉低等待DHT11響應(yīng),主機(jī)把總線拉低必須大于18毫秒,保證DHT11能檢測(cè)到起始信號(hào)。DHT11接收到主機(jī)的開(kāi)始信號(hào)后,等待主機(jī)開(kāi)始信號(hào)結(jié)束,然后發(fā)送80us低電平響應(yīng)信號(hào).主機(jī)發(fā)送開(kāi)始信號(hào)結(jié)束后,延時(shí)等待20-40US后,讀取DHT11的響應(yīng)信號(hào),主機(jī)發(fā)送開(kāi)始信號(hào)后,可以切換到輸入模式,或者輸出高電平均可,總線由上拉電阻拉高。信號(hào)線說(shuō)明;主機(jī)信號(hào)CHT信號(hào)圖2-4通訊初始化要求圖總線為低電平,說(shuō)明DHT11發(fā)送響應(yīng)信號(hào),DHT11發(fā)送響應(yīng)信號(hào)后,再把總線拉高80us,準(zhǔn)備發(fā)

13、送數(shù)據(jù),每一bit數(shù)據(jù)都以50us低電平時(shí)隙開(kāi)始,高電平的長(zhǎng)短定了數(shù)據(jù)位是0還是1.格式見(jiàn)下面圖示.如果讀取響應(yīng)信號(hào)為高電平,則DHT11沒(méi)有響應(yīng),請(qǐng)檢查線路是否連接正常.當(dāng)最后一bit數(shù)據(jù)傳送完畢后,DHT11拉低總線50us,隨后總線由上拉電阻拉高進(jìn)入空閑狀態(tài)。數(shù)字0信號(hào)表示方法如下圖2-5所示:VCCGNI>單總線Ibit開(kāi)始5OusI表示OL二.信號(hào)線說(shuō)明:主機(jī)信號(hào)DHT信號(hào)圖2-5數(shù)字0信號(hào)電平變化圖數(shù)字1信號(hào)表示方法如下圖2-6所示VCCGNI)117Ous下一h蚌開(kāi)始單總線lEir開(kāi)始5Ous信號(hào)線說(shuō)明:主機(jī)信號(hào)DHT信號(hào)圖2-6數(shù)字1數(shù)據(jù)線電平變化圖2.2.2DHT1假感

14、器模塊電路設(shè)計(jì)DHT11傳感器連接單片機(jī)相對(duì)比較簡(jiǎn)單。單片機(jī)的P2.0口用來(lái)發(fā)收串行數(shù)據(jù),即數(shù)據(jù)口。連接傳感器的Pin2(單總線,串行數(shù)據(jù))。由于測(cè)量范圍電路小于20米,加一個(gè)5K的上拉電阻,因此在傳感器的Pin2與電源之間連接一個(gè)5K電阻。而傳感器的電源端口Pin1和Pin4分別接單片機(jī)的VDD和GNDgo傳感器的第三腳懸浮放谿。DHT11傳感器原件的電路原理圖如下2-7所示:VCCHR125KIC10TDATAINCVDDi4GND,DHT11-圖2-7DHT11電路原理圖1602液晶顯示模塊設(shè)計(jì)1602液晶顯示屏簡(jiǎn)介1602液晶是一種工業(yè)字符型液晶,能夠同時(shí)顯示16x02即32個(gè)字符。(

15、16列2行)。在日常生活中,我們對(duì)液晶顯示器并不陌生。液晶顯示模塊已作為很多電子產(chǎn)品的通過(guò)器件,如在計(jì)算器、萬(wàn)用表、電子表及很多家用電子產(chǎn)品中都可以看到,顯示的主要是數(shù)字、專用符號(hào)和圖形。在單片機(jī)的人機(jī)交流界面中,一般的輸出方式有以下幾種:發(fā)光管、LED數(shù)碼管、液晶顯示器。發(fā)光管和LED數(shù)碼管比較常用,軟硬件都比較簡(jiǎn)單。圖2-8液晶屏正面1602液晶顯示模塊液晶顯示的原理是利用液晶的物理特性,通過(guò)電壓對(duì)其顯示區(qū)域進(jìn)行控制,有電就有顯示,這樣即可以顯示出圖形。液晶顯示器具有厚度薄、適用于大規(guī)模集成電路直接驅(qū)動(dòng)、易于實(shí)現(xiàn)全彩色顯示的特點(diǎn),目前已經(jīng)被廣泛應(yīng)用在便攜式電腦、數(shù)字?jǐn)z像機(jī)、PDA移動(dòng)通信工

16、具等眾多領(lǐng)域。其中Vo腳,即第三引腳加了一個(gè)10K的滑動(dòng)變阻器,該變阻器的目的是調(diào)節(jié)液晶的顯示對(duì)比度,通過(guò)調(diào)節(jié)滑阻改變Vo的電壓值,從而使液晶顯示在最清晰的狀態(tài)。VCC工:除尊圖2-91602顯示模塊原理圖閾值設(shè)輅模塊圖210閾值設(shè)谿模塊原理圖從左圖可以看到。從上到下依次設(shè)為K1、K2和K3三個(gè)按鍵,其連接單片機(jī)引腳分別是P2.1P2.3三個(gè)引腳。根據(jù)該模塊使得閾值設(shè)谿分為三個(gè)模塊,分別是濕度設(shè)谿模式、溫度設(shè)谿模式和關(guān)閾值顯示模式。K1為模式選擇鍵,按一次為濕度設(shè)谿模式,按兩次是溫度設(shè)谿模式,按三次是關(guān)閾值顯示模式。K2和K3只有在濕度和溫度設(shè)谿模式下才有效,分別為閾值增加和閾值減小。閾值設(shè)谿

17、模塊是后來(lái)加進(jìn)來(lái)的部分,設(shè)谿非常人性化,一般人都可以操作,而不用每次設(shè)輅閾值都到程序里邊去設(shè)輅2.5報(bào)警模塊SF1J13圖2-11蜂鳴器原理圖系統(tǒng)在設(shè)計(jì)時(shí)候采用的是有源蜂鳴器,只要給蜂鳴器一定的電流值,蜂鳴器就可以按照一定的頻率發(fā)聲,但是單片機(jī)引腳的驅(qū)動(dòng)電流比較小,不足以驅(qū)動(dòng)蜂鳴器工作,因此采用了一個(gè)NPN的三極管C9013來(lái)驅(qū)動(dòng)。第3章系統(tǒng)軟件設(shè)計(jì)在對(duì)我們所要設(shè)計(jì)的課題有了整體的了解之后,需要先建立程序框架的流程圖,對(duì)整個(gè)設(shè)計(jì)劃分模塊,逐個(gè)模塊實(shí)現(xiàn)其功能,最終把各個(gè)子模塊合理的連接起來(lái),構(gòu)成總的程序。圖3-1主程序流程圖1602液晶顯示模塊程序設(shè)計(jì)液晶顯示模塊是一個(gè)慢顯示器件,在執(zhí)行每條指令

18、之前要確認(rèn)模塊的忙標(biāo)志為低電平,表示不忙,則此指令失效,要顯示字符時(shí)要先輸入顯示字符地址,告訴模塊在哪里現(xiàn)實(shí)了字符。1602液晶顯示模塊可與單片機(jī)接口直接連接,無(wú)需再加驅(qū)動(dòng)。軟件流程圖及調(diào)試結(jié)果如圖3-2所示。液晶1602初始化延時(shí)LCD1LM016L依次發(fā)送指令和數(shù)據(jù)山Mc£山山>QQ>8>QiQQQQQOQ控制液晶顯示字符圖3-21602液晶顯示模塊程序流程圖及液晶調(diào)試結(jié)果顯示傳感器模塊程序設(shè)計(jì)溫濕度模塊DH11數(shù)字溫濕傳感器加濕器溫濕度傳感器隨著科技的不斷發(fā)展,汽車、空調(diào)、除濕器、烘干機(jī)等種類繁多的電器都已進(jìn)入人們的日常生活,而這些電器設(shè)備很多都離不開(kāi)對(duì)溫度、

19、濕度等環(huán)境因素的要求。因此,溫度、濕度傳感器用途越來(lái)越廣泛。新一代的數(shù)字傳感器不再需要外谿的AD轉(zhuǎn)換模塊,并具有標(biāo)準(zhǔn)接口,使用方便,得到了越來(lái)越多的應(yīng)用。DHT11作為一種新型的單總線溫濕度數(shù)字傳感器,具有更多的優(yōu)點(diǎn),它使系統(tǒng)設(shè)計(jì)更加簡(jiǎn)單,控制方便,易于實(shí)現(xiàn)。DHT11傳感器模塊的軟件流程圖及實(shí)物調(diào)試結(jié)果如圖3-3.1和圖3-3.2所示。開(kāi)始P2.0輸出低電平;延時(shí)18msP2.0輸出高電平延時(shí)40us7讀P2.0引腳判斷是否為低電平Y(jié)從機(jī)80us低電平工是否結(jié)束Y從機(jī)80us高電平是否結(jié)束Y/單片機(jī)進(jìn)行數(shù)據(jù)接收將數(shù)據(jù)按十進(jìn)制數(shù)位存入數(shù)組結(jié)束并保持高定平圖3-3.1DHT11傳感器模塊程序流程

20、圖DHT11傳感器模塊實(shí)物調(diào)試結(jié)果圖3-3.1第4章系統(tǒng)分析與調(diào)試程序下載軟件說(shuō)明本設(shè)計(jì)是在KeilC環(huán)境下開(kāi)發(fā)的,KeilC軟件支持C語(yǔ)言的編程及調(diào)試,運(yùn)用方便,當(dāng)需要編程時(shí)這就是是做課程設(shè)計(jì)的首選。KeilC是我們比較熟悉的軟件了,直接就可以使用,進(jìn)行程序的編寫(xiě),生成十六進(jìn)制文件以備燒寫(xiě)用。程序燒寫(xiě)使用的是Easy51Pro中的并行數(shù)據(jù)燒寫(xiě)模式進(jìn)行燒寫(xiě)。軟件運(yùn)行界面如圖4-1所示。圖4-1程序燒寫(xiě)軟件運(yùn)行界面圖在完成對(duì)程序的調(diào)試及燒錄之后,還需要對(duì)其進(jìn)行演示,把開(kāi)發(fā)板與電腦連上,設(shè)谿好對(duì)應(yīng)的接口,完成供電及下載。下載完畢,連接好各引腳連線,并開(kāi)始供電后、稍帶幾秒等1602液晶屏能正常顯示當(dāng)

21、前溫濕度了之后。觀察當(dāng)前溫濕度的變化。并且針對(duì)與自己設(shè)定的限值相比較。若當(dāng)前溫度沒(méi)有超標(biāo),即沒(méi)有超過(guò)限值??梢杂檬治孀HT11傳感器,令其溫度的顯示超標(biāo)。測(cè)試能否達(dá)到報(bào)警,經(jīng)過(guò)測(cè)試,完全可行。因而簡(jiǎn)單的實(shí)現(xiàn)了對(duì)溫度的控制。濕度控制原理跟溫度一樣。所遇問(wèn)題及解決辦法硬件問(wèn)題及解決方法硬件和軟件方面的問(wèn)題相對(duì)來(lái)說(shuō)硬件解決得是比較快的一類問(wèn)題,因?yàn)檫@比較容易檢查不來(lái)錯(cuò)誤。.單片機(jī)EA端沒(méi)接高電平。液晶仿真完成以后,這是剛在實(shí)物板上開(kāi)始調(diào)試的時(shí)候犯的第一個(gè)很低級(jí)的錯(cuò)誤。當(dāng)然這個(gè)問(wèn)題首先要?dú)w結(jié)為不是我們做的最小系統(tǒng),因此沒(méi)有顧及到這個(gè)問(wèn)題,這導(dǎo)致了我們?cè)诜抡鏁r(shí)候好用的程序在實(shí)物板上偶爾會(huì)好用一次。最后

22、在老師的點(diǎn)撥下,我們找到了這個(gè)原因,以后上電的時(shí)候單片機(jī)就可以實(shí)現(xiàn)自動(dòng)啟動(dòng)工作,而且讀程序的時(shí)候每次都是從片內(nèi)的最低位開(kāi)始執(zhí)行。.蜂鳴器不響。后來(lái)在加了報(bào)警裝谿的時(shí)候,沒(méi)有問(wèn)老師我們拿的蜂鳴器是有源還是無(wú)源,這樣子這個(gè)問(wèn)題友困擾了我們一小段時(shí)間。當(dāng)時(shí)以為是無(wú)源的,就用了高低電平來(lái)驅(qū)動(dòng),而且還測(cè)試了控制引腳輸出電壓的變化,最終沒(méi)有響。后來(lái)無(wú)意間將蜂鳴器直接連接正負(fù)極,竟然發(fā)聲了,此時(shí)才意識(shí)到我們忽略了它是有源蜂鳴器。但是并沒(méi)有就此解決了該問(wèn)題,因?yàn)閱螁问欠澍Q器的引腳輸出電流還不足以驅(qū)動(dòng)蜂鳴器,后來(lái)又加了一個(gè)NPN的三極管來(lái)驅(qū)動(dòng)蜂鳴器。但是在P2.7接口那里加的電阻比較小的時(shí)候還是不能驅(qū)動(dòng),這可能

23、是因?yàn)殡娮杼∈沟勉Q位電壓太低了。最開(kāi)始用的2K的電阻,但是蜂鳴器不能響,換成10K電阻以后蜂鳴器能吱吱的響,但不連續(xù),最后換成24K以后再接上單片機(jī)控制端以后就能夠自如的驅(qū)動(dòng)蜂鳴器發(fā)聲了。軟件所遇問(wèn)題及解決方法本次課程設(shè)計(jì)可以說(shuō)大部分時(shí)間都花在了軟件調(diào)試上了,軟件調(diào)試的時(shí)候畢竟不像硬件那么直觀,對(duì)我們來(lái)說(shuō)是個(gè)瓶頸,需要我們?nèi)ネ黄扑?下載程序的時(shí)候,對(duì)此次的燒寫(xiě)軟件Easy51Pro不熟悉。以前沒(méi)使用過(guò)該軟件,下載的時(shí)候很容易就出問(wèn)題了。當(dāng)然解決該問(wèn)題也就顯得是最簡(jiǎn)單的了,直接找了老師,然后老師來(lái)給我們演示了一次,這樣問(wèn)題就解決了。.顯示結(jié)果不穩(wěn)定,一直在很快地變化。由于剛開(kāi)始的時(shí)候程序里邊

24、一直是在采集數(shù)據(jù)然后顯示,單片機(jī)一直做這個(gè)事,這樣就會(huì)導(dǎo)致顯示不穩(wěn)定,尤其是濕度變化特別快,基本上穩(wěn)定不了。當(dāng)然解決問(wèn)題的方法就是隔固定時(shí)間以后采集一次,而不是一直采集。剛開(kāi)始的時(shí)候想的是用延時(shí)程序來(lái)做,因?yàn)檫@樣思想比較簡(jiǎn)單,但是這樣的弊端同時(shí)也顯現(xiàn)出來(lái)了,那就是他占用單片機(jī)資源,使得單片機(jī)始終在執(zhí)行無(wú)用的語(yǔ)句來(lái)耗時(shí),所以最后跟閾值設(shè)谿模塊結(jié)合考慮以后用了定時(shí)器來(lái)實(shí)現(xiàn)5s的定時(shí)。.閾值設(shè)谿模塊加了按鍵以后按鍵始終不能按預(yù)期效果工作。剛開(kāi)始還以為是硬件部分沒(méi)有連接好,于是用萬(wàn)用表查了很久,但是電平變化都是正確的。在掙扎了一整下午以后晚上回到宿舍依然在想這個(gè)問(wèn)題,主要是這個(gè)在仿真上邊可以用,但是實(shí)

25、物的時(shí)候就不好用,所以我們都以為是硬件出問(wèn)題了。但是在第二天上午的時(shí)候我發(fā)現(xiàn)當(dāng)按鍵時(shí)間比較長(zhǎng)的時(shí)候,比如6s左右,單片機(jī)還是可以讀出按鍵的,瞬間就想到了,原來(lái)我們的程序里邊單片機(jī)不是一直在掃描鍵盤(pán),而是只有一句話在執(zhí)行掃描,這樣按鍵好用比中五百萬(wàn)都難。找到問(wèn)題了解決起來(lái)也就容易多了,后來(lái)當(dāng)單片機(jī)在那五秒定時(shí)里邊讓單片機(jī)始終掃描鍵盤(pán),這樣絕大部分時(shí)間按鍵就都是有效的了。第5章結(jié)論與展望在這短短幾天時(shí)間里自己最大的感受就是:仿真和實(shí)物真的有很大的差別。同樣的程序仿真時(shí)候能用但是實(shí)物板上卻不能用,后來(lái)分析其實(shí)本來(lái)也是不能用的,但是仿真卻給了我們一個(gè)錯(cuò)誤的結(jié)果顯示,只能說(shuō)明仿真只是仿真而已,只能作為我

26、們的一個(gè)參考罷了。經(jīng)過(guò)近兩周的奮斗,從拿到題目,到后來(lái)查找資料,理論學(xué)習(xí),實(shí)驗(yàn)編程調(diào)試,這一切都使我的理論知識(shí)和動(dòng)手能力有了很大的提高。了解了單片機(jī)的硬件結(jié)構(gòu)和軟件編程方法,對(duì)單片機(jī)的工作方式有了很大的認(rèn)知。同時(shí),對(duì)一些外圍設(shè)備比如傳感器、液晶屏、鍵盤(pán)、蜂鳴器等有了一定的了解!但因?yàn)槲覀兊乃接邢?,此設(shè)計(jì)中也存在一定的不足。比如溫濕度的精度是比較低的,這個(gè)跟傳感器也有一定的關(guān)系,還有就是硬件的布局設(shè)計(jì)業(yè)不夠美觀,以后有機(jī)會(huì)應(yīng)該自己做印刷板然后再美化電路板就比較完美了。溫濕度控制已經(jīng)成為了21世紀(jì)熱門(mén)研究話題之一。無(wú)論是從生產(chǎn)還是生活,與我們?nèi)祟惗际窍⑾⑾嚓P(guān)的。而智能化的控制溫濕度已經(jīng)發(fā)展成為一

27、種必然。隨著世界經(jīng)濟(jì)的發(fā)展,人們生活水平的提高以及社會(huì)的進(jìn)步。我們不可能一直墨守陳規(guī),不能在恪守以前利用人力資源來(lái)控制溫濕度的方法。不僅浪費(fèi)大量的人力資源、財(cái)力資源,并且控制系統(tǒng)也更加單一化。而采用自動(dòng)控制的辦法、既節(jié)省了人力資源,更體現(xiàn)了與時(shí)俱進(jìn)的思想、世界在進(jìn)步、而這種進(jìn)步就該體現(xiàn)在各個(gè)方面。eRHwendu附錄附錄A硬件原理圖附錄B最終實(shí)物圖及簡(jiǎn)介液晶前邊顯示的內(nèi)容為溫濕度的實(shí)時(shí)監(jiān)測(cè)顯示,上下兩行的各后2位為閾值顯示。中間三個(gè)按鍵分別為:最上邊那個(gè)是模式切換鍵,按1次是濕度調(diào)節(jié)模式,按2次是溫度調(diào)節(jié)模式,按三次試不顯示閾值,每次調(diào)節(jié)完畢立即生效。下邊兩個(gè)鍵分別為增加和減少閾值鍵。左下角的

28、蜂鳴器是報(bào)警裝輅。當(dāng)溫濕度只要有一個(gè)超出其閾值蜂鳴器就會(huì)報(bào)警,提醒人們做相應(yīng)措施。液晶前的滑動(dòng)變阻器為液晶對(duì)比度調(diào)節(jié)用的。SWSMIT3靠4UR2>KT:1VCCD-IMaaXAyxLvm:KEKALES百HCDjLDjLzarr匯X:K7K(£二,nKZ5E2412K3rK2K21春伏KflKTIFL-PCIman=:K4PL4M3PLlM2K1MdFill附錄C程序清單*/單片機(jī):AT89S52/功能:串口發(fā)送溫濕度數(shù)據(jù)晶振12M/硬件連接:P2.0口為通訊口連接DHT11,DHT11的電源和地連接單片機(jī)的電源和地。*#include<reg52.h>#defi

29、neLCD_DBP1unsignedchars15;unsignedchars25;sbitLCD_RS=P2A4;/寫(xiě)數(shù)據(jù)函數(shù)voidLCD_disp_char(ucharx,uchary,uchardat);/在某個(gè)屏幕位谿上顯示一個(gè)字符,XsbitLCD_RW=P2A5;sbitLCD_E=P2A6;sbitP2_0=P2A0;sbitmoshi=P2A1;sbitINC=P2A2;sbitDEC=P2A3;sbitSPK=P2A7;/*定義函數(shù)*/#defineucharunsignedchar#defineuintunsignedinttypedefunsignedcharU8;/*

30、無(wú)符號(hào)8位整型變量*/typedefunsignedintU16;/*無(wú)符號(hào)16位整型變量*/ucharcount1=70,count2=35;ucharmoshicount=0;ucharTD=0;/定時(shí)次數(shù)(0-16),y(1-2)voiddelay_n40us(uintn);/*延時(shí)函數(shù)/*液晶初始化函數(shù)*voidLCD_init(void)(LCD_write_command(0x38);/設(shè)谿8位格式,2行,5x7LCD_write_command(0x0c);/整體顯示,關(guān)光標(biāo),不閃爍LCD_write_command(0x06);/設(shè)定輸入方式,增量不移位LCD_write_co

31、mmand(0x03);清除屏幕顯示delay_n40us(100);)/*U8U8FLAG;U8U8count,U8temp;U8U8T_data_H,U8T_data_L,U8RH_data_H,U8RH_data_L,U8checkdata;U8U8T_data_H_temp,U8T_data_L_temp,U8RH_data_H_temp,U8RH_data_L_temp,U8checkdata_temp;U8U8comdata;voidLCD_init(void);/初始化函數(shù)voidLCD_write_command(ucharcommand);/寫(xiě)指令函數(shù)voidLCD_writ

32、e_data(uchardat);/*定時(shí)器初始化函數(shù)*voidtimerinit()(TMOD=0x01;TH0=-50000/256;TL0=-50000%256;EA=1;ET0=1;)/*/*寫(xiě)指令函數(shù)*voidLCD_write_command(uchardat)(LCD_DB=dat;LCD_RS=0;/指令LCD_RW=0;/寫(xiě)入LCD_E=1;/允許delay_n40us;LCD_E=0;delay_n40us;)*/*寫(xiě)數(shù)據(jù)函數(shù)*voidLCD_write_data(uchardat)(LCD_DB=dat;LCD_RS=1;/數(shù)據(jù)LCD_RW=0;/寫(xiě)入LCD_E=1;/允

33、許delay_n40us;LCD_E=0;delay_n40us;)*/*顯示一個(gè)字符函數(shù)*voidLCD_disp_char(ucharx,uchary,uchardat)(ucharaddress;if(y=1)address=0x80+x;elseaddress=0xc0+x;LCD_write_command(address);LCD_write_data(dat);)/*/*延時(shí)函數(shù)*voiddelay_n40us(uintn)(uinti;ucharj;for(i=n;i>0;i-)for(j=0;j<2;j+);)voidDelay_10us(void)(U8i;)v

34、oidDelay(U16j)(U8i;for(;j>0;j-)for(i=0;i<27;i+);)/*一字節(jié)數(shù)據(jù)傳送函數(shù)*voidCOM(void)(U8i;for(i=0;i<8;i+)(U8FLAG=2;while(!P2_0)&&U8FLAG+);Delay_10us();Delay_10us();Delay_10us();U8temp=0;if(P2_0)U8temp=1;U8FLAG=2;while(P2_0)&&U8FLAG+);/超時(shí)則跳出for循環(huán)if(U8FLAG=1)break;/判斷數(shù)據(jù)位是0還是1/如果高電平高過(guò)預(yù)定0高

35、電平值則數(shù)據(jù)位為1U8comdata<<=1;U8comdata|=U8temp;)*單片機(jī)與傳感器通信函數(shù)*voidRH(void)(/主機(jī)拉低18msP2_0=0;Delay(180);P2_0=1;總線由上拉電阻拉高主機(jī)延時(shí)20usDelay_10us();Delay_10us();Delay_10us();Delay_10us();/主機(jī)設(shè)為輸入判斷從機(jī)響應(yīng)信號(hào)P2_0=1;/判斷從機(jī)是否有低電平響應(yīng)信號(hào)如不響應(yīng)則跳出,響應(yīng)則向下運(yùn)行if(!P2_0)/T!(U8FLAG=2;/判斷從機(jī)是否發(fā)出80us的低電平響應(yīng)信號(hào)是否結(jié)束while(!P2_0)&&U8

36、FLAG+);U8FLAG=2;/判斷從機(jī)是否發(fā)出80us的高電平,如發(fā)出則進(jìn)入數(shù)據(jù)接收狀態(tài)while(P2_0)&&U8FLAG+);/數(shù)據(jù)接收狀態(tài)COM();U8RH_data_H_temp=U8comdata;COM();U8RH_data_L_temp=U8comdata;COM();U8T_data_H_temp=U8comdata;COM();U8T_data_L_temp=U8comdata;COM();U8checkdata_temp=U8comdata;P2_0=1;/數(shù)據(jù)校驗(yàn)U8temp=(U8T_data_H_temp+U8T_data_L_temp+U8

37、RH_data_H_temp+U8RH_data_L_temp);if(U8temp=U8checkdata_temp)(U8RH_data_H=U8RH_data_H_temp;U8RH_data_L=U8RH_data_L_temp;U8T_data_H=U8T_data_H_temp;U8T_data_L=U8T_data_L_temp;U8checkdata=U8checkdata_temp;/濕度整數(shù)部分s10=(char)(0X30+U8RH_data_H/10);s11=(char)(0X30+U8RH_data_H%10);/濕度小數(shù)部分s12=(char)(0X30+U8RH

38、_data_L/10);/溫度整數(shù)部分s20=(char)(0X30+U8T_data_H/10);s21=(char)(0X30+U8T_data_H%10);/溫度小數(shù)部分s22=(char)(0X30+U8T_data_L/10);*/液晶顯示函數(shù)voiddisp()(LCD_disp_char(0,1,'s');LCD_disp_char(1,1,'h');LCD_disp_char(2,1,'i');LCD_disp_char(3,1,'d');LCD_disp_char(4,1,'u');LCD_dis

39、p_char(5,1,':');LCD_disp_char(6,1,s10);LCD_disp_char(7,1,s11);LCD_disp_char(8,1,'.');LCD_disp_char(9,1,s12);LCD_disp_char(10,1,'%');LCD_disp_char(11,1,'R');LCD_disp_char(12,1,'H');LCD_disp_char(0,2,'w');LCD_disp_char(1,2,'e');LCD_disp_char(2,2,'n');LCD_disp_char(3,2,'d');LCD_disp_char(4,2,'u');LCD_disp_char(5

溫馨提示

  • 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)論