糧倉溫濕度檢測系統(tǒng)的設計(共47頁)_第1頁
糧倉溫濕度檢測系統(tǒng)的設計(共47頁)_第2頁
糧倉溫濕度檢測系統(tǒng)的設計(共47頁)_第3頁
糧倉溫濕度檢測系統(tǒng)的設計(共47頁)_第4頁
糧倉溫濕度檢測系統(tǒng)的設計(共47頁)_第5頁
已閱讀5頁,還剩42頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)石家莊鐵道大學物聯(lián)網原理及應用課程作業(yè) 2016 年 春 季學期學 院: 電氣與電子工程學院 專 業(yè): 電子信息工程 課 程 名 稱: 物聯(lián)網原理及應用 學 生 姓 名: 劉世超 學 號: 指 導 教 師: 王偉明 完 成 日 期: 2016.05.20 精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)摘要溫濕度控制已成為當今社會研究的熱門項目。是工農業(yè)生產過程中必須考慮的因素。作為最常見的被控參數(shù)。溫度和濕度已經不再是相互獨立的物理量,而應在系統(tǒng)中綜合考慮。廣泛應用于實驗室、大棚、花圃、糧倉乃至土壤等各個領域。而傳統(tǒng)的溫濕度控制則利用濕度表、毛發(fā)濕度表、雙

2、金屬式測量計和濕度試紙等測試器材。通過人工進行檢測。對不符合溫度和濕度要求的庫房進行通風、降溫、去濕等操作。這種人工測試方法費時費力,效率低。切隨機性較大。誤差大。因此就需要一種造價低廉、使用方便且計算精確的溫濕度控制儀器。利用單片機對溫、濕度控制,具有控溫、濕精度高、功能強、體積小、價格低,簡單靈活等優(yōu)點,很好的滿足了工藝要求。本文通過使用 STC89C52 單片機、DHT11 傳感器模塊、1602 液晶顯示屏模塊以及報警模塊。簡單明了的實現(xiàn)的可提要求。DHT11 數(shù)字溫濕度傳感器把采集到的溫濕度數(shù)據(jù)傳給單片機。經過單片機的處理。準確的顯示到液晶屏上。并對溫濕度設置上下限。越限報警。關鍵詞:

3、單片機DHT11 傳感器1602 液晶顯示屏STC89C52報警精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè) 目錄23367891578 4精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)第 1 章緒論1.1課題研究的背景由古至今,糧倉糧食的存儲是否得當對國家的經濟能否正常合理的運行有很大的影響。但是在以前的經濟和科技水平有限,所以我國糧食的存儲的環(huán)境很差,管理落后。糧庫管理的重點之一就是要合理布置測溫點,經常檢查溫度變化,以便及時發(fā)現(xiàn)糧食的發(fā)熱點,減少糧食的損失。然而,糧堆的熱傳遞又是那樣的緩慢,使人感知極差,需要管理人員經常進入悶熱、嗆人的倉房內觀察溫、濕度,不斷進行翻倉、通風,這種繁重的體力勞動

4、,不僅對人體有極大地傷害,而且不科學、不及時。所以,糧食蟲蛀、霉變的情況時有發(fā)生。1.2課題研究的意義8051 單片機是常用于控制的芯片,在智能儀器儀表、工業(yè)檢測控制、機電一體化等方面取得了令人矚目的成果,用其作為溫濕度控制系統(tǒng)的實力也很多。使用8051 單片機能夠實現(xiàn)溫濕度全程的自動控制,而且 8051 單片機易于學習掌握,性價比高。使用 8051 型單片機設計溫濕度控制系統(tǒng),可以即時精確的反應溫室內的溫度以及適度的變化。完成諸如升溫到特定的溫度、降溫到特定的溫度。在溫度上下限范圍內保持恒溫等多種控制方式,在濕度控制方面也是如此。將此系統(tǒng)應用到溫室當中無疑為植被生長提供了更加適宜的環(huán)境。對于

5、糧倉糧食,必須在某些特定環(huán)境安裝溫濕度裝置對其進行監(jiān)控。本系統(tǒng)可以及時、精確的反映室內的溫度以及濕度的變化,能夠滿足溫濕度的控制要求。1.3課題研究的主要內容本系統(tǒng)所要完成的任務是:1.3.1 人性化的設計。界限溫度值及濕度值能夠由用戶根據(jù)不同植被的各種生長需求由鍵盤輸入并通過顯示器顯示。1.3.2 能夠實時、準確的顯示采樣溫度值與濕度值。1.3.3 通過采集溫度及濕度值,準確的判斷標準值與當前值之間的差異,及時精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)的啟動報警裝置(警報提示音提示音)進行報警,并采取相應的方案。1.3.4 能夠根據(jù)環(huán)境在不同時間段內對溫濕度的不同要求,用戶可隨機人為的更改溫

6、度及濕度值,以滿足用戶不同的需求。1.4課題研究的工作原理該電路的最關鍵部分是關于溫度和濕度的采集以及檢測、顯示。主控電路芯片采用學校統(tǒng)一制作的 STC89C52 單片機學習板。STC 單片機執(zhí)行指令的速度很快,對工作環(huán)境的要求比較低;傳感器模塊我選擇了 DHT11 數(shù)字溫濕度傳感器。告別了以前的單獨測量溫度以及濕度的方式,更簡潔,更方便。連接好外圍電路。通過DHT11 準確的檢測出當前環(huán)境下的溫濕度,并且將所測數(shù)據(jù)交給 STC 單片機進行分析和處理。再將所得數(shù)據(jù)有單片機發(fā)送給 HJ1602A 液晶屏。成功完成顯示??刂颇K采用蜂鳴器報警方式。預先設置好所需溫度和濕度的限值(一個上限一個下限)

