【正文】
電路圖25 復(fù)位電路如圖2圖25所示,復(fù)位電路和時(shí)鐘電路是維持單片機(jī)最小系統(tǒng)運(yùn)行的基本模塊。實(shí)際上,中斷服務(wù)程序必須判定是否是TF2 或EXF2激活中斷,標(biāo)志位也必須由軟件清0[3]。定時(shí)器2可以被寄存器T2CON中的TF2和EXF2的或邏輯觸發(fā)。中斷:STC89C52 有6個(gè)中斷源如表22所示:兩個(gè)外部中斷(INT0 和INT1),三個(gè)定時(shí)中斷(定時(shí)器0、2)和一個(gè)串行中斷每個(gè)中斷源都可以通過(guò)置位或清除特殊寄存器IE 中的相關(guān)中斷允許控制位分別使得中斷源有效或無(wú)效。在定時(shí)工作方式中,每個(gè)機(jī)器周期,TL2 寄存器都會(huì)加1。工作模式由T2CON中的相關(guān)位選擇。其工作方式由特殊寄存器T2CON中的C/T2位選擇(如表2所示)。當(dāng)一條指令訪問(wèn)高于7FH 的地址時(shí),尋址方式?jīng)Q定CPU 訪問(wèn)高128 字節(jié)RAM 還是特殊功能寄存器空間。高128 字節(jié)與特殊功能寄存器重疊。對(duì)于89S52,如果EA 接VCC,程序讀寫先從內(nèi)部存儲(chǔ)器(地址為0000H~1FFFH)開(kāi)始,接著從外部尋址,尋址地址為:2000H~FFFFH。XTAL2:振蕩器反相放大器的輸出端。在flash編程期間,EA也接收12伏VPP電壓。為使能從0000H 到FFFFH的外部程序存儲(chǔ)器讀取指令,EA必須接GND。當(dāng)STC89C52從外部程序存儲(chǔ)器執(zhí)行外部代碼時(shí),PSEN在每個(gè)機(jī)器周期被激活兩次,而在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),PSEN將不被激活。這個(gè)ALE 使能標(biāo)志位(地址為8EH的SFR的第0位)的設(shè)置對(duì)微控制器處于外部執(zhí)行模式下無(wú)效。這一位置 “1”,ALE 僅在執(zhí)行MOVX 或MOVC指令時(shí)有效。然而,特別強(qiáng)調(diào),在每次訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),ALE脈沖將會(huì)跳過(guò)。在flash編程時(shí),此引腳(PROG)也用作編程輸入脈沖。DISRTO默認(rèn)狀態(tài)下,復(fù)位高電平有效??撮T狗計(jì)時(shí)完成后,RST 腳輸出96 個(gè)晶振周期的高電平。RST: 復(fù)位輸入。P3口亦作為AT89S52特殊功能(第二功能)使用,如上表21所示。對(duì)P3 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。在flash編程和校驗(yàn)時(shí),P2口也接收高8位地址字節(jié)和一些控制信號(hào)。在這種應(yīng)用中,P2口使用很強(qiáng)的內(nèi)部上拉發(fā)送1。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。P2口:P2口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O口,P2輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL 邏輯電平。此外,()和時(shí)器/計(jì)數(shù)器2的觸發(fā)輸入(),具體如下表1所示。對(duì)P1 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。程序校驗(yàn)時(shí),需要外部上拉電阻。在這種模式下,P0具有內(nèi)部上拉電阻。對(duì)P0端口寫“1”時(shí),引腳用作高阻抗輸入。P0口:P0口是一個(gè)8位漏極開(kāi)路的雙向I/O口。 STC89C52單片機(jī)的引腳說(shuō)明圖23 STC89C52單片機(jī)引腳圖芯片引腳如圖23所示:VCC : 電源。單片機(jī)的主要應(yīng)用領(lǐng)域:(1) 工業(yè)控制(2) 儀器儀表(3) 電信技術(shù)(4) 辦公自動(dòng)化和計(jì)算機(jī)外部設(shè)備(5) 汽車和節(jié)能(6) 制導(dǎo)和導(dǎo)航(7) 商用產(chǎn)品(8) 家用電器因此,在本課題設(shè)計(jì)的溫濕度測(cè)控系統(tǒng)中,采用單片機(jī)來(lái)實(shí)現(xiàn)。(3) 控制功能強(qiáng)。單片機(jī)的主要特點(diǎn)有:(1) 具有優(yōu)異的性能價(jià)格比。正是由于這一原因,國(guó)際上逐漸采用微控制器(MCU)代替單片微型計(jì)算機(jī)(SCM)這一名稱。單片微型計(jì)算機(jī)簡(jiǎn)稱單片機(jī),又稱微控制器,嵌入式微控制器等,屬于第四代電子計(jì)算機(jī)。當(dāng)濕度小于設(shè)定下限時(shí),開(kāi)啟加濕器,當(dāng)濕度高于設(shè)定上限時(shí),關(guān)閉加濕器。第二章 系統(tǒng)硬件電路的設(shè)計(jì)圖21 系統(tǒng)整體框圖圖22 系統(tǒng)整體電路圖本系統(tǒng)由如圖2圖22所示,DHT11溫濕度傳感器采集數(shù)據(jù),STC89C52單片機(jī)進(jìn)行數(shù)據(jù)處理,LCD1602顯示模塊顯示溫濕度、糧庫(kù)窗體狀態(tài)、加熱器和加濕器狀態(tài),通過(guò)矩陣鍵盤進(jìn)行手動(dòng)操作,切換顯示內(nèi)容,開(kāi)關(guān)加熱器和加濕器,設(shè)定溫度濕度上下限。該系統(tǒng)抗干擾能力強(qiáng),具有較高的測(cè)量精度,不需要任何固定網(wǎng)絡(luò)的支持,安裝簡(jiǎn)單方便,性價(jià)比高,可維護(hù)性好。該系統(tǒng)能夠?qū)Z庫(kù)的溫濕度進(jìn)行采集,利用溫濕度傳感器將糧庫(kù)內(nèi)溫濕度的變化,變換成數(shù)字量,其值由單片機(jī)處理,最后由單片機(jī)去控制液晶顯示器,顯示糧庫(kù)內(nèi)的實(shí)際溫濕度,同時(shí)通過(guò)與預(yù)設(shè)量比較,對(duì)大棚內(nèi)的溫度、濕度進(jìn)行自動(dòng)調(diào)節(jié)。為了克服這些缺點(diǎn),本文參考了一種基于單片機(jī)并采用數(shù)字化單總線技術(shù)的溫度測(cè)控系統(tǒng)應(yīng)用于糧庫(kù)的的設(shè)計(jì)方案閉,根據(jù)實(shí)用者提出的問(wèn)題進(jìn)行了改進(jìn),提出了一種新的設(shè)計(jì)方案,在單總線上傳輸數(shù)字信號(hào)。這種溫濕度度采集系統(tǒng)需要在糧庫(kù)內(nèi)布置大量的測(cè)溫電纜,才能把現(xiàn)場(chǎng)傳感器的信號(hào)送到采集卡上,安裝和拆卸繁雜,成本也高。因此,本課題圍繞基于單片機(jī)的糧庫(kù)溫濕度智能控制系統(tǒng)展開(kāi)了應(yīng)用研究工作[1]。單片機(jī)以其功能強(qiáng)、體積小、可靠性高、造價(jià)低和開(kāi)發(fā)周期短等優(yōu)點(diǎn),成為自動(dòng)化和各個(gè)測(cè)控領(lǐng)域中必不可少且廣泛應(yīng)用的器件,尤其在日常生活中也發(fā)揮越來(lái)越大的作用。時(shí)下,家用電器和辦公設(shè)備的智能化、遙控化、模糊控制化已成為世界潮流,而這些高性能無(wú)一不是靠單片機(jī)來(lái)實(shí)現(xiàn)的。今天,我們的生活環(huán)境和工作環(huán)境有越來(lái)越多稱之為單片機(jī)的小電腦在為我們服務(wù)。不可否認(rèn),目前國(guó)內(nèi)部分電子元器件的制造工藝的不成熟和國(guó)外相應(yīng)電子器件價(jià)格過(guò)高共同制約著我國(guó)糧庫(kù)溫濕度智能控制系統(tǒng)的發(fā)展和應(yīng)用。由于糧庫(kù)占地面積大,糧庫(kù)分散,倉(cāng)內(nèi)溫度測(cè)試點(diǎn)多,因而人工監(jiān)測(cè)工作量大,效率低,檢測(cè)周期長(zhǎng),容易漏檢,而且測(cè)量器件損壞率高,測(cè)試精度難以保證。我國(guó)是一個(gè)人口眾多的大國(guó), 科學(xué)儲(chǔ)糧是保障人民糧食供應(yīng), 促進(jìn)社會(huì)安定的大事, 糧庫(kù)溫度的監(jiān)測(cè)在科學(xué)儲(chǔ)糧中占有重要地位。在冶金、鋼鐵、石化、水泥、玻璃、醫(yī)藥等行業(yè),可以說(shuō)幾乎80%的工業(yè)部門都不得不考慮著溫濕度的因素。無(wú)論你生活在哪里,從事什么工作,無(wú)時(shí)無(wú)刻不在與溫度打著交道。摘 要本課題運(yùn)用STC89C52單片機(jī)、DHT11溫濕度傳感器、繼電器和步進(jìn)電機(jī)、LCD1602液晶顯示模塊、光耦等器件,設(shè)計(jì)了報(bào)警電路、步進(jìn)電機(jī)驅(qū)動(dòng)電路、電器開(kāi)關(guān)電路等,實(shí)現(xiàn)了糧庫(kù)溫度、濕度自動(dòng)檢測(cè)與調(diào)節(jié),解決了糧庫(kù)人工控制測(cè)試的溫度及濕度誤差大,且費(fèi)時(shí)費(fèi)力、效率低等問(wèn)題,改善我國(guó)糧食儲(chǔ)備的落后面貌,加快經(jīng)濟(jì)的發(fā)展,帶來(lái)很好的經(jīng)濟(jì)效益和社會(huì)效益,具有非常重要的現(xiàn)實(shí)意義。關(guān)鍵詞: STC89C52 DHT11 繼電器 步進(jìn)電機(jī) 糧庫(kù)ABSTRACT This subject had achieved the temperature and humidity control and alarm system in the grainbin and had designed humidity measurement and alarm circuit, stepper motor circuit and heating circuit by using STC89C52 SCM, DHT11 temperature and humidity sensor,LCD1602 and stepper motor and so on. It solved the problem of low efficiency and measurement errors of temperature and humidity of manual control, it improved the backwardness of grain reserves in China, thereby speeding up economic development and bringing good economic and social benefits.Keywords: STC89C52 DHT11 relays stepper motor grainbin目 錄第一章 緒論 1 1 2第二章 系統(tǒng)硬件電路的設(shè)計(jì) 3 3 4 4 STC89C52單片機(jī)的引腳說(shuō)明 5 STC89C52單片機(jī)最小系統(tǒng) 8 顯示模塊的選擇 9 LCD1602概述 9 LCD1602基本參數(shù)及引腳功能 9 溫濕度傳感器的選擇 13 DHT11數(shù)字溫濕度傳感器概述 13 DHT11數(shù)字溫濕度傳感器性能說(shuō)明 13 DHT11數(shù)字溫濕度傳感器使用注意事項(xiàng) 15 加熱器加濕器開(kāi)關(guān)電路設(shè)計(jì) 17 步進(jìn)電機(jī)驅(qū)動(dòng)電路設(shè)計(jì) 18第三章 溫室大棚控制系統(tǒng)軟件設(shè)計(jì) 19 Keil C 軟件概述 19 溫室大棚控制系統(tǒng)程序設(shè)計(jì) 21 整體系統(tǒng)框圖 21 LCD1602顯示模塊程序設(shè)計(jì) 22 步進(jìn)電機(jī)驅(qū)動(dòng)程序設(shè)計(jì) 24 矩陣鍵盤掃描程序設(shè)計(jì)........................................... 25第四章 調(diào)試中遇到的問(wèn)題 26結(jié) 論 27謝 辭 28參考文獻(xiàn) 29附 錄 30第一章 緒論 在人類的生活環(huán)境中,溫濕度扮演著極其重要的角色。自18世紀(jì)工業(yè)革命以來(lái),工業(yè)發(fā)展與是否能掌握溫濕度有著密切的聯(lián)系。溫濕度不但對(duì)于工業(yè)如此重要,在農(nóng)業(yè)中溫度濕度的監(jiān)測(cè)與控制也有著十分重要的意義。在大多數(shù)糧食存儲(chǔ)企業(yè), 目前仍主要靠人工檢測(cè)糧庫(kù)溫度。國(guó)內(nèi)的糧食溫度檢測(cè)系統(tǒng)與國(guó)外同類產(chǎn)品相比較還有很大差距:系統(tǒng)采用的溫度傳感器的測(cè)量精度和靈敏度較低;溫度傳感器測(cè)得的糧食溫度模擬量信號(hào)轉(zhuǎn)換成數(shù)字量信號(hào)時(shí)產(chǎn)生的電路誤差較大;信號(hào)在長(zhǎng)距離傳輸過(guò)程中因干擾和衰減導(dǎo)致精度降低。因此,鑒于我國(guó)的國(guó)情,設(shè)計(jì)一種適合國(guó)內(nèi)實(shí)際情況并滿足當(dāng)前國(guó)家糧食儲(chǔ)備要求的糧食溫濕度智能控制系統(tǒng),對(duì)改善我國(guó)糧食儲(chǔ)備的落后面貌,加快經(jīng)濟(jì)的發(fā)展,具有非常重要的現(xiàn)實(shí)意義。單片機(jī)在工業(yè)控制、尖端武器、通信設(shè)備、信息處理、家用電器等各測(cè)控領(lǐng)域的應(yīng)用中獨(dú)占鰲頭。采用單片機(jī)來(lái)對(duì)溫濕度進(jìn)行控制,不僅具有控制方便、組態(tài)簡(jiǎn)單和靈活性大等優(yōu)點(diǎn),而且可以大幅度提高被控溫濕度的技術(shù)指標(biāo),從而能夠大大提高產(chǎn)品的質(zhì)量和數(shù)量。因此,單片機(jī)對(duì)溫濕度的控制問(wèn)題是一個(gè)工農(nóng)業(yè)生產(chǎn)中經(jīng)常會(huì)遇到的問(wèn)題。隨著單片機(jī)和傳感技術(shù)的迅速發(fā)展,自動(dòng)檢測(cè)領(lǐng)域發(fā)生了巨大變化,溫室環(huán)境自動(dòng)監(jiān)測(cè)控制方面的研究有了明顯的進(jìn)展,并且必將以其優(yōu)異的性能價(jià)格比,目前應(yīng)用于糧庫(kù)的溫濕度檢測(cè)系統(tǒng)大多采用模擬溫度傳感器、多路模擬開(kāi)關(guān)、A/D轉(zhuǎn)換器及單片機(jī)等組成的傳輸系統(tǒng)。同時(shí)線路上傳送的是模擬信號(hào),易受干擾和損耗,測(cè)量誤差也比較大。本文介紹的溫濕度測(cè)控系統(tǒng)就是基于單總線技術(shù)及其器件組建的。這種設(shè)計(jì)方案實(shí)現(xiàn)了溫濕度實(shí)時(shí)測(cè)量、顯示和控制。這種溫濕度測(cè)控系統(tǒng)可應(yīng)用于糧食存儲(chǔ)的糧庫(kù),實(shí)現(xiàn)對(duì)溫度的實(shí)時(shí)控制,是一種比較智能、經(jīng)濟(jì)的方案,適于大力推廣,以帶來(lái)很好的經(jīng)濟(jì)效益和社會(huì)效益[2]。由步進(jìn)電機(jī)控制糧庫(kù)窗體開(kāi)合程度,當(dāng)溫度小于設(shè)定溫度下限時(shí),糧庫(kù)窗體完全關(guān)閉,并開(kāi)啟加熱器,當(dāng)溫室大于設(shè)定上限時(shí),糧庫(kù)窗體完全開(kāi)啟,并關(guān)閉加熱器,當(dāng)溫度處于設(shè)定上限和設(shè)定下限之間時(shí),根據(jù)溫度適當(dāng)調(diào)節(jié)糧庫(kù)窗體開(kāi)角,可手動(dòng)調(diào)節(jié)加熱器開(kāi)關(guān)。當(dāng)溫濕度越限時(shí),由報(bào)警電路進(jìn)行報(bào)警。它把中央處理器、存儲(chǔ)器、輸入/輸出接口電路以及定時(shí)器計(jì)數(shù)器集成在一塊芯片上,從而具有體積小、功耗低、價(jià)格低廉、抗干擾能力強(qiáng)且可靠性高等特點(diǎn),因此,適合應(yīng)用于工業(yè)過(guò)程控制、智能儀器儀表和測(cè)控系統(tǒng)的前端裝置?!拔⒖刂破鳌备芊从硢纹瑱C(jī)的本質(zhì),但是由于單片機(jī)這個(gè)名稱已經(jīng)為國(guó)內(nèi)大多數(shù)人所接受,所以仍沿用“單片機(jī)”這一名稱。(2) 集成度高、體積小、可靠性高。(4) 低電壓,低功耗。在單片機(jī)選用方面,由于STC89系列單片機(jī)與MCS51系列單片機(jī)兼容,所以,本系統(tǒng)中選用STC89C52單片機(jī)。GND: 地。作為輸出口,每位能驅(qū)動(dòng)8個(gè)TTL邏輯電平。當(dāng)訪問(wèn)外部程序和數(shù)據(jù)存儲(chǔ)器時(shí),P0口也被作為低8位地址/數(shù)據(jù)復(fù)用。在flash編程時(shí),P0口也用來(lái)接收指令字節(jié);在程序校驗(yàn)時(shí),輸出指令字節(jié)。P1口: 是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O 口,p1 輸出緩沖器能驅(qū)動(dòng)4 個(gè)TTL 邏輯電平。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。在flash編程和校驗(yàn)時(shí),P1口接收低8位地址字節(jié)。對(duì)P2端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。在訪問(wèn)外部程序存儲(chǔ)器或用16位地址讀取外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOVX DPTR)時(shí),P2口送出高八位地址。在使用8位地址(如MOVX RI)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),P2口輸出P2鎖存器的內(nèi)容。P3口:P3口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O 口,p2 輸出緩沖器能驅(qū)動(dòng)4 個(gè)TTL 邏輯電平。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。在flash編程和校驗(yàn)時(shí),P3口也接收一些控制信號(hào)。晶振工作時(shí),RST腳持續(xù)2個(gè)機(jī)器周期高電平將使單片機(jī)復(fù)位。特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能無(wú)效。ALE/PROG:地址鎖存控制信號(hào)(ALE)是訪問(wèn)外部程序存儲(chǔ)器時(shí),鎖存低8 位地址的輸出脈沖。在一般情況下,ALE 以晶振六分之一的固定頻率輸出脈沖,可用來(lái)作為外部定時(shí)器或時(shí)鐘使用。如果需要,通過(guò)將地址為8EH的SFR的第0位置 “1”,ALE操作將無(wú)效。否則,ALE 將被微弱拉高。PSEN:外部程序存儲(chǔ)器選通信號(hào)(PSEN)是外部程序存儲(chǔ)器選通信號(hào)。EA/VPP:訪問(wèn)外部程序存儲(chǔ)器控制信號(hào)。為了執(zhí)行內(nèi)部程序指令,EA應(yīng)該接VCC。XTAL1:振蕩器反相放大器和內(nèi)部時(shí)鐘發(fā)生電路的輸入端。程序存儲(chǔ)器:如果EA引腳接地,程序讀取只從外部存儲(chǔ)器開(kāi)始。數(shù)據(jù)存儲(chǔ)器:STC89C52 有256 字節(jié)片內(nèi)數(shù)據(jù)存儲(chǔ)器。也就是說(shuō)高128字節(jié)與特殊功能寄存器有相同的地址,而物理上是分開(kāi)的。直接尋址方式訪問(wèn)特殊功能寄存器(SFR)定時(shí)器2:定時(shí)器2是一個(gè)16位定時(shí)/計(jì)數(shù)器,它既可以做定時(shí)器,又可以做事件計(jì)數(shù)器