基于單片機(jī)的溫濕度計(jì)的設(shè)計(jì)_第1頁
基于單片機(jī)的溫濕度計(jì)的設(shè)計(jì)_第2頁
基于單片機(jī)的溫濕度計(jì)的設(shè)計(jì)_第3頁
基于單片機(jī)的溫濕度計(jì)的設(shè)計(jì)_第4頁
基于單片機(jī)的溫濕度計(jì)的設(shè)計(jì)_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、.單片機(jī)課程設(shè)計(jì)項(xiàng)目名稱 基于單片機(jī)的濕度顯示器設(shè)計(jì) 專業(yè)班級 通信092 學(xué)生姓名 指導(dǎo)教師 2012年12月12日.摘 要溫度和濕度是兩個最基本的環(huán)境參數(shù),人們生活與溫濕度息息相關(guān)。在日常生活、工業(yè)、醫(yī)學(xué)、環(huán)境保護(hù)、化工、石油等領(lǐng)域,經(jīng)常需要對環(huán)境溫度和濕度進(jìn)行測量和控制。準(zhǔn)確測量溫濕度在生物制藥、食品加工、造紙等行業(yè)更是至關(guān)重要。因此,研究溫濕度的測量方法和裝置具有重要的意義。隨著科技的不斷發(fā)展,單片機(jī)技術(shù)已經(jīng)普及到我們的工作、生活、科研等各個領(lǐng)域。已經(jīng)成為一種比較成熟的技術(shù)。由于單片機(jī)集成度高、功能強(qiáng)、可靠性高、體積小、功耗低、使用方便等優(yōu)點(diǎn),目前已經(jīng)滲透到我們工作和生活的方方面面。本

2、論文介紹了一種以AT89C51為主要控制器件,以DHT11為數(shù)字溫度傳感器的新型數(shù)字溫濕度計(jì)。本設(shè)計(jì)主要包括硬件電路的設(shè)計(jì)和系統(tǒng)軟件的設(shè)計(jì)。關(guān)鍵詞:溫濕度傳感器; LCD1602; AT89C51; DHT1 1;Abstract Temperature and humidity are the two most basic environmental parameters, people's life is closely related with the temperature and humidity. In daily life, industry, medicine, env

3、ironmental protection, chemical industry, petroleum and other fields, we often need to environment temperature and humidity measurement and control. Accurate measuring temperature and humidity in biological pharmacy, food processing, paper making industries is very important. Therefore, the study of

4、 the temperature and humidity measurement method and equipment has important significance. With the continuous development of science and technology, microcontroller technology has spread to our work, life, scientific research, and other fields. Has become a more mature technology. Due to the high l

5、evel of integration SCM, strong function, high reliability, small volume, low power consumption, easy to use, etc., and has penetrated into our work and all aspects of life. This paper introduces a kind of AT89C51 as the main control device, in order to DHT11 digital temperature sensor for new digit

6、al temperature and humidity meter. This design mainly includes hardware circuit design and software design. Keywords: Temperature and humidity sensor; LCD1602; AT89C51; DHT1 1; 目錄摘 要IAbstractII目錄III第1章 緒論11.1 課程設(shè)計(jì)背景概述11.2 本課程設(shè)計(jì)的內(nèi)容11.3 本課程設(shè)計(jì)的意義1第2章 系統(tǒng)設(shè)計(jì)方案及硬件設(shè)計(jì)22.1 系統(tǒng)設(shè)計(jì)方案22.2 系統(tǒng)硬件介紹22.2.1 AT89C51介紹22.

7、2.2 DHT11數(shù)字傳感器介紹52.2.3 LCD1602介紹62.3 系統(tǒng)部分硬件電路設(shè)計(jì)介紹82.3.1 主控制電路的設(shè)計(jì)82.3.2 溫濕度檢電路的設(shè)計(jì)92.3.3 LCD1602液晶顯示電路的設(shè)計(jì)11第3章 系統(tǒng)的軟件設(shè)計(jì)123.1 系統(tǒng)軟件主程序流程123.2 DHT11數(shù)據(jù)采集流程13結(jié)論15參考文獻(xiàn)16附錄117附錄218項(xiàng)目特色與創(chuàng)新24致謝25第1章 緒論1.1 課程設(shè)計(jì)背景概述進(jìn)入21世紀(jì)后,各行各業(yè)特別是傳統(tǒng)產(chǎn)業(yè)都急切需要應(yīng)用電子技術(shù)、自動控制技術(shù)進(jìn)行改造和提升很多企業(yè)對溫濕度的測控手段很粗糙,十分落后,絕大多數(shù)仍在使用濕球濕度計(jì),采用人工觀測人工調(diào)節(jié)閥門、風(fēng)機(jī)的方法,

