環(huán)境監(jiān)測(cè)系統(tǒng)試驗(yàn)報(bào)告_第1頁(yè)
環(huán)境監(jiān)測(cè)系統(tǒng)試驗(yàn)報(bào)告_第2頁(yè)
環(huán)境監(jiān)測(cè)系統(tǒng)試驗(yàn)報(bào)告_第3頁(yè)
環(huán)境監(jiān)測(cè)系統(tǒng)試驗(yàn)報(bào)告_第4頁(yè)
環(huán)境監(jiān)測(cè)系統(tǒng)試驗(yàn)報(bào)告_第5頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余31頁(yè)可下載查看

下載本文檔

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

文檔簡(jiǎn)介

1、信息與通信工程學(xué)院?jiǎn)纹瑱C(jī)系統(tǒng)課程設(shè)計(jì)報(bào)告完成日期:2012年11月16日目 錄 1一、設(shè)計(jì)任務(wù)和要求 11.1 設(shè)計(jì)任務(wù) 11.2 性能指標(biāo) 1二、設(shè)計(jì)方案 22.1 .方案設(shè)計(jì) 22.1.1 單片機(jī)控制模塊的選擇論證 22.1.2 溫度濕度檢測(cè)模塊的選擇與論證 22.1.3 顯示模塊的選擇與論證 22.2 本設(shè)計(jì)采用方案及原理 3三、系統(tǒng)硬件設(shè)計(jì) 41.1 單片機(jī)最小系統(tǒng)設(shè)計(jì) 41.2 溫濕度采集電路 51.3 電源電路 61.4 光敏電阻接入電路 71.5 鍵盤(pán)電路 81.6 LCD顯示電路 81.7 報(bào)警電路 91.8 串行接口電路 104 .系統(tǒng)軟件設(shè)計(jì) 104.1 主程序設(shè)計(jì) 104

2、.2 LCD12864模塊程序 114.3 DHT11模塊程序 124.4 光敏電阻模塊程序 145 .調(diào)試及性能分析 155.1 調(diào)試過(guò)程中出現(xiàn)的問(wèn)題 155.2 性能分析 156 .心得體會(huì) 16參考文獻(xiàn) 17附錄1程序清單 18附錄2電路原理圖 24附錄3PCB圖 25附錄4硬件電路板圖 26一、設(shè)計(jì)任務(wù)和要求1.1 設(shè)計(jì)任務(wù)基本要求:(1)利用單片機(jī)控制傳感器采集環(huán)境溫濕度,光照強(qiáng)度等參數(shù),并在液晶屏上顯示環(huán)境參數(shù)值。(2)系統(tǒng)設(shè)有鍵盤(pán),可實(shí)現(xiàn)系統(tǒng)參數(shù)的設(shè)置。提高部分:(1)將上述環(huán)境數(shù)據(jù)記錄在 SD或TF卡上;(2)采集并顯示三軸加速度值;(3)無(wú)線傳輸所測(cè)環(huán)境參數(shù)。1.2 性能指標(biāo)

3、(1)溫度濕度光照強(qiáng)度顯示:用LCD12864進(jìn)行顯示。(2)環(huán)境溫度:?jiǎn)挝? C。(3)環(huán)境濕度:?jiǎn)挝?%RH(4)環(huán)境光強(qiáng):?jiǎn)挝?lux(5)鍵盤(pán)(6)報(bào)警一、設(shè)計(jì)萬(wàn)案2.1 .方案設(shè)計(jì)2.1.1 單片機(jī)控制模塊的選擇論證方案一:?jiǎn)纹瑱C(jī)選用 STC12C5A60S2這款單片機(jī)有第二串口,有 A/D轉(zhuǎn)換,有PWM/PCA 功能,有內(nèi)部EEPROMT內(nèi)部實(shí)現(xiàn)A/D轉(zhuǎn)換。方案二:采用XC9000系列的FPGA該類器件具有并行處理能力,能快速的響應(yīng)外部的 各種數(shù)字信號(hào)。綜上所述,單片機(jī)數(shù)學(xué)運(yùn)算功能較強(qiáng)。在程序相互調(diào)用方面, 處理方便靈活,性能穩(wěn)定,適合實(shí)際應(yīng)用。且單片機(jī)技術(shù)發(fā)展較為成熟,價(jià)格便宜,