7、 ,將蜂鳴器接入電路。通過溫度和濕度的上下限值控制蜂鳴器的報警。若逾越限值,實現(xiàn)蜂鳴器鳴響。提醒工作人員此時溫度濕度數(shù)據(jù)出現(xiàn)異常、需及時調整,及時啟用升溫器、加濕器、降溫風扇以及噴霧器來有效的調整實驗室內溫濕度。從而簡單實現(xiàn)了控制??傮w來說,本次設計主要涉及了溫濕度的測量以及實現(xiàn)簡單控制。硬件方面有四個模塊,即傳感器模塊、STC80C52 單片機主控模塊、LCD1602 液晶顯示模塊以及報警模塊,從硬件制作方面。也相對簡便。原理清晰、連線方便,不需要額外的焊接等技術。給硬件的制作帶來了極大的便捷。精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)第 2 章系統(tǒng)總體方案設計2.1功能要求1、通過數(shù)字溫濕

8、度傳感器 DHT11 采集溫濕度數(shù)據(jù),即時傳輸給單片機;2、單片機將收到的信號進行分析和處理,將采集到時溫濕度實時數(shù)據(jù)送給1602 液晶顯示屏;3、通過 1602LCD 液晶屏完成溫濕度的數(shù)據(jù)顯示;4、給定溫度濕度上下限數(shù)值,設置不同的溫濕度,接入蜂鳴器,實現(xiàn)越限報警;5.當溫度達到上限值時繼電器工作模擬降溫(風扇轉動) ,當濕度達到上限值時繼電器工作模擬去濕。2.2設計思路電路總體上分為溫濕度采集部分、中央處理器、顯示模塊以及報警模塊部分。以 STC89C52 單片機最小系統(tǒng)作為核心控制電路,控制 DHT11 傳感器采集的溫濕度的轉換,控制 1602 液晶屏的顯示,以及蜂鳴器的報警。具體顯示

9、內容及方式由軟件來完成。采集溫濕度方面由 DHT11 傳感器來完成,它是一個數(shù)字溫濕度傳感器、內置模數(shù)轉換,可以直接與單片機相連接。而 1602 液晶屏是插針式,也可以直接與單片機相連接。因此不需要手動焊接等復雜的過程。具體步驟是:按照原理圖將傳感器、1602 液晶顯示屏分別接入單片機。通過 DHT11 傳感器采集當前的溫濕度值、再經單片機,將處理后的數(shù)據(jù)傳送到液晶屏上顯示出來。并且接入蜂鳴器。設置溫度的上限值。實現(xiàn)越限報警并控制風扇啟動。2.3 總體設計框圖按照系統(tǒng)功能的具體要求,在保證實現(xiàn)其功能的然礎上,盡可能降低系統(tǒng)成本。總體設計方案圍繞上述思想,初步確定系統(tǒng)的方案如圖 2-1 所示。精

10、選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)圖 2-1從圖中可以看出,系統(tǒng)有微處理器模塊、1602 字符液晶顯示模塊、DHT11 傳感器模塊和報警模塊組成。在方案設計中,遵循簡潔至上的原則,因此所有的外圍模塊采用串行方式與微處理器模塊接口。該設計以 STC89C51 系列單片機為控制核心,實現(xiàn)溫濕度采集及顯示的基本功能。在設計系統(tǒng)時,為了更好地采用模塊化設計法,分步的設計各個單元功能模塊,系統(tǒng)的硬件部分可以分為傳感器的使用、單片機控制、1602 液晶顯示和實現(xiàn)報警四大部分。P2.0 STC89C52 主控模塊P2.2P2.4 P0.7DHT11 傳感器模塊1602 字符液晶模塊報警模塊傳感器與之相

11、連1602 字符液晶與之相連精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)第 3 章系統(tǒng)硬件設計3.1概述此次的畢業(yè)設計主要由 4 個大的模塊構成,分別是主控模塊、傳感器模塊、LCD液晶顯示模塊及報警模塊,其中主控模塊是此次畢業(yè)設計的核心模塊,主要是指STC89C52 芯片,它控制整個系統(tǒng)的運行,利用其各個口分別控制其他模塊,使其他模塊能夠成為一個整體,實現(xiàn)功能的需要;報警模塊主要指將蜂鳴器接入單片機電路。通過對時時溫度的檢測,并給定所需要的溫度區(qū)間,即給定上下限值,實現(xiàn)越限報警;傳感器模塊用于實驗室實時溫濕度的檢測、由于 DHT11 的數(shù)字一體性,集成了模數(shù)轉換等模塊。直接接單片機即可。LCD

12、液晶顯示模塊同樣接入單片機,完成對單片機處理后的數(shù)據(jù)進行顯示。3.2主控模塊設計3.2.1STC89C52 芯片的簡介功能特性:STC89C52 是一種低功耗、高性能 CMOS8 位微控制器,具有 8K 在系統(tǒng)可編程 Flash 存儲器。與工業(yè) 80C51 產品指令和引腳完全兼容。片上 Flash 允許程序存儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的 8 位 CPU和在系統(tǒng)可編程 Flash,使得 STC89C52 為眾多嵌入式控制應用系統(tǒng)提供高靈活、超有效的解決方案,如圖 3-1 所示。STC89C52 具有以下標準功能: 8k 字節(jié)Flash,256 字節(jié) RAM,32 位