8、很少有人使用溫濕度傳感器。隨著科技的發(fā)展進(jìn)步,工業(yè)及電器行業(yè)對溫濕度的要求的提高,溫濕度傳感器的應(yīng)用范圍也越來越加廣泛。1.2 本課程設(shè)計(jì)的內(nèi)容在本次課程設(shè)計(jì)中,為實(shí)現(xiàn)對溫濕度的檢測與顯示,主要利用以AT89C51為核心構(gòu)架硬件電路,DHT11溫濕度傳感器采集環(huán)境溫度及濕度信息,(溫度檢測范圍: -30至+55。測量精度: 2.;濕度檢測范圍: 20%-90%RH。檢測精度:5%RH)。LCD1602顯示器直接顯示溫度和濕度(顯示方式: 溫度:四位顯示;濕度:四位顯示);同時(shí)利用C語言編程實(shí)現(xiàn)溫濕度信息的顯示功能。1.3 本課程設(shè)計(jì)的意義最近幾年來,隨著科技的飛速發(fā)展,單片機(jī)領(lǐng)域正在不斷的走向

9、社會各個角落,還帶動傳統(tǒng)控制檢測日新月異更新。在實(shí)時(shí)運(yùn)作和自動控制的單片機(jī)應(yīng)用到系統(tǒng)中,單片機(jī)如今是作為一個核心部件來使用,僅掌握單片機(jī)方面知識是不夠的,還應(yīng)根據(jù)其具體硬件結(jié)構(gòu),以及針對具體應(yīng)用對象特點(diǎn)的軟件結(jié)合,加以完善?!皢纹瑱C(jī)原理及應(yīng)用課程設(shè)計(jì)”是電子類專業(yè)的學(xué)科基礎(chǔ)科,它是繼“匯編語言程序設(shè)計(jì)”,“接口技術(shù)”等課程之后開出的實(shí)踐環(huán)節(jié)課程?,F(xiàn)代社會越來越多的場所會涉及到溫度與濕度并將其顯示。由于溫度與濕度不管是從物理量本身還是在實(shí)際人們的生活中都有著密切的關(guān)系,例如:冬天溫度為18至25,濕度為30%至80%;夏天溫度為23至28,濕度為30%至60%。在此范圍內(nèi)感到舒適的人占95%以上

10、。在裝有空調(diào)的室內(nèi),室溫為19至24,濕度為40%至50%時(shí),人會感到最舒適。如果考慮到溫、濕度對人思維活動的影響,最適宜的室溫度應(yīng)是工作效率高。18,濕度應(yīng)是40%至60%,此時(shí),人的精神狀態(tài)好,思維最敏捷。所以,本課程設(shè)計(jì)就是通過單片機(jī)驅(qū)動LCD1602,液晶顯示溫濕度,通過此設(shè)計(jì),可以發(fā)現(xiàn)本設(shè)計(jì)有一定的擴(kuò)展性,而且可以作為其他有關(guān)設(shè)計(jì)的基礎(chǔ)。第2章 系統(tǒng)設(shè)計(jì)方案及硬件設(shè)計(jì)2.1 系統(tǒng)設(shè)計(jì)方案本方案使用AT89C51作為控制核心,一直能溫濕度傳感器DHT11作為溫濕度測量元件,顯示電路采用LCD1602模塊顯示,采用單片機(jī)最小系統(tǒng)。系統(tǒng)硬件電路設(shè)計(jì)框圖如下圖2-1。AT89C51單片機(jī)LC

