




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、單片機原理及系統(tǒng)課程設(shè)計專 業(yè): 自動化 班 級: 動 091 姓 名: 程維洲 學 號: 200908409 指導教師: 路小娟 評語:平時(40)修改(30)報告(30)總成績蘭州交通大學自動化與電氣工程學院2012 年 7月 1日目 錄1引言12方案設(shè)計12.1 總體方案設(shè)計12.2 系統(tǒng)組成及框圖13硬件電路設(shè)計2 溫度測量電路設(shè)計2 濕度測量電路設(shè)計2 按鍵電路設(shè)計34 軟件設(shè)計34.1 主程序流程圖34.2 溫度模塊程序設(shè)計44.3 濕度模塊程序設(shè)計54.4 顯示子程序設(shè)計55總結(jié)56參考文獻57 附錄67.1 附錄A67.2 附錄B61引言本次課程設(shè)計主要基于AT89C51單片機
2、,開發(fā)環(huán)境溫度及濕度檢測及控制系統(tǒng)。該系統(tǒng)采用AT89C51單片機作為控制器,DS18B20作為溫度傳感器,HS1101作為濕度傳感器。系統(tǒng)主要功能如下:()對溫度、濕度進行測量;()溫度及濕度的顯示;()設(shè)定預(yù)期溫度與濕度值并顯示。關(guān)鍵詞:AT89C51,溫度及濕度檢測,LCD顯示。2方案設(shè)計本章從控制系統(tǒng)的總體構(gòu)成及原理框圖對系統(tǒng)進行了總體分析說明,控制系統(tǒng)組成以后,主要通過控制器、傳感器及執(zhí)行器對控制變量進行分析和處理。2.1 總體方案設(shè)計本系統(tǒng)采用AT89C51單片機作為微處理器,DS18B20作為溫度傳感器對溫度進行檢測,HS1101作為濕度傳感器與NE555組成濕度測量模塊,使用L
3、M016L對測得的溫度及濕度值進行顯示,使用按鍵對溫度及濕度的設(shè)定值進行修改。 系統(tǒng)組成及框圖系統(tǒng)主要有溫度測量模塊、濕度測量模塊、顯示模塊、及按鍵模塊。其原理框圖如圖21所示。AT89C51溫度測量LCD液晶顯示按鍵濕度圖. 系統(tǒng)組成框圖3硬件電路設(shè)計本溫度及濕度控制系統(tǒng)使用AT89C51作為控制器,用DS18B20實現(xiàn)對溫度測測量,用HS1101及NE555實現(xiàn)的濕度的測量,并采用LM016L將采集的的數(shù)據(jù)顯示?,F(xiàn)將系統(tǒng)硬件設(shè)計表述如下。3.1 溫度測量電路設(shè)計采用DS18B20數(shù)字溫度傳感器測量溫度, DS18B20與單片機是單線雙向通信。其連接電路如圖3.1所示。圖3. DS18B20
4、的測溫電路(DQ端接51的) 濕度測量電路設(shè)計圖 NE555測濕電路HS1101實際上相當于一個可變電容,它會因外部環(huán)境濕度的變化而致使電容值變化,濕度測量模塊采用HS1101及NE555一起組成,將該HS1101置于NE555震蕩電路中,將電容值的變化轉(zhuǎn)化為與之呈反比的電壓頻率信號,可直接被計算機采集。表3.1 等效電容值與相對濕度之間的數(shù)值關(guān)系相對濕度RH(%)電容值C(PF)相對濕度RH(%)電容值C(PF)01636018310166701862017080191301739019540176100202501793.3 按鍵電路設(shè)計系統(tǒng)可以調(diào)節(jié)設(shè)定的溫度及濕度值,我們可以通過四個按鍵
5、來進行實現(xiàn),前兩個按鍵選擇是溫度設(shè)定還是濕度設(shè)定,后兩個按鍵實現(xiàn)加一和減一操作,設(shè)計電路圖如圖3.3所示。圖3.3 按鍵電路其工作原理如下:當閉合溫度控制開關(guān),可以通過“加”、“減”按鈕來實現(xiàn)目標溫度值的加一或者減一;同理閉合濕度開關(guān),通過“加”、“減”按鈕來實現(xiàn)目標濕度值的加一或者減一。而且,當兩個開關(guān)同時閉合時,可以實現(xiàn)溫度和濕度的同加一或同減一。4 軟件設(shè)計本章主要對各個功能模塊的程序流程進行說明。 主程序流程圖主程序的主要功能是負責讀出并處理DS18B20的測量溫度值,讀出測濕電路的結(jié)果,并將溫度及濕度進行實時顯示,直到需要退出該系統(tǒng)時結(jié)束并退出。程序流程圖如圖4.1所示 :開始允許外
6、部中斷和定時器T0、T1中斷1602初始化顯示及T0、T1初始化設(shè)置讀取溫度值溫度顯示讀取濕度值 N濕度顯示是否結(jié)束是否結(jié)束Y結(jié)束圖4.1 主程序流程圖 溫度模塊程序設(shè)計溫度模塊主要包括DS18B20的初始化以及與單片機之間的數(shù)據(jù)處理。DS18B20與微處理器之間的通信比較復雜,每一次通信之前必須進行復位,復位的時間、等待時間、回應(yīng)時間應(yīng)嚴格按時序編程。 濕度模塊程序設(shè)計濕度模塊主要是利用定時器T0和T1對555的輸出頻率進行測量,進而得到相對濕度值。在該塊程序設(shè)計中,我們選取T0做定時器,定時時間是50ms,而選擇T1做計數(shù)器,每當T0定時時間到就讀取T1的計數(shù)值,然后將T1的計數(shù)值乘以20
7、就可得到555芯片的輸出頻率,可進行數(shù)據(jù)處理從而得到相對濕度值。 顯示子程序設(shè)計顯示子程序包括1602的初始化,以及對溫度和濕度值的顯示。初始化時第一行顯示“wend”,第二行顯示“shid”,然后根據(jù)溫度的測得值及其正負將測得溫度值和設(shè)定溫度值在第一行,并將測得的頻率值裝換為相對濕度值,并將其和濕度設(shè)定值顯示在第二行。5總結(jié)在設(shè)計中,通過對硬件電路不斷的處理,使得硬件部分比較完善。另外,在電路中加入了限流電阻,保證了各個器件的使用壽命??傊?,硬件電路的設(shè)計達到了抗干擾,較高精度的目的。軟件部分中,對程序也做了數(shù)次修改,最終在Keil uVision3中實現(xiàn)了成功的模擬,進一步驗證了設(shè)計思路。
8、本系統(tǒng)實現(xiàn)的功能如下。1. 對溫室大棚溫度和濕度進行實時測量;2. 通過LCD顯示屏分別進行溫度和濕度顯示;3對溫度和濕度的設(shè)定值通過按鍵可以進行調(diào)節(jié)。本系統(tǒng)的優(yōu)點有以下幾點。 1. 結(jié)構(gòu)簡單,容易實現(xiàn); 2. 造價低廉,性價比高;3達到了一定的精度要求。6參考文獻1J.電子技術(shù)與應(yīng)用,2000(6).2單曉鋒,楊建紅.電容型溫濕度傳感器模擬計算與分析J.半導體技術(shù),2010(11).3M.北京:清華大學出版社,2004.7 附錄7.1 附錄A系統(tǒng)仿真電路圖如圖5.1所示。在調(diào)試過程中,通過改變溫度傳感器的數(shù)值,來檢驗系統(tǒng)中溫度模塊是否運行正常。經(jīng)過測試溫度模塊可以正常的顯示,并且具有一定的快
9、速性。通過改變NE555振蕩電路中C3的容值(即HS1101的等效容值),來檢驗濕度摸快是否可以正常工作,經(jīng)過測試濕度模塊可以正常工作。并且對四個按鍵(即溫度、濕度、+、-)的功能進行了測試,都實現(xiàn)了應(yīng)有的功能。圖5.1 系統(tǒng)仿真調(diào)試圖7.2 附錄B#include#define uchar unsigned char#define uint unsigned intsbit DQ=P27;/DS18B20與單片機連接口sbit RS=P30;/LCD1602控制端與單片機的連接sbit RW=P31;sbit EN=P37;sbit ST=P00;/按鍵接口sbit SH=P01;sbit
10、Sjia=P32;sbit Sjian=P33;uchar code str1=Wend:;uchar code str2=Shid:;uchar data disdata16;uchar data disdata24;uint tvalue;/溫度值uchar tflag;/溫度正負標志uint tem0,tem1;uint temp0,temp1;uint f=0;int hhhh=0;int tsheding=20;/設(shè)置溫度值int hsheding=40;/設(shè)置濕度值void zhongd0() interrupt 0 /外部中斷0:加設(shè)置 if(ST=1) tsheding+; /
11、溫度值加1 if(SH=1) hsheding+; /濕度值加1 void zhongd1() interrupt 2 /外部中斷1:減設(shè)置 if(ST=1) tsheding-; /溫度值減1 if(SH=1) hsheding-; /濕度值減1 void timer0() interrupt 1 /T0定時中斷 TR0=0; TR1=0; TL0=0xB0;/重裝值,定時50000us TH0=0x3C; tem0=TL1;/讀數(shù) tem1=TH1; TL1=0x00;/計數(shù)器1清零 TH1=0x00;TR0=1; TR1=1; void timer1() interrupt 3 /T1計
12、數(shù)中斷TR0=0; TR1=0; TL0=0xB0;/重裝值,定時50000us TH0=0x3C; TL1=0x00;/計數(shù)器1清零 TH1=0x00;TR0=1; TR1=1; void init_timer() TMOD=0x51; TL0=0xB0;/定時器0初值定時50000us TH0=0x3C; TL1=0x00;/定時器1清零 TH1=0x00; TR0=1;/T0開始計時 TR1=1;/T1開始計數(shù) void delay1ms(uint ms)/延時1毫秒 uint i,j; for(i=0;ims;i+) for(j=0;j0;i-) DQ=0; /給脈沖信號 dat=1;
13、 DQ = 1; /給脈沖信號 if(DQ) dat|=0x80; delay_18B20(10); return(dat);void ds1820wr(uchar wdata)/DS18B20寫數(shù)據(jù) uchar i=0; for(i=8;i0;i-) DQ=0; DQ=wdata&0x01; delay_18B20(10); DQ=1; wdata=1; void read_temp()/讀取溫度值并轉(zhuǎn)換 uchar a,b; ds1820rst(); ds1820wr(0xcc);/跳過讀序列號 ds1820wr(0x44);/啟動溫度轉(zhuǎn)換 ds1820rst(); ds1820wr(0x
14、cc);/跳過讀序列號 ds1820wr(0xbe);/讀取溫度 a=ds1820rd(); b=ds1820rd(); tvalue=b; tvalue=8; tvalue=tvalue|a; if(tvalue0x0fff) tflag=0; else tvalue=tvalue+1; tflag=1; tvalue=tvalue*(0.625);/溫度值擴大10倍,精確到1位小數(shù)/*/void ds1820disp1()/溫度值顯示 uchar flagdat; uchar flagtsheding; disdata10=tvalue/1000+0x30;/百位數(shù) disdata11=t
15、value%1000/100+0x30;/十位數(shù) disdata12=tvalue%100/10+0x30;/個位數(shù) disdata13=tvalue%10+0x30;/小數(shù)位 if(tshedinghhhh)/判斷溫度設(shè)定值是正是負 flagtsheding=-; disdata14=(tsheding+1)/10+0x30; disdata15=(tsheding+1)%10+0x30; else flagtsheding= ; disdata14=tsheding/10+0x30; disdata15=tsheding%10+0x30; if(tflag=0) flagdat=0x20;
16、/正溫度不顯示符號 else flagdat=0x2d;/負溫度顯示負號:- if(disdata10=0x30) disdata10=0x20;/如果百位為0,不顯示 if(disdata11=0x30) disdata11=0x20;/如果百位為0,十位為0也不顯示 wr_com(0x85); wr_dat(flagdat);/顯示符號位 wr_com(0x86); wr_dat(disdata10);/顯示百位 wr_com(0x87); wr_dat(disdata11);/顯示十位 wr_com(0x88); wr_dat(disdata12);/顯示個位 wr_com(0x89);
17、 wr_dat(0x2e);/顯示小數(shù)點 wr_com(0x8a); wr_dat(disdata13);/顯示小數(shù)位 wr_com(0x8b);/顯示設(shè)定溫度值 wr_dat(); wr_com(0x8c); wr_dat(flagtsheding); wr_com(0x8d); wr_dat(disdata14); wr_com(0x8e); wr_dat(disdata15); wr_com(0x8f); wr_dat();/*/void ds1820disp2()/濕度值顯示 f=tem1*256+tem0; f=f*20; if(6033=f)&(f=7351) if(7224f)&
18、(f=7351) temp0=0;temp1=(7351-f)*10/127; if(7100f)&(f=7224) temp0=1;temp1=(7224-f)*10/124; if(6976f)&(f=7100) temp0=2;temp1=(7100-f)*10/124; if(6853f)&(f=6976) temp0=3;temp1=(6976-f)*10/123; if(6728f)&(f=6853) temp0=4;temp1=(6853-f)*10/125; if(6600f)&(f=6728) temp0=5;temp1=(6728-f)*10/128; if(6486f)&(f=6600) temp0=6;temp1=(6600-f)*10/132; if(6330f)&(f=6486) temp0=7;temp1=(6468-f)*10/138; if(6186f)&(f=6300) temp0=8;temp1=(6330-f)*10/144; if(6033f)&(f=6186) temp0=9;temp1=(6186-f)*10/153; else temp0=0;temp1=0; disdata20=temp0+0x
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 科普器材出售合同范本
- BOD自動在線監(jiān)測儀產(chǎn)業(yè)分析報告
- 體外診斷產(chǎn)品競爭策略分析報告
- 余土外運合同范本
- 廠房中介出售合同范本
- 中級電工模擬試題+參考答案
- 鹵菜設(shè)備買賣合同范本
- 固定金額合同范本
- 原礦合同范本
- 七年級下冊的語文教學計劃
- 四川政采評審專家入庫考試基礎(chǔ)題復習試題及答案(一)
- 患者手術(shù)風險評估與術(shù)前準備制度
- 口腔執(zhí)業(yè)醫(yī)師定期考核試題(資料)帶答案
- 2024年三八婦女節(jié)婦女權(quán)益保障法律知識競賽題庫及答案(共260題)
- 2023年7月浙江省普通高中學業(yè)水平考試(學考)語文試題答案
- 2024年計算機軟件水平考試-初級信息處理技術(shù)員考試近5年真題集錦(頻考類試題)帶答案
- 發(fā)熱病人護理課件
- 幼兒園中班安全《不動手打人》課件
- 遼寧沈陽歷年中考語文現(xiàn)代文之說明文閱讀11篇(含答案)(2003-2022)
- 【正版授權(quán)】 ISO 7241:2023 EN Hydraulic fluid power - Dimensions and requirements of quick-action couplings
- 勞動項目一 剪指甲 教案
評論
0/150
提交評論