4、而FPGA芯片價(jià)格較昂貴。則選擇方案一。2.1.2 溫度濕度檢測(cè)模塊的選擇與論證方案一:溫度濕度的采集模塊采用DHT11 DHT11是一款數(shù)字輸出的復(fù)合傳感器,包含一個(gè)電阻式感濕元件和 NTC式溫度檢測(cè)元件,可測(cè)2090%RH1度,誤差5%RH050攝氏度, 誤差2攝氏度。方案二:選用 DS18B20溫度傳感器和 HS1101濕度傳感器。DS18B20是一線式數(shù)字溫度傳感器,具有獨(dú)特的單線式接口方式,測(cè)量范圍在55c125C,誤差為± 0.5 C。最高精度可達(dá)0.0625 C。HS1101是電容式濕度傳感器,可測(cè)相對(duì)濕度范圍在 0%100%RH誤差為 ±2%RH綜上所述,雖

5、然方案二的測(cè)試范圍和精度都比較好,但DHT11綜合性比較強(qiáng),則選擇方案一。2.1.3 顯示模塊的選擇與論證方案一:采用12864液晶模塊顯示測(cè)得的數(shù)據(jù),可顯示較多組的數(shù)據(jù),字體較大,可清 晰讀數(shù),12864為四行八列中文顯示器,可以很清晰的顯示溫度濕度光照強(qiáng)度等的指標(biāo)。方案二:采用1602液晶模塊顯示所測(cè)數(shù)據(jù),1602液晶接線簡(jiǎn)單方便,但所顯示的不清楚,沒(méi)有條理性。綜上所述選擇方案一。2.2 本設(shè)計(jì)采用方案及原理電源模塊、顯示模按照系統(tǒng)設(shè)計(jì)的功能的要求,初步確定設(shè)計(jì)系統(tǒng)由單片機(jī)主控模塊、 塊、DHT11環(huán)境溫濕度檢測(cè)模塊、光敏電阻模塊、報(bào)警、按鍵等模塊組成。原理框圖:蜂鳴器*報(bào)警電路12864

6、液晶顯示電路三、系統(tǒng)硬件設(shè)計(jì)3.1單片機(jī)最小系統(tǒng)設(shè)計(jì)Pl .0之1 E鼠科第卻40JPl.lDI.J Pl.4 Pl.:DI.6產(chǎn) l.U.弛LQU PlLADCl Pl.iDC P1.3.ADC3 P1.4.AIX:4 口If. AI心 Pl.tf.ADCtf Pl: ADC一P3.C-.JUO), uv ADQ.PO.O ADI PO I AD2P0.2 AD3.P03 AD4,P6.4 AD5,PO.5 ADdPOd 皿7m了 EX_LT>叫 M.l PC'.2 P0.3X 4 K 5Pl.-RFTRXDM 6M.7TTOaP3.1.TXD Pj IffiTO P3.11N

7、TL 於4 Tt PS.i.Tl P女也斛飛 瞌* EJ> XTAL-<T C匯LEnrron*rm Tvi尿A11PZ* A14P1.4AL;/. Pl, 5 AUPi.4 All 21.3 A1QP1J._P2 "P1$T1%5MT%典4中P13鼻P2 2L鳥(niǎo) 工守XT AL IA9.P2.1AB PIO_£2 1U1STC12C *注KK*5單片機(jī)圖 3-1-1XI11晶振電路圖 3-1-2RL復(fù)位電路圖 3-1-3采用STC12C5A60S彈片機(jī),P0 口接上拉電阻,10K*8排阻,晶振電路采用 11.0592M, 33pF電容,單片機(jī)晶振的作用是為系統(tǒng)