11、D1602液晶顯示DHT11溫濕度傳感器數(shù)據(jù)采集時(shí)鐘復(fù)位電路圖2-1 系統(tǒng)硬件電路設(shè)計(jì)框圖2.2 系統(tǒng)硬件介紹2.2.1 AT89C51介紹AT89C51是美國ATMEL公司生產(chǎn)的低電壓,高性能CMOS8位單片機(jī),片內(nèi)含4kbytes的可反復(fù)擦寫的只讀程序存儲器(EPROM)和128bytes的隨機(jī)存取數(shù)據(jù)存儲器(RAM),可靈活應(yīng)用于各種控制領(lǐng)域。由于器件采用了靜態(tài)設(shè)計(jì),可提供很寬的操作頻率范圍,頻率可降至0??蓪?shí)現(xiàn)兩個由軟件選擇的節(jié)電模式,空閑模式和掉電模式,空閑模式凍結(jié)CPU但RAM定時(shí)器,串口和中斷系統(tǒng)仍然工作,掉電模式保存RAM的內(nèi)容,但是凍結(jié)振蕩器導(dǎo)致所有其它的片內(nèi)功能停止工作。由

12、于設(shè)計(jì)是靜態(tài)的時(shí)鐘可停止而不會丟失用戶數(shù)據(jù),運(yùn)行可從時(shí)鐘停止處恢復(fù)。AT89C51的制作工藝為CMOS,采用40管腳雙列直插DIP封裝,引腳說明如下:VCC:供電電壓。 GND:接地。 P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P1口的管腳第一次寫1時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時(shí),P0 口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部必須被拉高。 P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上

13、拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收。 P2口:P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當(dāng)P2口被寫“1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉優(yōu)勢,當(dāng)對外部八位地址數(shù)據(jù)存儲器進(jìn)行讀寫時(shí),P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗(yàn)時(shí)

14、接收高八位地址信號和控制信號。 P3口:P3口管腳是8個帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。 P3口也可作為AT89C51的一些特殊功能口,如下所示: P3.0 RXD(串行輸入口);P3.1 TXD(串行輸出口);P3.2 /INT0(外部中斷0);P3.3 /INT1(外部中斷1);P3.4 T0(記時(shí)器0外部輸入);P3.5 T1(記時(shí)器1外部輸入);P3.6 /WR(外部數(shù)據(jù)存儲器寫選通);P3.7 /RD(外部數(shù)據(jù)存儲器讀選通)

15、;P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號。 RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個機(jī)器周期的高電平時(shí)間。 ALE/PROG:當(dāng)訪問外部存儲器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲器時(shí),將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí),ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)

16、行狀態(tài)ALE禁止,置位無效。 /PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機(jī)器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲器時(shí),這兩次有效的/PSEN信號將不出現(xiàn)。 /EA/VPP:當(dāng)/EA保持低電平時(shí),則在此期間外部程序存儲器(0000H-FFFFH),不管是否有內(nèi)部程序存儲器。注意加密方式1時(shí),/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),此間內(nèi)部程序存儲器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。 XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。 XTAL2:來自反向振蕩器的輸出。 圖2-2 單片機(jī)AT89C51引腳圖A

17、T89C51的工作模式:89C51有四種工作模式:模式0,模式1,模式2,模式3。模式0:選擇定時(shí)器的高8位和低5位組成一個13位定時(shí)器/計(jì)數(shù)器。TL低5位溢出時(shí)向TH進(jìn)位,TH溢出時(shí)向中斷標(biāo)志位TF進(jìn)位,并申請中斷。定時(shí)時(shí)間t=(213-初值)×振蕩周期×12;計(jì)數(shù)長度位213=8192個外部脈沖。模式1:與模式0的唯一差別是寄存器TH和TL以全部16位參與操作。定時(shí)時(shí)間t=(216-初值)×振蕩周期×12;計(jì)數(shù)長度位216=65536個外部脈沖。模式2:把TL0和TL1配置成一個自動重裝載的8位定時(shí)器/計(jì)數(shù)器。TL用作8位計(jì)數(shù)器,TH用以保存初值。T