13、 I/O 口線,看門狗定時器,2 個數(shù)據(jù)指針,三個 16 位定時器/計數(shù)器,一個 6 向量 2 級中斷結構,全雙工串行口,片內晶振及時鐘電路。另外,AT89S52 可降至 0Hz 靜態(tài)邏輯操作,支持 2 種軟件可選擇節(jié)電模式??臻e模式下,CPU 停止工作,允許 RAM、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護方式下,RAM 內容被保存,振蕩器被凍結,單片機一切工作停止,直到下一個中斷或硬件復位為止。主要性能:與 MCS51 單片機產品兼容、8K 字節(jié)在系統(tǒng)可編程 Flash 存儲器、1000 次擦寫周期、全靜態(tài)操作:0Hz33Hz 、三級加密程序存儲器 、32 個可編程I/O 口線 、三個

14、 16 位定時器/計數(shù)器八個中斷源、全雙工 UART 串行通道、低功耗空閑和掉電模式、掉電后中斷可喚醒、看門狗定時器、雙數(shù)據(jù)指針、掉電標識符。精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)圖 3-1STC89C52 芯片管腳說明:VCC:供電電壓。GND:接地。P0 口:P0 口為一個 8 位漏級開路雙向 I/O 口,每腳可吸收 8TTL 門電流。當 P1口的管腳第一次寫 1 時,被定義為高阻輸入。P0 能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在 FIASH 編程時,P0 口作為原碼輸入口,當FIASH 進行校驗時,P0 輸出原碼,此時 P0 外部必須被拉高。P1 口:P1

15、口是一個內部提供上拉電阻的 8 位雙向 I/O 口,P1 口緩沖器能接收輸出 4TTL 門電流。P1 口管腳寫入 1 后,被內部上拉為高,可用作輸入,P1 口被外部下拉為低電平時,將輸出電流,這是由于內部上拉的緣故。在 FLASH 編程和校驗時,P1 口作為第八位地址接收。P2 口:P2 口為一個內部上拉電阻的 8 位雙向 I/O 口,P2 口緩沖器可接收,輸出 4 個 TTL 門電流,當 P2 口被寫“1”時,其管腳被內部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2 口的管腳被外部拉低,將輸出電流。這是由于內部上拉的緣故。P2 口當用于外部程序存儲器或 16 位地址外部數(shù)據(jù)存儲器進行存取

16、時,P2口輸出地址的高八位。在給出地址“1”時,它利用內部上拉優(yōu)勢,當對外部八位地址數(shù)據(jù)存儲器進行讀寫時,P2 口輸出其特殊功能寄存器的內容。P2 口在 FLASH 編程和校驗時接收高八位地址信號和控制信號。精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)P3 口:P3 口管腳是 8 個帶內部上拉電阻的雙向 I/O 口,可接收輸出 4 個 TTL 門電流。當 P3 口寫入“1”后,它們被內部上拉為高電平,并用作輸入。作為輸由于外部下拉為低電平,P3 口將輸出電流(ILL)這是由于上拉的緣故。P3 口也可作為 STC89C52 的一些特殊功能口,如下表所示:管腳備選功能:表 3-1P3 口的第二功能P

17、3.0RXD(串行輸入口)P3.1TXD(串行輸出口)P3.2/INT0(外部中斷 0)P3.3/INT1(外部中斷 1)P3.4T0(記時器 0 外部輸入)P3.5T1(記時器 1 外部輸入)P3.6/WR(外部數(shù)據(jù)存儲器寫選通)P3.7/RD(外部數(shù)據(jù)存儲器讀選通)P3 口同時為閃爍編程和編程校驗接收一些控制信號。RST:復位輸入。當振蕩器復位器件時,要保持 RST 腳兩個機器周期的高電平時間。ALE/PROG:當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在 FLASH 編程期間,此引腳用于輸入編程脈沖。在平時,ALE 端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器

18、頻率的 1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作外部數(shù)據(jù)存儲器時,將跳過一個 ALE 脈沖。如想禁止 ALE 的輸出可在 SFR8EH 地址上置 0。此時, ALE 只有在執(zhí)行MOVX,MOVC 指令是 ALE 才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài) ALE 禁止,置位無效。/PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/PSEN 有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/PSEN 信號將不出現(xiàn)。/EA/VPP:當/EA 保持低電平時,則在此期間外部程序存儲器(0000H-FFFFH) ,不管是否

19、有內部程序存儲器。注意加密方式 1 時,/EA 將內部鎖定為 RESET;當/EA端保持高電平時,此間內部程序存儲器。在 FLASH 編程期間,此引腳也用于施加12V 編程電源(VPP) 。XTAL1:反向振蕩放大器的輸入及內部時鐘工作電路的輸入。XTAL2:來自反向振蕩器的輸出。XTAL1 和 XTAL2 分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源驅動器件,XTAL2 應精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)不接。有余輸入至內部時鐘信號要通過一個二分頻觸發(fā)器,因此對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求

20、的寬度。3.2.2主控模塊電路原理圖單片機主程序模塊通過對 DHT11 傳感器采集到信號的讀取,將得到的數(shù)據(jù)信號進行分析和處理,再將處理后的信號發(fā)送給 1602 液晶顯示模塊。完成信息的接收與發(fā)送。并且連接蜂鳴器??刂茍缶到y(tǒng)。如圖 3-2 所示。圖 3-2STC89C52 模塊電路原理圖3.3DHT11 傳感器模塊設計3.3.1DHT11 傳感器簡介DHT11 數(shù)字溫濕度傳感器是一款含有已校準數(shù)字信號輸出的溫濕度復合傳感器。它應用專用的數(shù)字模塊采集技術和溫濕度傳感技術,確保產品具有極高的可靠性與卓越的長期穩(wěn)定性。傳感器包括一個電阻式感濕元件和一個 NTC 測溫元件,并與一個高性能 8 位單片