8、提供基本的時(shí)鐘信號(hào)。通常一個(gè)系統(tǒng)共用一個(gè)晶振,便于各部分保持同步。有些通訊系統(tǒng)的基頻和射頻使用不同的晶振,而通過(guò)電子調(diào)整頻率的方法保持同步。3.2 溫濕度采集電路QHTIL溫濕度傳感器電路圖 3-2-1單總線數(shù)字溫濕度傳感器 DHT11這款傳感器由廣州奧松電子科技有限公司研發(fā),與單片機(jī)的通信十分簡(jiǎn)潔方便,無(wú)需外接時(shí)鐘信號(hào),通信如圖發(fā)F 片 HL AT39S5?發(fā)起通信和接收數(shù)據(jù)圖2-5年總糙數(shù)字血濕度特建制DHT11與出H機(jī)誨常除此之外,它還有很多突出的優(yōu)點(diǎn)(1)溫濕度傳感器的一體化結(jié)構(gòu)能同時(shí)對(duì)相對(duì)濕度和溫度進(jìn)行測(cè)量,并以數(shù)字信號(hào)輸出,從而減少用戶對(duì)信號(hào)的預(yù)處理負(fù)擔(dān)(2)獨(dú)特的單總線數(shù)據(jù)傳輸線

9、協(xié)議使得讀取傳感器更加便捷,而且還有全部校準(zhǔn)數(shù)據(jù)字節(jié),編碼方式為8位二進(jìn)制數(shù)。(3) 40位二進(jìn)制數(shù)據(jù)輸出,高位先出,格式為:濕度整數(shù)部分8位,小數(shù)部分8位;溫度整數(shù)部分8位,小數(shù)部分8位,最后8位為校驗(yàn)字節(jié),為前32位數(shù)據(jù)的和。(4)寬工作電壓,幾乎與 AT89S52的電壓相同,為35.5V ,而且功耗較低,通信最大電流為 2.5mA。其簡(jiǎn)要的性能參數(shù)如下表所示:表zt溫濕度傳感患Dffni性能型數(shù)惻顯花用測(cè)昵精以肥盤(pán)精度分辨率W裝2K0-50 rC±*2V11 針中排直插從表中可以看出,它的測(cè)量范圍較小,但對(duì)實(shí)驗(yàn)或民用已經(jīng)足夠了,如果要工業(yè)使用的話,可選用該公司的同類工業(yè)級(jí)產(chǎn)品A

10、M323,測(cè)量范圍為 -55.0+125.0 度,測(cè)量范圍為0.0100.0%RH,并且可以和 DHT11完全互換。按照說(shuō)明書(shū)的要求,DHT11與單片機(jī)的連接距離小于20米時(shí),需要在 VCC口 DATA弓|腳之間接一個(gè)5K左右的電阻,則電路如圖所示。JIII5 IV<C 13.3 電源電路VCC電源電路圖 3-3-1用J1 USB供電,D1為上電指示燈,J2為六腳按鍵,用來(lái)控制板子上電。3.4 光敏電阻接入電路(1)光電流、亮電阻。光敏電阻器在一定的外加電壓下當(dāng)有光照射時(shí),流過(guò)的電流稱為光電流,外加電壓與光電流之比稱為亮電阻,常用“100LX”表示。(2)暗電流、暗電阻。光敏電阻在一定的

11、外加電壓下,當(dāng)沒(méi)有光照射的時(shí)候,流過(guò)的電流稱為暗電流。外加電壓與暗電流之比稱為暗電阻,常用“0LX”表示。(3)靈敏度。靈敏度是指光敏電阻不受光照射時(shí)的電阻值(暗電阻)受光照射時(shí)的電阻值(亮電阻)的相對(duì)變化值。(4)在一定外加電壓下,光敏電阻的光電流和光通量之間的關(guān)系。不同類型光敏電阻光照特性不同,但光照特性曲線均呈非線性。因此它不宜作定量檢測(cè)元件,這是光敏電阻的不足之處。一般在自動(dòng)控制系統(tǒng)中用作光電開(kāi)關(guān)。(5)光敏電阻的光譜特性光譜特性與光敏電阻的材料有關(guān)。硫化鉛光敏電阻在較寬的光譜范圍內(nèi)均有較高的靈敏度,峰值在紅外區(qū)域,化鎘、硒化鎘的峰值在可見(jiàn)光區(qū)域。因此,在選用光敏電阻時(shí),應(yīng)把光敏電阻的