18、L計(jì)數(shù)溢出時(shí)不僅使TF0置1,而且還自動將TH中的內(nèi)容重新裝載到TL中。定時(shí)時(shí)間t=(28-初值)×振蕩周期×12;計(jì)數(shù)長度位28=256個外部脈沖。模式3:對T0和T1不大相同。若設(shè)T0位模式3,TL0和TH0被分為兩個相互獨(dú)立的8位計(jì)數(shù)器。TL0為8位計(jì)數(shù)器,功能與模式0和模式1相同,可定時(shí)可計(jì)數(shù)。TH0僅用作簡單的內(nèi)部定時(shí)功能,它占用了定時(shí)器T1的控制位TR1和中斷標(biāo)志位TF1,啟動和關(guān)閉僅受TR1控制。定時(shí)器T1無工作模式3,但T0在工作模式3時(shí)T1仍可設(shè)置為02。2.2.2 DHT11數(shù)字傳感器介紹DHT11數(shù)字溫濕度傳感器是一款含有已校準(zhǔn)數(shù)字信號輸出的溫濕度復(fù)合

19、傳感器。它應(yīng)用專用的數(shù)字模塊采集技術(shù)和溫濕度傳感技術(shù),確保產(chǎn)品具有極高的可靠性與卓越的長期穩(wěn)定性。傳感器包括一個電阻式感濕元件和一個NTC測溫元件,并與一個高性能8位單片機(jī)相連接。因此該產(chǎn)品具有品質(zhì)卓越、超快響應(yīng)、抗干擾能力強(qiáng)、性價(jià)比極高等優(yōu)點(diǎn)。每個DHT11傳感器都在極為精確的濕度校驗(yàn)室中進(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ù)用戶需求而提

20、供。DHT11有四個引腳,3號引腳一般懸空,如圖2-3所示。DHT11的供電電壓為35.5V。傳感器上電后,要等待1s以越過不穩(wěn)定狀態(tài)在此期間無需發(fā)送任何指令。電源引腳(VDD,GND)之間可增加一個100nF的電容,用以去耦濾波。建議連接線長度短于20米時(shí)用5K上拉電阻,大于20米時(shí)根據(jù)實(shí)際情況使用合適的上拉電阻。圖2-3 DHT11引腳圖2.2.3 LCD1602介紹1602LCD分為帶背光和不帶背光兩種,基控制器大部分為HD44780,帶背光的比不帶背光的厚,是否帶背光在應(yīng)用中并無差別。LCD1602的主要技術(shù)參數(shù):1、顯示容量:16×2個字符2、芯片工作電壓:4.55.5V3

21、、工作電流:2.0mA(5.0V)4、模塊最佳工作電壓:5.0V5、字符尺寸:2.95×4.35(W×H)mmLCD1602引腳功能說明LCD1602采用標(biāo)準(zhǔn)的14腳(無背光)或16腳(帶背光)接口,引腳功能如下表2-1所示。編號符號引腳說明編號符號引腳說明1VSS電源地9D2數(shù)據(jù)2VDD電源正極10D3數(shù)據(jù)3VL液晶顯示偏壓11D4數(shù)據(jù)4RS數(shù)據(jù)/命令選擇12D5數(shù)據(jù)5R/W讀/寫選擇13D6數(shù)據(jù)6E使能信號14D7數(shù)據(jù)7D0數(shù)據(jù)15BLA背光源正極8D1數(shù)據(jù)16BLK背光源負(fù)極表2-1 LCD1602引腳接口說明表第1腳:VSS為地電源。第2腳:VDD接5V正電源。第3

22、腳:VL為液晶顯示器對比度調(diào)整端,接正電源時(shí)對比度最弱,接地時(shí)對比度最高,對比度過高時(shí)會產(chǎn)生“鬼影”,使用時(shí)可以通過一個10K的電位器調(diào)整對比度。第4腳:RS為寄存器選擇,高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器。第5腳:R/W為讀寫信號線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫操作。當(dāng)RS和R/W共同為低電平時(shí)可以寫入指令或者顯示地址,當(dāng)RS為低電平R/W為高電平時(shí)可以讀忙信號,當(dāng)RS為高電平R/W為低電平時(shí)可以寫入數(shù)據(jù)。第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。第714腳:D0D7為8位雙向數(shù)據(jù)線。第15腳:背光源正極。第16腳:背光源負(fù)極。LCD1602指令