21、機相連接。因此該產品具有品質卓越、超快響應、抗干擾能力強、性價比極高等優(yōu)點。每個 DHT11 傳感器都在極為精確的濕度校驗室中進行校準。校精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)準系數(shù)以程序的形式儲存在 OTP 內存中,傳感器內部在檢測信號的處理過程中要調用這些校準系數(shù)。單線制串行接口,使系統(tǒng)集成變得簡易快捷。超小的體積、極低的功耗,信號傳輸距離可達 20 米以上,使其成為各類應用甚至最為苛刻的應用場合的最佳選則。產品為 4 針單排引腳封裝。連接方便,特殊封裝形式可根據(jù)用戶需求而提供。 DHT11 傳感器實物圖如下 3-3 所示:圖 3-3DHT11 傳感器實物圖(1)引腳介紹:Pin1:(

22、VDD),電源引腳,供電電壓為 35.5V。Pin2:(DATA) ,串行數(shù)據(jù),單總線。Pin3:(NC) ,空腳,請懸浮。Pin4(VDD) ,接地端,電源負極。(2)接口說明 :建議連接線長度短于 20 米時用 5K 上拉電阻,大于 20 米時根據(jù)實際情況使用合適的上拉電阻。精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)圖 3-4DHT11 典型應用電路(3)數(shù)據(jù)幀的描述:DATA 用于微處理器與 DHT11 之間的通訊和同步,采用單總線數(shù)據(jù)格式,一次通訊時間 4ms 左右,數(shù)據(jù)分小數(shù)部分和整數(shù)部分,具體格式在下面說明,當前小數(shù)部分用于以后擴展,現(xiàn)讀出為零.操作流程如下:一次完整的數(shù)據(jù)傳輸為

23、40bit,高位先出。數(shù)據(jù)格式:8bit 濕度整數(shù)數(shù)據(jù)+8bit 濕度小數(shù)數(shù)據(jù)+8bi 溫度整數(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ù)”所得結果的末 8 位。(4)電氣特性:VDD=5V,T = 25,除非特殊標注表 3-2 DHT11 的電氣特性參數(shù)條件Mintypmax單位供電DC355.5V測量0.52.5mA平均0.21mA供電電流待機100150uA采樣周期秒1次注:采樣周期間隔不得低于 1 秒鐘。(5)時序描述:用戶 MCU 發(fā)送一次開始信號后,DHT11 從低功耗模式轉

24、換到高速模式,等待主機開始信號結束后,DHT11 發(fā)送響應信號,送出 40bit 的數(shù)據(jù),并觸發(fā)一次信號采集,用戶可選擇讀取部分數(shù)據(jù).從模式下,DHT11 接收到開始信號觸發(fā)一次溫濕度采集,如果沒有接收到主機發(fā)送開始信號,DHT11 不會主動進行溫濕度采集.采集數(shù)據(jù)后轉換到精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)低速模式。通訊過程如下圖 3-5 所示:圖 3-5總線空閑狀態(tài)為高電平,主機把總線拉低等待 DHT11 響應,主機把總線拉低必須大于 18 毫秒,保證 DHT11 能檢測到起始信號。DHT11 接收到主機的開始信號后,等待主機開始信號結束,然后發(fā)送 80us 低電平響應信號.主機發(fā)送

25、開始信號結束后,延時等待 20-40us 后, 讀取 DHT11 的響應信號,主機發(fā)送開始信號后,可以切換到輸入模式,或者輸出高電平均可, 總線由上拉電阻拉高。圖 3-6 總線為低電平,說明 DHT11 發(fā)送響應信號,DHT11 發(fā)送響應信號后,再把總線拉高80us,準備發(fā)送數(shù)據(jù),每一 bit 數(shù)據(jù)都以 50us 低電平時隙開始,高電平的長短定了數(shù)據(jù)位是 0 還是 1.格式見下面圖示.如果讀取響應信號為高電平,則 DHT11 沒有響應,請檢查線路是否連接正常.當最后一 bit 數(shù)據(jù)傳送完畢后,DHT11 拉低總線 50us,隨后總線由上拉電阻拉高進入空閑狀態(tài)。數(shù)字 0 信號表示方法如下圖 3-

26、7 所示:精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè) 圖 3-7數(shù)字 1 信號表示方法如下圖 3-8 所示圖 3-83.3.2DHT11 傳感器模塊電路設計 DHT11 傳感器連接 STC89C51 系列單片機相對比較簡單。單片機的 P2.0 口用來發(fā)收串行數(shù)據(jù),即數(shù)據(jù)口。連接傳感器的 Pin2(單總線,串行數(shù)據(jù)) 。由于測量范圍電路小于 20 米,建議加一個 5K 的上拉電阻,因此在傳感器的 Pin2 口與電源之間連接一個 5K 電阻。而傳感器的電源端口 Pin1 和 Pin4 分別接單片機的 VDD 和 GND 端。精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)傳感器的第三腳懸浮放置。DHT1