12、材料和光源的種類結(jié)合起來(lái)考慮,才能獲得滿意的效果。(6)光敏電阻的伏安特性:在一定照度下,加在光敏電阻兩端的電壓與電流之間的關(guān)系稱為伏安特性。在給定偏壓下 ,光照度較大,光電流也越大。在一定的光照度下,所加的電壓越大,光電流越大,而且無(wú)飽和現(xiàn)象。但是電壓不能無(wú)限地增大,因?yàn)槿魏喂饷綦娮瓒际茴~定功率、最高工作電和額定電流的限制。超過(guò)最高工作電壓和最大額定電流,可能導(dǎo)致光敏電阻永久性損壞。(7)當(dāng)光敏電阻受到脈沖光照射時(shí),光電流要經(jīng)過(guò)一段時(shí)間才能達(dá)到穩(wěn)定值,而在停止光照后,光電流也不立刻為零,這就是光敏電阻的時(shí)延特性。由于不同材料的光敏,電阻時(shí)延特性不同,所以它們的頻率特性也不同,硫化鉛的使用頻率

13、比硫化鎘高得多,但多數(shù)光敏電阻的時(shí)延都比較大,所以,它不能用在要求快速響應(yīng)的場(chǎng)合。3.5 鍵盤(pán)電路S1至 至 _OS4TJrJ 7 0GND 'I |M鍵盤(pán)圖 3-5-1本設(shè)計(jì)的控制輸入部分為簡(jiǎn)單的四個(gè)按鍵:由于單片機(jī)默認(rèn)狀態(tài)下端口引腳為高電平,可以接上按鍵與地相連。單片機(jī)檢測(cè)按鍵端口的電平情況來(lái)決定是否有按鍵按下和哪個(gè)按鍵被按下,抖動(dòng)問(wèn)題采用軟件延時(shí)方式,減少硬件電路設(shè)計(jì),電路如圖所示。3.6 LCD顯示電路由引腳的應(yīng)用考慮,LCD接為串行顯示,當(dāng)模塊的 PSB腳接低電平時(shí),模塊即進(jìn)入串行接口模式。串行模式使用串行數(shù)據(jù)線 SID與串行時(shí)鐘線SCL”i傳送數(shù)據(jù),即構(gòu)成2線串行模式。3L

14、- EL-SET CS2 CS1/PSW D7 塊 DJD4 a D2 DI DC ENRS XL VCC <ihDVCCH LCD顯示電路CdmcnfMr.t 1圖 3-6-13.7 報(bào)警電路圖 3-7-1根據(jù)蜂鳴器的參數(shù),電壓 1.31.5V ,電流2080mA電阻6-8Q知,可用選用集成放大芯片LM386驅(qū)動(dòng),但更經(jīng)濟(jì)的是用一個(gè)三極管9012或8550驅(qū)動(dòng)即可,電路如圖所示。3.8串行接口電路RIB: R.21XT12;T2KR.1OITTR2CITTTL-OUTTCITTC2-C2 -V-串行接口電路圖 3-8-1四.系統(tǒng)軟件設(shè)計(jì)4.1主程序設(shè)計(jì)void main() (ucha

15、r k,j;LCD_init();LCD_dis_code(0,1,lcd);LCD_dis_code(1,0,lcd1);LCD_dis_code(2,0,lcd2);LCD_dis_code(3,0,lcd3); while(1)read_io();/讀取溫濕度數(shù)據(jù)clear_gcrom();/濕度f(wàn)or(k=0; k<2; k+)(lcd_pos(3,k+3);write_data(str1k);clear_gcrom();/溫度f(wàn)or(j=0; j<2; j+)(lcd_pos(2,j+2);write_data(str2j);)delay(500);)4.2 LCD128

16、64模塊程序 void LCD_dis_code(uchar x,uchar y,uchar code *s) 寫(xiě)地址寫(xiě)數(shù)據(jù)write_cmd(addr_tab8*x+y); while(*s>0)write_data(*s); /s+;)/* 初始化 LCD*/void Lcd_init(void)delay(50);write_cmd(0x30);/選擇基本指令集delay(1);write_cmd(0x30);/選才1 8bit數(shù)據(jù)流delay(1);write_cmd(0x0c);/開(kāi)顯示(無(wú)游標(biāo)、不反白)delay(1);write_cmd(0x01);/清除顯示,并且設(shè)定地址