23、說明及時(shí)序:1602液晶模塊內(nèi)部的控制器共有11條控制指令,如下表2-2所示。1602液晶模塊的讀寫操作、屏幕和光標(biāo)的操作都是通過指令編程來實(shí)現(xiàn)的。(說明:1為高電平、0為低電平)序號指令RSR/WD7D6D5D4D3D2D1D01清顯示00000000012光標(biāo)返回000000001*3置輸入模式00000001I/DS4顯示開/關(guān)控制0000001DCB5光標(biāo)或字符移位000001S/CR/L*6置功能00001DLNF*7置字符發(fā)生存貯器地址0001字符發(fā)生存貯器地址8置數(shù)據(jù)存貯器地址001顯示數(shù)據(jù)存貯器地址9讀忙標(biāo)志或地址01BF計(jì)數(shù)器地址10寫數(shù)到CGRAM或DDRAM)10要寫的數(shù)

24、據(jù)內(nèi)容11從CGRAM或DDRAM讀數(shù)11讀出的數(shù)據(jù)內(nèi)容表2-2 LCD1602控制命令表指令1:清顯示,指令碼01H,光標(biāo)復(fù)位到地址00H位置。指令2:光標(biāo)復(fù)位,光標(biāo)返回到地址00H。指令3:光標(biāo)和顯示模式設(shè)置I/D:光標(biāo)移動方向,高電平右移,低電平左移S:屏幕上所有文字是否左移或者右移。高電平表示有效,低電平則無效。指令4:顯示開關(guān)控制。D:控制整體顯示的開與關(guān),高電平表示開顯示,低電平表示關(guān)顯示C:控制光標(biāo)的開與關(guān),高電平表示有光標(biāo),低電平表示無光標(biāo)B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍。指令5:光標(biāo)或顯示移位S/C:高電平時(shí)移動顯示的文字,低電平時(shí)移動光標(biāo)。指令6:功能設(shè)置命令

25、DL:高電平時(shí)為4位總線,低電平時(shí)為8位總線 N:低電平時(shí)為單行顯示,高電平時(shí)雙行顯示F: 低電平時(shí)顯示5x7的點(diǎn)陣字符,高電平時(shí)顯示5x10的點(diǎn)陣字符。指令7:字符發(fā)生器RAM地址設(shè)置。指令8:DDRAM地址設(shè)置。指令9:讀忙信號和光標(biāo)地址BF:為忙標(biāo)志位,高電平表示忙,此時(shí)模塊不能接收命令或者數(shù)據(jù),如果為低電平表示不忙。指令10:寫數(shù)據(jù)。指令11:讀數(shù)據(jù)。2.3 系統(tǒng)部分硬件電路設(shè)計(jì)介紹2.3.1 主控制電路的設(shè)計(jì)MCS-51系列單片機(jī)是采用高性能的靜態(tài)89C51設(shè)計(jì)由先進(jìn)CMOS 工藝制造并帶有非易失性Flash 程序存儲器全部支持12時(shí)鐘和6時(shí)鐘操作P89C51X2和P89C52X2/

26、54X2/58X2分別包含128字節(jié)和256字節(jié)RAM 32條I/O口線3個16位定時(shí)/計(jì)數(shù)器6輸入4優(yōu)先級嵌套中斷結(jié)構(gòu)1個串行I/O口可用于多機(jī)通信I/O擴(kuò)展或全雙工UART以及片內(nèi)振蕩器和時(shí)鐘電路。電路如圖2-4所示:圖2-4 主控制電路圖2.3.2 溫濕度檢電路的設(shè)計(jì)DHT11的供電電壓為35.5V。傳感器上電后,要等待1s以越過不穩(wěn)定狀態(tài)在此期間無需發(fā)送任何指令。電路如圖2-5所示:圖2-5 溫濕度采集電路2.3.3 AT89C51的系統(tǒng)時(shí)鐘電路的設(shè)計(jì)時(shí)鐘電路是用來產(chǎn)生89C51單片機(jī)工作時(shí)所必須的時(shí)鐘信號,89C51本身就是一個復(fù)雜的同步時(shí)序電路,為保證工作方式的實(shí)現(xiàn),89C51在唯