27、1 傳感器原件的電路原理圖如下 3-9 所示: 圖 3-9 DHT11 電路原理圖3.41602 液晶顯示模塊設計3.4.11602 液晶顯示屏簡介HJ1602A 是一種工業(yè)字符型液晶,能夠同時顯示 16x02 即 32 個字符。 (16 列 2行) 。在日常生活中,我們對液晶顯示器并不陌生。液晶顯示模塊已作為很多電子產品的通過器件,如在計算器、萬用表、電子表及很多家用電子產品中都可以看到,顯示的主要是數(shù)字、專用符號和圖形。在單片機的人機交流界面中,一般的輸出方式有以下幾種:發(fā)光管、LED 數(shù)碼管、液晶顯示器。發(fā)光管和 LED 數(shù)碼管比較常用,軟硬件都比較簡單。在單片機系統(tǒng)中應用晶液顯示器作為

28、輸出器件有以下幾個優(yōu)點:由于液晶顯示器每一個點在收到信號后就一直保持那種色彩和亮度,恒定發(fā)光,而不像陰極射線管顯示器(CRT)那樣需要不斷刷新新亮點。因此,液晶顯示器畫質高且不會閃爍。 液晶顯示器都是數(shù)字式的,和單片機系統(tǒng)的接口更加簡單可靠,操作更加方便。 液晶顯示器通過顯示屏上的電極控制液晶分子狀態(tài)來達到顯示的目的,在重量上比相同顯示面積的傳統(tǒng)顯示器要輕得多。 相對而言,液晶顯示器的功耗主要消耗在其內部的電極和驅動 IC 上,因而耗電精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)量比其它顯示器要少得多。 字符型液晶顯示模塊是一種專門用于顯示字母、數(shù)字、符號等點陣式 LCD,目前常用 16*1,1

29、6*2,20*2 和 40*2 行等的模塊。下面以長沙太陽人電子有限公司的1602 字符型液晶顯示器為例,介紹其用法。一般 1602 字符型液晶顯示器實物如圖 3-10 和 3-11 所示:圖 3-10 液晶屏正面 圖 3-11 液晶屏背面(1)引腳說明:第 1 腳:VSS 為地電源。 第 2 腳:VDD 接 5V 正電源。 第 3 腳:VL 為液晶顯示器對比度調整端,接正電源時對比度最弱,接地時對比度最高,對比度過高時會產生“鬼影” ,使用時可以通過一個 10K 的電位器調整對比度。 第 4 腳:RS 為寄存器選擇,高電平時選擇數(shù)據(jù)寄存器、低電平時選擇指令寄存器。 第 5 腳:R/W 為讀寫

30、信號線,高電平時進行讀操作,低電平時進行寫操作。當RS 和 R/W 共同為低電平時可以寫入指令或者顯示地址,當 RS 為低電平R/W 為高電平時可以讀忙信號,當 RS 為高電平 R/W 為低電平時可以寫入數(shù)據(jù)。 精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)第 6 腳:E 端為使能端,當 E 端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。 第 714 腳:D0D7 為 8 位雙向數(shù)據(jù)線。 第 15 腳:背光源正極。 第 16 腳:背光源負極。(2)1602LCD 的 RAM 地址映射以及標準字庫表LCD1602 液晶模塊內部的字符發(fā)生存儲器已經存儲了 160 個不同的點陣字符圖形,這些字符圖有:阿拉

31、伯數(shù)字、英文字母的大小寫、常用的符號、和日文假名等,每一個字符都有一個固定的代碼,比如大寫的英文字母“A”的代碼是 B(41H) ,顯示時模塊把地址 41H 中的點陣字符圖形顯示出來,我們就能看到字母。它的讀寫操作、屏幕和光標的操作都是通過指令編程來實現(xiàn)的(說明:1 為高電平,0 為低電平) 。指令 1:清顯示,指令碼 01H,光標復位到地址 00H 位置。指令 2:光標復位,光標返回到地址 00H 。指令 3:光標和顯示模式設置 I/D:光標移動方向,高電平右移,低電平左移 。S:屏幕上所有文字是否左移或者右移。高電平表示有效,低電平則無效 。指令 4:顯示開關控制。 D:控制整體顯示的開與

32、關,高電平表示開顯示,低電平表示關顯示。 C:控制光標的開與關,高電平表示有光標,低電平表示無光標。 B:控制光標是否閃爍,高電平閃爍,低電平不閃爍 。指令 5:光標或顯示移位 S/C:高電平時移動顯示的文字,低電平時移動光標 。指令 6:功能設置命令 DL:高電平時為 4 位總線,低電平時為 8 位總線。 N:低電平時為單行顯示,高電平時雙行顯示。 F:低電平時顯示 5X7 的點陣字符,高電平時顯示 5x10 的點陣字符 (有些模塊是 DL:高電平時為 8 位總線,低電平時為 4 位總線) 。指令 7:字符發(fā)生器 RAM 地址設置 。指令 8:DDRAM 地址設置 。指令 9:讀出忙信號和光

33、標地址。 BF 為忙標志位,高電平表示忙,此時模塊不能接收命令或者數(shù)據(jù),如果為低電平表示不忙,模塊就能接收相應的命令或者數(shù)據(jù)。指令 10:寫數(shù)據(jù) 。指令 11:讀數(shù)據(jù) 。液晶顯示模塊是一個慢顯示器件,所以在執(zhí)行每條指令之前一定要確認模塊的精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)忙標志為低電平,表示不忙,否則此指令失效。要顯示字符時要先輸入顯示字符地址,也就是告訴模塊在哪里顯示字符。1602 內部顯示地址如圖 3-12 所示: 圖 3-12 1602 內部顯示地址例如第二行第一個字符的地址是 40H,那么是否直接寫入 40H 就可以將光標定位在第二行第 一個字符的位置呢?這樣不行,因為寫入顯示