17、指針為00Hdelay(30);)/* 串行發(fā)送一個(gè)字節(jié) void send_byte(uchar byte) uchar i;for(i=0;i<8;i+)SCLK = 0;byte=byte<<1; /*/SID = CY;SCLK = 1;SCLK = 0;)/左移一位先發(fā)送高位的數(shù)據(jù)移出的位給SID/上升沿觸發(fā)發(fā)送/* 寫(xiě)指令 */void write_cmd(uchar cmd) (delay(1);SID = 0;SCLK = 0; delay(5);P0 = cmd;delay(5);SCLK = 1;delay(5);SCLK = 0;/* 寫(xiě)數(shù)據(jù) */voi

18、d write_data(uchar dat) (delay(1);SID = 0;SCLK = 0;P0 = dat; delay(5); SCLK = 1; delay(5);SCLK = 0;/* 延時(shí)子程序*/void delay(uint a)(uint i;while(a-)(for(i=0; i<113; i+);4.3 DHT11模塊程序uchar receive_byte()/接收一個(gè)字節(jié)(uchar i,temp;for(i=0;i<8; i+)(count = 2;while(!io) && count+)/temp = 0;delay1();

19、delay1();delay1();if (io=1)(temp = 1;count = 2;while(io && count+);elsetemp = 0;data_byte<<=1;data_byte=temp;等待50us低電平結(jié)束,并防止死循環(huán)return (data_byte);/* 開(kāi)始信號(hào) void read_io()/ (io = 0; delay(18);/io = 1;DATA*/開(kāi)始信號(hào),讀數(shù)據(jù)并校驗(yàn)主機(jī)拉低18ms總線由上拉電阻拉高 主機(jī)延時(shí)20usdelay1();delay1();delay1();delay1();io = 1;/ 主

20、機(jī)設(shè)置為輸入高電平,判斷從機(jī)響應(yīng)信號(hào)if(!io)(count = 2;while(!io)&&count+); 判斷DHT11發(fā)出80us低電平響應(yīng)信號(hào)是否結(jié)束 count = 2;while(io && count+);/ 判斷DHT11拉高總線 80us高電平是否結(jié)束RH_temp = receive_byte();RL_temp = receive_byte();TH_temp = receive_byte();TL_temp = receive_byte();CK_temp = receive_byte();io = 1;num = (RH_temp

21、+ RL_temp + TH_temp + TL_temp);/數(shù)據(jù)校驗(yàn)if(num = CK_temp) (RH_data = RH_temp;RL_data = RL_temp;TH_data = TH_temp;TL_data = TL_temp; CK_data = CK_temp;/濕度整數(shù)部分str10 = (char)(0x30 + RH_data/10);str11 = (char)(0x30 + RH_data%10);/溫度整數(shù)部分str20 = (char)(0x30 + TH_data/10);str21 = (char)(0x30 + TH_data%10); /*E

22、 n 口*/4.4 光敏電阻模塊程序unsigned char adc0804( void ) /讀 AD0804子程序 unsigned char addata,i; rd=1;wr=1;/int1=1; /讀 ADC0804前準(zhǔn)備P1=0xff; /P1全部置一準(zhǔn)備cs=0;wr=0;wr=1; / 啟動(dòng) ADC0804開(kāi)始測(cè)電壓rd=0; /開(kāi)始讀轉(zhuǎn)換后數(shù)據(jù)i=i; i=i; /無(wú)意義語(yǔ)句,用于延時(shí)等待ADC0804讀數(shù)完畢addata=P1;/讀出的數(shù)據(jù)賦與addate rd=1;cs=1;/讀數(shù)完畢addata=addata/2;return(addata);/返回最后讀出的數(shù)據(jù)五.

23、調(diào)試及性能分析5.1 調(diào)試過(guò)程中出現(xiàn)的問(wèn)題首先,在調(diào)試時(shí),先下載一個(gè) LCD顯示程序,但LCD沒(méi)有結(jié)果,經(jīng)過(guò)測(cè)量,發(fā)現(xiàn)由于滑 動(dòng)變阻器的阻值太大,導(dǎo)致 LCD背光太低,致使 LCD沒(méi)有顯示,把滑動(dòng)變阻器阻值調(diào)小后, 則程序出現(xiàn)結(jié)果。5.2 性能分析此系統(tǒng)實(shí)現(xiàn)的是環(huán)境溫濕度光照強(qiáng)度的顯示,以及報(bào)警功能,按鍵設(shè)計(jì)等。單總線數(shù)字溫度、濕度傳感器,應(yīng)用單片機(jī)原理,LCD顯示技術(shù),實(shí)現(xiàn)了實(shí)驗(yàn)室多點(diǎn)溫濕度參數(shù)的實(shí)時(shí)顯示和超限報(bào)警系統(tǒng),保障了實(shí)驗(yàn)室環(huán)境的可靠性,有效地提高了實(shí)驗(yàn)成功率。系統(tǒng)集成度高,操 作容易,可靠性好,具有較高的實(shí)用價(jià)值,實(shí)踐表明,該系統(tǒng)能夠?qū)囟?、濕度進(jìn)行檢測(cè), 適合于對(duì)數(shù)據(jù)采樣頻率要求

24、不是很高的應(yīng)用場(chǎng)合六.心得體會(huì)為了設(shè)計(jì)出基于單片機(jī)的環(huán)境溫濕度檢測(cè)系統(tǒng),搜集了大量的芯片手冊(cè), 查閱了較多的圖書(shū)資料,復(fù)習(xí)了所學(xué)的課本教材,分兩個(gè)階段對(duì)系統(tǒng)進(jìn)行了設(shè)計(jì)一一前期的基本設(shè)計(jì)和后 期的探索設(shè)計(jì)。前期的設(shè)計(jì),在種類繁多的溫度和濕度傳感器中選定了由廣州奧松公司生 產(chǎn)的單總線數(shù)字溫濕度傳感器DHT11這款傳感器的優(yōu)勢(shì)在于通信協(xié)議相對(duì)來(lái)說(shuō)比較簡(jiǎn)潔,產(chǎn)品價(jià)格低廉,這對(duì)設(shè)計(jì)低成本,高精度的溫濕度檢測(cè)系統(tǒng)十分有必要。對(duì)于功能方面的要求,在調(diào)查了市場(chǎng)上的同類產(chǎn)品之后,根據(jù)實(shí)際需求來(lái)設(shè)計(jì)的。市場(chǎng)上的溫濕度檢測(cè)系統(tǒng)的功能為,檢測(cè)并顯示溫濕度數(shù)據(jù), 設(shè)置報(bào)警點(diǎn)并報(bào)警, 與上層監(jiān)控設(shè)備通信。因此設(shè)計(jì)正 是,

25、從這幾個(gè)方面的要求出發(fā),利用單片機(jī)本身的特點(diǎn),來(lái)實(shí)現(xiàn)系統(tǒng)的功能。后期的探索設(shè)計(jì),提升了系統(tǒng)的性能。由于第一次設(shè)計(jì)基于單片機(jī)的系統(tǒng),雖然完成了基本的設(shè)計(jì)要求,但在設(shè)計(jì)過(guò)程中遇到了許多硬件和軟件問(wèn)題還沒(méi)有完全解決,設(shè)計(jì)的過(guò)程也是模塊式的,沒(méi)有完整系統(tǒng)的總體規(guī)劃,后期的探索設(shè)計(jì)只是從理論上進(jìn)行了可行性分析,沒(méi)有做出相應(yīng)的硬件并調(diào)試符合預(yù)期構(gòu)想。因此,以后還必須加強(qiáng)單片機(jī)系統(tǒng)設(shè)計(jì)的能力,畢業(yè)設(shè)計(jì)只是一個(gè)淺薄的入門(mén)。當(dāng)然,在設(shè)計(jì)過(guò)程中,應(yīng)虛心聽(tīng)取他人的建議和意見(jiàn),對(duì)解決設(shè)計(jì)過(guò)程中的問(wèn)題都很有幫助。展望未來(lái),最終的系統(tǒng)應(yīng)該為基于單片機(jī)的多功能環(huán)境檢測(cè)系統(tǒng),它不僅可以檢測(cè)環(huán)境的溫度、濕度、照度等所需的環(huán)境變

26、量并顯示在液晶屏幕上,可以根據(jù)設(shè)定的限值進(jìn)行報(bào)警提示,可以以時(shí)間順序存儲(chǔ)大量的檢測(cè)數(shù)據(jù),并根據(jù)需要發(fā)送給上層分析處理設(shè)備,還可以用紅外遙控實(shí)行遠(yuǎn)程無(wú)線控制,除此之外,電源系統(tǒng)可以適應(yīng)各種供電場(chǎng)合,并存儲(chǔ)部分電能,斷電后確保系統(tǒng)可繼續(xù)工作一定時(shí)間。參考文獻(xiàn)1李瀚孤.簡(jiǎn)明電路分析.北京:高等教育出版社 20022康光華.電子技術(shù)基礎(chǔ)-模擬部分.北京:高等教育出版社 19793康光華.電子技術(shù)基礎(chǔ)-數(shù)字部分.北京:高等教育出版社 19804馬金龍.信號(hào)與系統(tǒng).北京:科學(xué)出版社 20065唐穎.單片機(jī)原理與應(yīng)用.北京:北京大學(xué)出版社 20086鄭莉.董淵.張瑞豐.C+語(yǔ)言程序設(shè)計(jì).北京:清華大學(xué)出版社

27、20047唐文彥.傳感器.北京:機(jī)械工業(yè)出版社20108陳爾紹等.電子控制電路實(shí)例.北京:電子工業(yè)出版社 20049姜威.實(shí)用電子系統(tǒng)設(shè)計(jì)基礎(chǔ).北京:北京理工大學(xué)出版社200810毛興武等.新型電子器件及其應(yīng)用技術(shù) .北京:中國(guó)電力出版社 201011孟貴華.電子元器件選用入門(mén).北京:機(jī)械工業(yè)出版社 200412黎小桃等.Protel99入門(mén)與提高.北京:電子工業(yè)出版社 200913郭強(qiáng).液晶顯示模塊應(yīng)用與調(diào)試 .北京:電子工業(yè)出版社 201014陳濤.單片機(jī)應(yīng)用及 C51程序設(shè)計(jì).北京:機(jī)械工業(yè)出版社 200815鐘睿.MCS-51單片機(jī)原理及應(yīng)用開(kāi)發(fā)技術(shù).北京:中國(guó)鐵道出版社 2006附錄

28、1程序清單/*DHT11與 12864LCD*/*DHT11/*總線接P1A0 晶振 11.0592M*/*/*/#include <reg52.h>#define uchar unsigned char#define uint unsigned intuchar lcd_x,lcd_y,data_byte=0,count;uint TH_data,TL_data,RH_data,RL_data,CK_data;uint TH_temp,TL_temp,RH_temp,RL_temp,CK_temp;uchar num;void read_io();void delay(uint

29、a);/延時(shí)子函數(shù)void lcd_pos(unsigned char X,unsigned char Y);void LCD_init();/LCD初始化程序void LCD_dis_code(uchar x,uchar y,uchar code *s);/顯示函數(shù)void write_data(uchar dat);/ 寫(xiě)數(shù)據(jù)void write_cmd(uchar cmd);/ 寫(xiě)指令void delay1();/10us 延時(shí)/* 漢字地址表*/ uchar code addr_tab=0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,/0x90,0x91

30、,0x92,0x93,0x94,0x95,0x96,0x97,/0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,/第一行漢字位置第二行漢字位置第三行漢字位置0x98,0x99,0x9a,0x9b,0x9c,0x9d,0x9e,0x9f,/第四行漢字位置);sbit SID = P0A1;/讀寫(xiě)信號(hào)sbit SCLK = P0A0;/ 串行時(shí)鐘信號(hào)sbit io = P1A3;/DHT11 總線uchar code lcd=" uchar code lcd1= uchar code lcd2= uchar code lcd3=環(huán)境監(jiān)測(cè)系統(tǒng)");

31、溫度:C");濕度:%RH"光強(qiáng):lux"uchar str1=" "uchar str2=" "/* 主程序 */ void main()uchar k,j;LCD_init();LCD_dis_code(0,1,lcd);LCD_dis_code(1,0,lcd1);LCD_dis_code(2,0,lcd2);LCD_dis_code(3,0,lcd3); while(1) read_io();/讀取溫濕度數(shù)據(jù)/clear_gcrom();/濕度f(wàn)or(k=0; k<2; k+)lcd_pos(3,k+3);wr

32、ite_data(str1k);/clear_gcrom();/溫度f(wàn)or(j=0; j<2; j+) lcd_pos(2,j+3);write_data(str2j);delay(500);/*延時(shí)程序void delay1()/ */延時(shí)10usunsigned char i;for(i=0; i<3; i+);/*顯示程序 */void lcd_pos(unsigned char X,unsigned char Y) unsigned char pos;if ( X = 1 )pos = 0x80 ; else if ( X = 2 ) pos = 0x90 ; else i

33、f ( X = 3 )pos = 0x88 ; else pos = 0x98 ; 數(shù)據(jù)指針=80+地址變量write_cmd(Y | pos); / /*DHT11模塊 */uchar receive_byte()/接收一個(gè)字節(jié)uchar i,temp;for(i=0;i<8; i+) 等待50us低電平結(jié)束,并防止死循環(huán)count = 2;while(!io) && count+)/temp = 0;delay1();delay1();delay1();if (io=1)temp = 1;count = 2;while(io && count+); e

34、lsetemp = 0;data_byte<<=1;data_byte|=temp;return (data_byte);*/開(kāi)始信號(hào),讀數(shù)據(jù)并校驗(yàn)/*開(kāi)始信號(hào)void read_io()/ io = 0;delay(18);/主機(jī)拉低 18msio = 1;/DATA 總線由上拉電阻拉高主機(jī)延時(shí)20usdelay1();delay1();delay1();delay1();io = 1;/主機(jī)設(shè)置為輸入高電平,判斷從機(jī)響應(yīng)信號(hào)if(!io)(count = 2;while(!io)&&count+); 判斷DHT11發(fā)出80us低電平響應(yīng)信號(hào)是否結(jié)束 count

35、= 2;while(io && count+);/ 判斷DHT11拉高總線 80us高電平是否結(jié)束RH_temp = receive_byte();RL_temp = receive_byte();TH_temp = receive_byte();TL_temp = receive_byte();CK_temp = receive_byte();io = 1;num = (RH_temp + RL_temp + TH_temp + TL_temp);/數(shù)據(jù)校驗(yàn)if(num = CK_temp) (RH_data = RH_temp;RL_data = RL_temp;TH_da

36、ta = TH_temp;TL_data = TL_temp;CK_data = CK_temp;/濕度整數(shù)部分str10 = (char)(0x30 + RH_data/10);str11 = (char)(0x30 + RH_data%10);/溫度整數(shù)部分str20 = (char)(0x30 + TH_data/10);str21 = (char)(0x30 + TH_data%10);/*E n 口*/*12864模塊程序*/*void clear_gcrom() (uchar i,j,k;lcd_x = 0x80;lcd_y = 0x80;write_cmd(0x34);for(i = 0 ; i < 2 ; i+)/ 上下兩屏幕(for(j = 0 ; j < 32 ; j+)(write_cmd(lc

溫馨提示

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