27、一的時(shí)鐘信號的控制下嚴(yán)格的按時(shí)序執(zhí)行指令進(jìn)行工作,時(shí)鐘的頻率影響單片機(jī)的速度和穩(wěn)定性。通常時(shí)鐘由于兩種形式:內(nèi)部時(shí)鐘和外部時(shí)鐘。我們系統(tǒng)采用內(nèi)部時(shí)鐘方式來為系統(tǒng)提供時(shí)鐘信號。89C51內(nèi)部有一個用于構(gòu)成振蕩器的高增益反向放大器,該放大器的輸入輸出引腳為XTAL1和XTAL2,它們跨接在晶體振蕩器和用于微調(diào)的電容,便構(gòu)成了一個自激勵振蕩器。電路中的C1、C2的選擇在30PF左右,但電容太小會影響振蕩的頻率、穩(wěn)定性和快速性。晶振頻率為在1.2MHZ12MHZ之間,頻率越高單片機(jī)的速度就越快,但對存儲器速度要求就高。為了提高穩(wěn)定性我們采用溫度穩(wěn)定性好的NPO電容,采用的晶振頻率為12MHZ。時(shí)鐘電路

28、如圖2-6所示:圖2-6 時(shí)鐘復(fù)位電路2.3.3 LCD1602液晶顯示電路的設(shè)計(jì)顯示模塊選用1602字符型液晶模塊,是目前工控系統(tǒng)中使用最為廣泛的液晶屏之一,1602字符型液晶模塊是點(diǎn)陣型液晶,驅(qū)動方便,經(jīng)編碼后顯示內(nèi)容多樣化。系統(tǒng)的輸入模塊采用中斷掃描的4×4矩陣鍵盤,相比定時(shí)掃描方式,提高了MCU的使用效率。同時(shí)1602液晶顯示模塊可以和單片機(jī)AT89C51直接接口。電路圖如圖2-7所示。圖2-7 LCD1602電路圖第3章 系統(tǒng)的軟件設(shè)計(jì)系統(tǒng)程序主要包括主程序、LCD模塊控制程序、DHT11控制模塊程序、延時(shí)子程序,整體程序見附錄2。3.1 系統(tǒng)軟件主程序流程程序開始后,先對

29、液晶模塊顯示進(jìn)行初始化,通過延時(shí)一秒等待DHT11溫濕度傳感器啟動。DHT11溫濕度傳感器啟動后,對其進(jìn)行數(shù)據(jù)初始化后,進(jìn)行溫濕度信息的采集、轉(zhuǎn)化、處理,最后通過液晶顯示器讀出。DHT11溫濕度傳感器經(jīng)過一次數(shù)據(jù)采集和處理后需返回次延時(shí)程序處理來重新初始化后采集溫濕度數(shù)據(jù)。具體流程圖如圖3-1所示:圖3-1 系統(tǒng)主程序流程圖3.2 DHT11數(shù)據(jù)采集流程主程序里主要的一部分是數(shù)據(jù)采集和顯示的循環(huán)部分,其中DHT11溫濕度傳感器有嚴(yán)格的時(shí)序要求,程序一定要遵守按照其與主機(jī)通信的步驟。其溫濕度數(shù)據(jù)采集流程圖如下圖3-2所示:圖3-2DHT11數(shù)據(jù)采集流程圖LCD初始化機(jī)顯示部分,在程序中應(yīng)先對顯示

30、器進(jìn)行初始化,然后循環(huán)調(diào)用DHT11模塊采集的數(shù)據(jù)對溫度和濕度進(jìn)行實(shí)時(shí)顯示。其LCD初始化機(jī)顯示流程圖如下圖3-3所示:圖3-3 LCD初始化顯示流程圖結(jié)論微型計(jì)算機(jī)在智能化電器發(fā)展中起著至關(guān)重要的作用,而單片機(jī)經(jīng)濟(jì)實(shí)用、開發(fā)簡便,因而在工業(yè)控制、家電智能化等領(lǐng)域占據(jù)了廣泛的市場。本次設(shè)計(jì)是基于單片機(jī)的溫濕度檢測及顯示的設(shè)計(jì)包括硬件電路和軟件編程兩部分。在硬件選擇方面,猶豫采用溫濕度傳感器DHT11,使電路鏈接更加方便,并且容易讀數(shù),簡化了設(shè)計(jì)。顯示電路比較了LED和LCD之后,發(fā)現(xiàn)LED顯示的信息量較少,外接電路復(fù)雜且耗電量大,而LCD正好彌補(bǔ)了LED的缺點(diǎn),所以選擇了用LCD來連接顯示電路