34、地址時要求最高位 D7恒定為高電平 1,所以實際寫入的數(shù)據(jù)應該是 B(40H)+B(80H)=B(C0H) 。在對液晶模塊的初始化中要先設置其顯示模式,在液晶模塊顯示字符時光標是自動右移的,無需人工干預。每次輸入指令前都要判斷液晶模塊是否處于忙的狀態(tài)。1602 液晶模塊內部的字符發(fā)生存儲器(CGROM)已經存儲了 160 個不同的點陣字符圖形,如下圖所示,這些字符有:阿拉伯數(shù)字、英文字母的大小寫、常用的符號、和日文假名等,每一個字符都有一個固定的代碼,比如大寫的英文字母“A”的代碼是 B(41H) ,顯示時模塊把地址 41H 中的點陣字符圖形顯示出來,我們就能看到字母“A” 。3.4.2160

35、2 液晶顯示模塊電路原理圖液晶顯示的原理是利用液晶的物理特性, 通過電壓對其顯示區(qū)域進行控制,有電就有顯示,這樣即可以顯示出圖形。液晶顯示器具有厚度薄、適用于大規(guī)模集成電路直接驅動、易于實現(xiàn)全彩色顯示的特點,目前已經被廣泛應用在便攜式電腦、數(shù)字攝像機、PDA 移動通信工具等眾多領域。精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)圖 3-131602 顯示模塊3.5報警模塊3.5.1蜂鳴器介紹蜂鳴器是一種一體化結構的電子訊響器。采用直流電壓供電,廣泛應用于計算機、打印機、復印機、報警器、電子玩具、汽車電子設備、電話機、定時器等電子產品中作發(fā)聲器件。 蜂鳴器主要分為壓電式蜂鳴器和電磁式蜂鳴器兩種類型。

36、蜂鳴器在電路中用字母“H”或“HA” (舊標準用“FM” 、 “LB” 、 “JD”等)表示。3.5.2蜂鳴器工作原理圖 3-14蜂鳴器工作原理圖精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)第 4 章系統(tǒng)軟件設計在對我們所要設計的課題有了整體的了解之后,需要先建立程序框架的流程圖,對整個設計劃分模塊,逐個模塊實現(xiàn)其功能,最終把各個子模塊合理的連接起來,構成總的程序。主程序首先要對整個系統(tǒng)進行初始化,然后將采集到的溫濕度指令傳給系統(tǒng)的主流程圖如圖 4-1 所示: 開始初始化延時溫濕度測量1602 顯示數(shù)據(jù)判斷溫度溫度低于 26高于 30蜂鳴器鈴響蜂鳴器鈴響結束圖 4-1主程序流程圖精選優(yōu)質文檔-傾

37、情為你奉上專心-專注-專業(yè)4.11602 液晶顯示模塊設計液晶顯示模塊是一個慢顯示器件,在執(zhí)行每條指令之前要確認模塊的忙標志為低電平,表示不忙,則此指令失效,要顯示字符時要先輸入顯示字符地址,告訴模塊在哪里現(xiàn)實了字符。1602 液晶顯示模塊可與 STC89C52 直接接口的。軟件流程圖如圖 4-2 所示:精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)開始LCD 初始化延時設第一行顯示位置顯示第一行內容設第二行顯示位置顯示第二行內容圖 4-21602 液晶顯示模塊程序流程圖精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)4.2傳感器模塊設計溫濕度模塊 DH11 數(shù)字溫濕傳感器加濕器溫濕度傳感器隨著科技的不

38、斷發(fā)展,汽車、空調、除濕器、烘干機等種類繁多的電器都已進入人們的日常生活,而這些電器設備很多都離不開對溫度、濕度等環(huán)境因素的要求。因此,溫度、濕度傳感器用途越來越廣泛。新一代的數(shù)字傳感器不再需要外置的 A D 轉換模塊,并具有標準接口,使用方便,得到了越來越多的應用。DHT11 作為一種新型的單總線溫濕度數(shù)字傳感器,具有更多的優(yōu)點,它使系統(tǒng)設計更加簡單,控制方便,易于實現(xiàn)。1 單總線通信簡介 目前常用的微機與外設之間進行數(shù)據(jù)傳輸?shù)拇锌偩€主要有 I2C 總線、SPI 總線和 SCI 總線。其中 I2C 總線以同步串行兩線方式進行通信(1 條時鐘線,1條數(shù)據(jù)線),SPI 總線則以同步串行三線方式

39、進行通信(1 條時鐘線,1 條數(shù)據(jù)輸入線,1 條數(shù)據(jù)輸出線),而 SCI 總線是以異步方式進行通信的(1 條數(shù)據(jù)輸入線,1 條數(shù)據(jù)輸出線)。這些總線至少需要兩條或兩條以上的信號線。DHT11 傳感器模塊的軟件流程圖如下圖所示精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)給 DHT11 上電延時 1S保持高電平檢測記錄信號輸出低電平延時輸出低電平數(shù)據(jù)輸出結束信號圖 4-3DHT11 傳感器模塊程序流程圖精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)第 5 章系統(tǒng)分析與調試本設計是在 Keil C 環(huán)境下開發(fā)的,Keil C 軟件支持 C 語言的編程及調試,運用方便,是做 C 語言畢業(yè)設計者的首選。設計的