31、。在軟件編程方面,初次完成的程序十分復(fù)雜,在很多方面聯(lián)系不上,我在網(wǎng)上查找了很多的資料,也看了一些教學(xué)視頻,來不斷的完善程序。而且通過和同學(xué)、老師的交流討論,我學(xué)到了很多編程方面的技巧和思想,同時(shí)也精簡了部分程序。參考文獻(xiàn)1 何立民.單片機(jī)高級教程-應(yīng)用與設(shè)計(jì)M.北京:北京航空航天大學(xué)出版社,2002.2 徐愛鈞.單片機(jī)高級語言C51 Windows環(huán)境編程與應(yīng)用M.北京:電子工業(yè)出版社,2001.3 白雪冰,張延林,等.單片機(jī)原理及應(yīng)用M.哈爾濱:哈爾濱東北林業(yè)大學(xué)出版社,2006.4 張佳薇,孫麗萍,等.傳感器原理與應(yīng)用M.哈爾濱:哈爾濱東北林業(yè)大學(xué)出版社,2003.附錄1附錄2源程序:#

32、include <reg51.h>#define uint unsigned int #define uchar unsigned chartypedef bit BOOL ; sbit io = P20 ;sbit rs = P27; sbit rw = 26 ;sbit ep = P25 ;uchar data_byte;uchar RH,RL,TH,TL;/*延時(shí)模塊*/void delay(uchar ms) / 延時(shí)子程序 uchar i ; while(ms-) for(i = 0 ; i<250;i+) ; void delay1()/延時(shí)10usuchar i

33、;i-;i-;i-;i-;i-;i-;void longdelay(uchar s) /長延時(shí) while(s-) delay(60) ; /*LCD模塊*/BOOL lcd_bz()/測試LCD忙碌狀態(tài) BOOL result ; rs = 0 ; rw = 1 ; ep = 1 ; result = (BOOL)(P1 & 0x80) ; ep = 0 ; return result ; void write_cmd(uchar cmd)/ 寫指令 while(lcd_bz() ;rs = 0 ;rw = 0 ;ep = 0 ;P1 = cmd ;ep = 1 ;ep = 0 ;

34、void write_addr(uchar addr)/寫地址 write_cmd(addr|0x80) ;void write_byte(uchar dat)/寫字節(jié) while(lcd_bz() ; rs = 1 ; rw = 0 ; ep = 0 ; P1 = dat ; ep = 1 ; ep = 0 ; void lcd_init()/ 初始化 write_cmd(0x38) ; delay(1); write_cmd(0x08) ; delay(1); write_cmd(0x01) ; delay(1); write_cmd(0x06) ; delay(1); write_cmd

35、(0x0c) ; delay(1);void display(uchar addr, uchar q)/在某一地址上顯示一字節(jié) delay(10) ; write_addr(addr) ; write_byte(q) ; longdelay(2) ; /*DHT11測試模塊*/void start()/開始信號io=1;delay1();io=0;delay(20);/>18msio=1;delay1();/20-40usdelay1();delay1();delay1();delay1();uchar receive_byte()/接收一個字節(jié)uchar i,temp,count;fo

36、r(i=0;i<8;i+)count=2;while(!io)&&count+)/等待50us低電平結(jié)束temp=0;delay1();delay1();delay1();delay1();if(io=1)temp=1;count=2;while(io)&&count+);if(count=1)break;data_byte<<=1;data_byte|=temp;return data_byte;void receive()/接收數(shù)據(jù)uchar T_H,T_L,R_H,R_L,check,num_check;uchar count;start();/

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論