40、首要任務是安裝和學習使用這個軟件,在簡單的學習和了解 Keil C 后,我們便可在此環(huán)境下開始了對帶錄音功能的電子琴的設計工作。在編譯完 Keil C 后,再運用 STC_ISP_V480 軟件燒錄到開發(fā)板上,實現(xiàn)實物與程序的連接。在燒錄前要對 STC_ISP_V480 進行一些必要的設置。第一步:設置 MCU Type 為 STC89C52RC;第二步:打開編寫好并編譯的程序文件,它是以.hex 為后綴的文件;第三步:選擇對應的 COM 端口, (可在我的電腦的設備管理處查看 COM 選項) ;第四步:點擊 Download/下載,等提示請給 MCU 上電時,打開開發(fā)板上的開關,它就自行燒錄

41、了。Keil C 程序運行如圖 5-1 所示圖 5-1keil C 運行圖精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)圖 5-2程序燒錄運行圖在完成對程序的調試及燒錄之后,還需要對其進行演示,把開發(fā)板與電腦連上,設置好對應的接口,完成供電及下載。開始供電后、稍帶幾秒等 1602 液晶屏能正常顯示當前溫濕度了之后。觀察當前溫濕度的變化。并且針對與自己設定的限值相比較。若當前溫度沒有超標,即沒有超過限值。可以用手捂住 DHT11 傳感器,令其溫度的顯示超標。測試能否達到報警。經過測試。完全可行。因而簡單的實現(xiàn)了對溫度的控制。濕度控制原理跟溫度一樣。精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)第 6 章

42、結論與展望本系統(tǒng)以單片機為核心部件的控制系統(tǒng),利用軟件編程,最終基本上實現(xiàn)了各項要求。雖然系統(tǒng)還存在一些不足,比如溫濕度測量不夠精確,特別是濕度,波動較大。嘗試了各種改進方法。仍然不太理想。不過大體能反映出設計的目的和要求。與預期的結果相差不多。經過近兩個月的奮斗,從確定題目,到后來查找資料,理論學習,實驗編程調試,這一切都使我的理論知識和動手能力有了很大的提高。了解了單片機的硬件結構和軟件編程方法,對單片機的工作方式有了很大的認知。同時,對一些外圍設備比如傳感器、液晶屏、鍵盤、蜂鳴器等有了一定的了解!學會了對一項工程如何設計:首先,要分析需要設計的系統(tǒng)要實現(xiàn)什么功能,需要什么器件;然后,針對

43、設計購買相應的硬件,選用硬件時不僅要選用經濟的,更重要的是如何能更精確更方便的完成系統(tǒng)的要求;再次,對各個硬件的軟件實現(xiàn)要弄清楚,如何更好的實現(xiàn)各個硬件的協(xié)調,更好的通過主控制器件實現(xiàn)硬件的功能。最后,通過各種測試與調試,讓設計更好的完成系統(tǒng)要求。 但因為我們的水平有限,此設計中也存在一定的不足。就比如說對濕度的控制方面,由于溫度時刻都在發(fā)生著變化。而濕度的變化又大體上取決于溫度。因而對于濕度的控制有點困難。同時由于濕度變化波動比較大。造成報警頻繁,為濕度限值的設定也帶來了不小的麻煩。溫濕度控制已經成為了 21 世紀熱門研究話題之一。無論是從生產還是生活,與我們人類都是息息相關的。而智能化的控

44、制溫濕度已經發(fā)展成為一種必然。隨著世界經濟的發(fā)展,人們生活水平的提高以及社會的進步。我們不可能一直墨守陳規(guī),不能在恪守以前利用人力資源來控制溫濕度的方法。不僅浪費大量的人力資源、財力資源,并且控制系統(tǒng)也更加單一化。而采用自動控制的辦法、既節(jié)省了人力資源,更體現(xiàn)了與時俱進的思想、世界在進步、而這種進步就該體現(xiàn)在各個方面。精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)參考文獻1 陳明熒.8051 單片機課程設計實訓教材M. 北京:清華大學出版社,20032 徐新艷.單片機原理、應用與實踐M. 北京:高等教育出版社,20053 吳金戌,沈慶陽,郭庭吉.8051 單片機實踐與應用M. 北京:清華大學出版社

45、,2002.4 王千.實用電子電路大全M. 電子工業(yè)出版社,2001.5 馮博琴.微型計算機原理與接口技術M. 北京:清華大學出版社,2004.精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)附錄 A硬件原理圖精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)附錄 B程序清單#include /調用單片機頭文件#define uchar unsigned char /無符號字符型 宏定義 變量范圍 0255#define uint unsigned int /無符號整型 宏定義 變量范圍 065535#includesbit beep = P14; /蜂鳴器 IO 口定義sbit relay1 = P13;

46、 /溫度報警繼電器 IO 口定義sbit relay2 = P16; /濕度報警繼電器 IO 口定義uchar a_a;uchar flag_en = 1;bit flag_300ms ;/ 按鍵的 IO 變量的定義uchar key_can; /按鍵值的變量uchar menu_shudu = 20; /用來控制連加的速度uchar menu_1; /菜單設計的變量uint t_high = 30; /溫度報警參數(shù)uint s_high = 30;/濕度報警參數(shù)uchar key_time,flag_value; /用做連加的中間變量bit key_500ms ;/* 名稱 : delay_

47、1ms()* 功能 : 延時 1ms 函數(shù)* 輸入 : q精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)* 輸出 : 無*/void delay_1ms(uint q)uint i,j;for(i=0;iq;i+)for(j=0;j 8);/* 地址賦值 */ ISP_ADDRL = (unsigned char)(byte_addr & 0 x00ff); ISP_CMD = ISP_CMD & 0 xf8; /* 清除低 3 位 */ ISP_CMD = ISP_CMD | RdCommand; /* 寫入讀命令 */ ISPgoon(); /* 觸發(fā)執(zhí)行 */ ISP_IAP

48、_disable(); /* 關閉 ISP,IAP 功能 */ EA = 1; return (ISP_DATA); /* 返回讀到的數(shù)據(jù) */* = 扇區(qū)擦除 = */void SectorErase(unsigned int sector_addr) unsigned int iSectorAddr; iSectorAddr = (sector_addr & 0 xfe00); /* 取扇區(qū)地址 */精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè) ISP_ADDRH = (unsigned char)(iSectorAddr 8); ISP_ADDRL = 0 x00; ISP_CMD

49、 = ISP_CMD & 0 xf8; /* 清空低 3 位 */ ISP_CMD = ISP_CMD | EraseCommand; /* 擦除命令 3 */ ISPgoon(); /* 觸發(fā)執(zhí)行 */ ISP_IAP_disable(); /* 關閉 ISP,IAP 功能 */* = 字節(jié)寫 = */void byte_write(unsigned int byte_addr, unsigned char original_data) EA = 0; SectorErase(byte_addr); ISP_ADDRH = (unsigned char)(byte_addr 8);

50、/* 取地址 */ ISP_ADDRL = (unsigned char)(byte_addr & 0 x00ff); ISP_CMD = ISP_CMD & 0 xf8; /* 清低 3 位 */ ISP_CMD = ISP_CMD | PrgCommand; /* 寫命令 2 */ ISP_DATA = original_data; /* 寫入數(shù)據(jù)準備 */ ISPgoon(); /* 觸發(fā)執(zhí)行 */ ISP_IAP_disable(); /* 關閉 IAP 功能 */ EA =1;/*把數(shù)據(jù)保存到單片機內部 eeprom 中*/void write_eeprom() /保

51、存數(shù)據(jù)SectorErase(0 x2000);byte_write(0 x2000, t_high);byte_write(0 x2002, s_high);byte_write(0 x2055, a_a); /*把數(shù)據(jù)從單片機內部 eeprom 中讀出來*/void read_eeprom() /讀出保存數(shù)據(jù)精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)t_high = byte_read(0 x2000);s_high = byte_read(0 x2002);a_a = byte_read(0 x2055);/*開機自檢 eeprom 初始化*/void init_eeprom() /開始

52、初始化保存的數(shù)據(jù)read_eeprom(); /讀出保存數(shù)據(jù)if(a_a != 84)/新的單片機初始單片機內問 eepromt_high = 40;s_high = 78;a_a = 84;write_eeprom(); /保存數(shù)據(jù)uchar code table_num=abcdefg;sbit rs=P10; /寄存器選擇信號 H:數(shù)據(jù)寄存器 L:指令寄存器sbit rw=P11; /寄存器選擇信號 H:數(shù)據(jù)寄存器 L:指令寄存器sbit e =P12; /片選信號 下降沿觸發(fā)/* 名稱 : delay_uint()* 功能 : 小延時。* 輸入 : 無* 輸出 : 無*/void de

53、lay_uint(uint q)精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)while(q-);/* 名稱 : write_com(uchar com)* 功能 : 1602 命令函數(shù)* 輸入 : 輸入的命令值* 輸出 : 無*/void write_com(uchar com)e=0;rs=0;rw=0;P0=com;delay_uint(25);e=1;delay_uint(100);e=0;/* 名稱 : write_data(uchar dat)* 功能 : 1602 寫數(shù)據(jù)函數(shù)* 輸入 : 需要寫入 1602 的數(shù)據(jù)* 輸出 : 無*/void write_data(uchar dat

54、)e=0;rs=1;rw=0;P0=dat;精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)delay_uint(25);e=1;delay_uint(100);e=0;/*lcd1602 上顯示特定的字符*0XDF 度*/void write_zifu(uchar hang,uchar add,uchar date)if(hang=1) write_com(0 x80+add);elsewrite_com(0 x80+0 x40+add);write_data(date);/*lcd1602 上顯示兩位十進制數(shù)*/void write_sfm2(uchar hang,uchar add,uint

55、date)if(hang=1) write_com(0 x80+add);elsewrite_com(0 x80+0 x40+add);write_data(0 x30+date/10%10);write_data(0 x30+date%10);/*lcd1602 上顯示這字符函數(shù)*/void write_string(uchar hang,uchar add,uchar *p)if(hang=1) 精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)write_com(0 x80+add);elsewrite_com(0 x80+0 x40+add);while(1) if(*p = 0) break

56、;write_data(*p);p+;/*lcd1602 初始化設置*/void init_1602() /lcd1602 初始化write_com(0 x38);write_com(0 x0c);write_com(0 x06);delay_uint(1000);write_string(1,0,Wendu:00 WH:00 );write_string(2,0,Shidu:00% SH:00%);write_zifu(1,8,0 xdf); /顯示度write_sfm2(2,6,table_dht110); /顯示濕度write_sfm2(1,6,table_dht112); /顯示溫度write_sfm2(1,13,t_high); /顯示溫度write_sfm2(2,13,s_high); /顯示濕度/*定時器 0 初始化程序*/void time_init() EA = 1; /開總中斷TMOD = 0X01; /定時器 0、定時器 1 工作方式 1ET0 = 1; /開定時器 0 中斷 精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)TR0 = 1; /允許定時器 0 定時/*獨立按鍵程序*/uchar key_can; /按鍵值void key() /獨立按鍵程序static uchar key_new

溫馨提示

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

評論

0/150

提交評論