溫濕度傳感器_課程設(shè)計(jì)_第1頁
溫濕度傳感器_課程設(shè)計(jì)_第2頁
溫濕度傳感器_課程設(shè)計(jì)_第3頁
溫濕度傳感器_課程設(shè)計(jì)_第4頁
溫濕度傳感器_課程設(shè)計(jì)_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、等級:湖南工程學(xué)院課 程 設(shè) 計(jì)課程名稱單片機(jī)原理與應(yīng)用課題名稱 環(huán)境溫、濕度檢測系統(tǒng)設(shè)計(jì)專 業(yè)自動化班 級1191學(xué) 號 20姓 名指導(dǎo)教師 李曉秀 王迎旭2013 年 12月12日湖南工程學(xué)院課程設(shè)計(jì)任務(wù)書課程名稱單片機(jī)原理與應(yīng)用課 題 環(huán)境溫、濕度檢測系統(tǒng)設(shè)計(jì)專業(yè)班級自動化學(xué)生姓名 學(xué) 號 2011指導(dǎo)老師李曉秀審 批任務(wù)書下達(dá)日期2013 年12月 1 9任務(wù)完成日期 2013年 12月13日設(shè)計(jì)內(nèi)容與設(shè)計(jì)要求主要設(shè)計(jì)條件本課題要求以單片機(jī)為核心,采用溫濕度傳感器DHT11設(shè) 計(jì)一個對環(huán)境溫度濕度得檢測系統(tǒng),要求用按鍵控制系統(tǒng)選擇分 別對溫度或濕度得測試、復(fù)位、清除功能,用四位LED數(shù)

2、碼管顯示 實(shí)時溫度與溫度。設(shè)計(jì)要求:1)確定系統(tǒng)設(shè)計(jì)方案;2)進(jìn)行系統(tǒng)得硬件設(shè)計(jì);3)完成必要元器件選擇;4)系統(tǒng)軟件設(shè)計(jì)及調(diào)試;5)系統(tǒng)聯(lián)調(diào)及操作說明6)按規(guī)范要求寫設(shè)計(jì)說明書1、PC機(jī)及單片機(jī)調(diào)試軟件;2、開發(fā)板1塊;3、系統(tǒng)設(shè)計(jì)、調(diào)試所需得元器件說明書格式1. 課程設(shè)計(jì)任務(wù)書2. 目錄3. 總體方案確定4. 各單元硬件電路設(shè)計(jì)及計(jì)算方法5. 軟件設(shè)計(jì)與說明(包括流程圖)6. 調(diào)試結(jié)果與必要得調(diào)試說明7. 總結(jié)8. 參考文獻(xiàn)9. 附錄附錄A 系統(tǒng)原理圖 附錄B程序清單10. 課程設(shè)計(jì)成績評分表。進(jìn)度安排設(shè)計(jì)時間分為二周第一周星期一、上午:布置課題任務(wù),課題介紹及講課。 下午:借閱有關(guān)資料,

3、總體方案討論。星期二、確定總體方案,學(xué)習(xí)與設(shè)計(jì)相關(guān)內(nèi)容。星期三、各部分方案設(shè)計(jì),各部分設(shè)計(jì)。星期四、設(shè)計(jì)及調(diào)試。星期五、設(shè)計(jì)及調(diào)試。星期六、設(shè)計(jì)及調(diào)試。第二周星期一:設(shè)計(jì)及調(diào)試。星期二:設(shè)計(jì)及調(diào)試。星期三:調(diào)試、寫說明書。星期四一星期五上午:寫說明書、完成電子版并打印成稿。 星期五下午:答辯。參考文獻(xiàn)1王迎旭等、單片機(jī)原理及及應(yīng)用M機(jī)械工業(yè)出版社、2012年2康華光等、模擬電子技術(shù)第五版M高等教育出版社2011年3杜樹春等.單片機(jī)C語言M北京航空航天大學(xué)出版社第1章概述6仁1設(shè)計(jì)任務(wù)與要求61、2設(shè)計(jì)方案7第2章硬件設(shè)計(jì)72、1時鐘電路與復(fù)位電路72、2溫濕度測量電路設(shè)計(jì)82、3按鍵電路10第

4、3章軟件設(shè)計(jì)113、1主函數(shù)設(shè)計(jì)113、2按鍵查詢113、3實(shí)時監(jiān)控與測試流程圖13第4章 硬件調(diào)試與結(jié)果分析134、1調(diào)試過程134、2硬件調(diào)試14第5章總結(jié)16參考文獻(xiàn)16附錄一:系統(tǒng)仿真圖17附錄二:源程序17電氣與信息工程系課程設(shè)計(jì)評分表29第1章概述1、1設(shè)計(jì)任務(wù)與要求本課題以單片機(jī)為核心,用智能集成溫溫度傳感器DHT11主要實(shí)現(xiàn)檢 測溫度、濕度得檢測,將溫度濕度信號通過傳感器進(jìn)行信號得采集并轉(zhuǎn)換 成數(shù)字信號,再運(yùn)用單片機(jī)進(jìn)行數(shù)據(jù)得分析與處理,在數(shù)碼管上顯示當(dāng)前 溫濕度。要求用按鍵控制系統(tǒng)選擇分別對溫度或濕度得測試、復(fù)位、清除 功能,完成硬件調(diào)試。1、2設(shè)計(jì)方案本課題得溫濕度測試,通

5、過單片機(jī)STC-89C51連接溫濕度模塊、顯示 模塊將溫度、濕度同時顯示。單片機(jī)發(fā)送一次開始信號后,DHT11從低功 耗模式轉(zhuǎn)換到高速模式,等待主機(jī)開始信號結(jié)束E,DHT11發(fā)送響應(yīng)信號, 送出40bit得數(shù)據(jù),并觸發(fā)一次信號采集,如果沒有接收到單片機(jī)發(fā)送來 得信號,DHT11不會主動進(jìn)行溫度采集,采集數(shù)據(jù)后轉(zhuǎn)換到低速模式。系統(tǒng) 設(shè)計(jì)框圖如圖1 1所示。XTAL1與XTAL2分別就是反相放大器得輸入端與輸出端。通常,經(jīng)由片外 晶體振蕩器或陶瓷諧振器與兩個匹配電容一超構(gòu)成一個自激振蕩電路。本 課題由片外晶體振蕩器與兩個匹配電容一起構(gòu)成了一個內(nèi)部時鐘振蕩電 路,為單片機(jī)提供時鐘源。本設(shè)計(jì)復(fù)位電路采

6、用按鍵復(fù)位,當(dāng)開關(guān)斷開時,與上電自動復(fù)位電路 相同;當(dāng)開關(guān)閉合時,電容通過并聯(lián)得電阻迅速放電,然后,RC電路充電, 能夠保證RST端能夠維持一段時間得高電平。如圖2、1所示。圖2、1時鐘及復(fù)位電路P31411 TO1II31EAWI130uF19、:12Ir12:vfflz1811CBYSTjlLA729RESETIII117RDWR30uFP3616vccAl89C521 .ZU+LKlII.、LV 7I1tv20uFXVSII12、2溫濕度測量電路設(shè)計(jì)DHT11得供電電壓為35、5V,傳感器上電后,要等待1s以越過不穩(wěn) 定狀態(tài)在此期間無需發(fā)送任何指令。電源引腳(VDD, GND)之間可增加

7、一個 100nF得電容,用以去耦濾波。數(shù)據(jù)用于微處理器與DHT11之間得通訊與 同步,采用單總線數(shù)據(jù)格式,一次通訊時間4ms左右,數(shù)據(jù)分小數(shù)部分與整 數(shù)部分。如圖2、2所示,本電路上拉電阻為5K,數(shù)據(jù)端接P1、7(接受溫濕 度數(shù)據(jù))。T1 TO0 12 3 4 5 6 7TLTIX -1 n lx 1i n IX ppppppppnIN圖2、2溫濕度測量電路2、3顯示電路本電路由四位一體共陽極數(shù)碼管顯示,采用9015三極管做位驅(qū)動。根 據(jù)發(fā)光二極管物理連接得不同,七段數(shù)碼管可以分為共陰極與共陽極兩種旳 1 a g s e : o 1 n 6 :c s* c r:* 4 3:結(jié)構(gòu)。其中P0端口為

8、段選,P2、0P2.3為位選,如圖2、3所示。圖2、3顯示電路2、4按鍵電路單片機(jī)設(shè)計(jì)中按鍵可分為獨(dú)立式按鍵與矩陣式按鍵,本系統(tǒng)由于按鍵第3章軟件設(shè)計(jì)本軟件設(shè)計(jì)主要就是對距離進(jìn)行測量、顯示。因此,整個軟件可分為 按照硬件電路對單片機(jī)位定匯;溫濕度設(shè)置子程序;溫濕度接收子程序;顯 示子程序;延時子程序等。由于本設(shè)計(jì)方案要求硬件電路與軟件編程相結(jié)合,所以選擇合適得編 程語言十分重要。c語言執(zhí)行效率沒有匯編語言高,但語言簡潔,使用方便 靈活,運(yùn)算豐窩,表達(dá)化類型多樣化,程序設(shè)計(jì)自由度大,很好得可重用性, 可移植性等特點(diǎn)基于c語言得眾多優(yōu)點(diǎn)本設(shè)計(jì)選擇此語言來編程。3、1主函數(shù)設(shè)計(jì)軟件分為兩部分,主程序

9、與中斷服務(wù)程序。主程序完成初始化工作、 溫濕度數(shù)據(jù)接收處理控制。外部中斷服務(wù)子程序主要完成時間值得讀取、 結(jié)果得輸出等工作,如圖3、1所示。3、2按鍵查詢獨(dú)立式按鍵接口采用直接讀入方式工作,直讀式鍵盤接口就是一個輸入接口,輸入接口主要功能就是解決數(shù)據(jù)輸入得緩沖(選通)問題。本設(shè)計(jì) 按鍵較少,釆用得獨(dú)立按鍵。3、3實(shí)時監(jiān)控與測試流程圖本系統(tǒng)設(shè)計(jì)分為實(shí)時監(jiān)控與測試模塊,圖3、3示為測試模塊。上電 就是數(shù)碼管顯示四個零,當(dāng)按下測試按鍵后,系統(tǒng)開始測量環(huán)境溫、濕度。 當(dāng)數(shù)碼管顯示四個“一”時,表示成功測量溫、濕度。當(dāng)按下溫度(濕度) 顯示按鍵,該模塊顯示測試時得溫度(濕度)。當(dāng)要進(jìn)行下一次測量時,必須

10、 按下測試按鍵。開始圖3、4示為實(shí)時監(jiān)控模塊圖測得共陽極數(shù)碼管N訂空鍵后,啟動TO定時器開始定時,每一分鐘測詵W次溫葩足刮蟬齊在四賽輪流顯示溫度、濕度。當(dāng)按下溫顯示按鍵后,該模塊只顯示實(shí) Y時得溫度(濕度)。當(dāng)再次廖豐實(shí)陽蓋4鍵 定時器TO關(guān)閉。4、1調(diào)試過程第4試吊數(shù)耳井與4 程序最為難寫,在之L設(shè)置而得知識沖了二卡總線得曇時序圖I通過查占資料與參考現(xiàn)跟蹤,完善了 DTH在編寫此程序前,感邀*44 前得學(xué)習(xí)中我并沒有接觸過測得數(shù)丫甘,總就是有一定# V L測不到 溫度M谿運(yùn)裝初歸動翩埠莎有得程序,然后在老師講解與與本殂得其他組頁談?wù)摵螅靼走@方但在通倩與取數(shù)t 丫 j按鍵函數(shù)連與耳數(shù)據(jù),

11、慢哎彳縈次上就ntirrr土個全増變量作為1 一個標(biāo)志位,每次按H則調(diào)用測試函數(shù)量鍵就是將該標(biāo)志位設(shè)置為2,使通信與取數(shù)函數(shù)循環(huán)兩次,這樣保證了 每次按下測試按鍵后就能與DHT11正確得通信從而保證得到正確得數(shù)據(jù)。在實(shí)時監(jiān)控這個模塊中,為了保證溫、濕度能循環(huán)顯示、按継后能只 顯示溫度(濕度)。由于按鍵有限,所以一下設(shè)置了很多得標(biāo)志位。因?yàn)闃?biāo) 志位太多,而沒有將所有得環(huán)節(jié)考慮進(jìn)去,一下程序有調(diào)試了很久才正確 得實(shí)現(xiàn)要求得功能。4、2硬件調(diào)試如圖4、1所示,按下左下角按鍵時,單片機(jī)開始與DHT11通信并開始 測試溫、濕度。圖示為測量溫、濕度成功。圖4、1初始化當(dāng)按下圖示按鍵時,數(shù)碼管顯示此時或?qū)崟r

12、監(jiān)控得環(huán)境濕度。其中最前端得“C”表示此時顯示得事環(huán)節(jié)溫度,如圖4、2。圖4、2顯示濕度當(dāng)按下此按鍵時,數(shù)碼管顯示此時或?qū)崟r監(jiān)控得環(huán)境溫度。其中最前端得“H”表示此時顯示得就是環(huán)境濕度,如圖4. 3o圖4、3顯示溫度第5章總結(jié)這次單片機(jī)課程設(shè)計(jì)不僅鞏固了以前學(xué)過得知識,而且學(xué)到了很多書 本上沒有沒到得知識,掌握了一種系統(tǒng)得研究方法,可以進(jìn)行一些簡單得 編程,通過這次課程設(shè)計(jì)我們明白理論與實(shí)際相結(jié)合就是很重要得,只有 理論知識還不夠,理論實(shí)踐相結(jié)合才能提高實(shí)際動手能力與獨(dú)立思考得能 力。同樣,在學(xué)習(xí)中也發(fā)現(xiàn)了自己得不足之處,例如對以前所學(xué)過得知識理 解不夠深刻,掌握不夠牢固。課程設(shè)計(jì)就是培養(yǎng)學(xué)生

13、綜合運(yùn)用所學(xué)知識,發(fā)現(xiàn)、提出、分析與解決 實(shí)際問題,鍛煉實(shí)踐能力得重要環(huán)節(jié),就是對學(xué)生實(shí)際工作能力得具體訓(xùn) 練與考察過程。隨著科學(xué)技術(shù)發(fā)展得日新日異,單片機(jī)已經(jīng)成為當(dāng)今計(jì)算 機(jī)應(yīng)用中空前活躍得領(lǐng)域, 在生活中可以說得就是無處不在。因此作為 二十一世紀(jì)得大學(xué)來說掌握單片機(jī)得開發(fā)技術(shù)就是十分重要得?;仡櫰鸫舜螁纹瑱C(jī)課程設(shè)計(jì),我仍感慨頗多。得確,從選題到定稿,從 理論到實(shí)踐,在接近兩個星期得日子里,可以說得就是苦多于甜,在設(shè)計(jì)得 過程中遇到問題,可以說得就是困難重重,難免會遇到過各種各樣得問題, 通過這次課程設(shè)計(jì)之定把以前所學(xué)過得知識重新溫故。參考文獻(xiàn)1王迎旭等、單片機(jī)原理及及應(yīng)用M機(jī)械工業(yè)出版社、

14、2012年2龔建偉、熊光明等、Visual、c、Tubor c串口通信M3康華光等、模擬電子技術(shù) 第五版M高等教育出版社20門年4杜樹春等、單片機(jī)C語言M北京航空航天大學(xué)出版社附錄一:系統(tǒng)仿真圖U I U m 寸c j urn c J !*mmaM附錄二:源程序include h bit fIag2, fIag3,fIag5; sbit dht11 = P廣7;#define NUMBER 20/防止在與硬件通信時發(fā)生死循環(huán)得計(jì)數(shù)范圍#define SIZE 5#define OK 1#define ERROR 0/函數(shù)得返回值表示讀取數(shù)據(jù)就是否成功0K表示成功ERROR 表示失敗 void

15、DHT11 Delay_10us (void);/延時10usvo i d cesh iwensh i du(vo i d);void xianshishidu(void); void xianshiwendu(void); uns igned char ReadValue (void);unsigned char DHT11 ReadTempAndHumi (void); void de Iay_1_002s (void); void de I ay (uns i gned char i);/延時程序void display(unsigned char IedO, Ied1, Ied2, I

16、ed3);/動態(tài)掃描顯示程序 uns igned char keyscan (void);/鍵盤掃描unsigned char status;/#def ine uchar uns igned char/#define uint unsigned int unsigned char fIag1,fIag4;uns ignedcharIed_code = OxcO, 0xf9, 0xa4, OxbO, 0x99, 0x92, 0x82, 0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,Oxbf,0x89); /* 共 陽 字型段碼表,0F”,-,“H”

17、*/uns igned char IedO, Ied1, Ied2, Ied3;unsigned char vaIue_array5;/存放五字節(jié)數(shù)據(jù)得數(shù)組uns i gned char vaIue _temp, vaIue humi;void DHT11 De Iay_1Ous(void)unsigned char i;/*讀一個字節(jié)得數(shù)據(jù)*/uns i gned char DHT11_ ReadVaIue (vo i d) unsigned char count, value = 0, i; status = OK;/設(shè)定標(biāo)志為正常狀態(tài)for (i = 8; i 0; i-)/高位在先va

18、 I ue = 1;count = 0;/每一位數(shù)據(jù)前會有一個50us得低電平時間、等待50us低電平 結(jié)束whiIe(dht11 = 0) & (count+ = NUMBER)status = ERROR;/設(shè)定錯誤標(biāo)志return 0;/函數(shù)執(zhí)行過程發(fā)生錯誤就退出函數(shù)/26-28us得高電平表示該位就是0,為70us高電平表該位1 DHT11. DelayOus();DHT11. DelayOus0 ;DHT11. DelayOus0 ;/延時30us后檢測數(shù)據(jù)線就是否還就是高電平if (dht11 != 0)/進(jìn)入這里表示該位就是1 vaIue+;/等待剩余(約40us)得高電平結(jié)束w

19、hiIe(dht11 != 0) & (count+ = NUMBER)status = ERROR;/設(shè)定錯誤標(biāo)志return 0;)1return (value);/讀溫度與濕度 函數(shù),讀一次得數(shù)據(jù),共五字節(jié),讀出成功函數(shù)返回0K,錯誤返回ERROR unsigned char DHT11 ReadTempAndHumi (void)/拉低數(shù)據(jù)unsigned char i = 0, check_value = 0,count = 0; display (IedO, Ied1, Ied2, Ied3);dht11 = 1;用于檢測低電平得應(yīng)答信號/釋放數(shù)據(jù)線,延時 20-40us,/ EA

20、 = 0;dht11 = 0;線大于18ms發(fā)送開始信號 display (IedO, Ied1, Ied2, Ied3);毫秒/需大于18等待一段時間后檢測應(yīng)答信號,應(yīng)答信號就是從機(jī)拉低數(shù)據(jù)線80usDHT11 Delay10us();DHT11 Delay10us();DHT11. Delay_10us();/檢測應(yīng)答DHT11. Delay_10us(); if (dht11 != 0)信號,應(yīng)答信號就是低電平/沒應(yīng)答信號return ERROR;1elsewhiIe(dht11 = 0)&(count+ = NUMBER)是否超過了設(shè)定得范圍dht11 = 1; return ERRO

21、R;錯,退出函數(shù))count = 0;dht11 = 1;有一個80us得高電平,等待高電平結(jié)束whiIe(dht11 != 0) & (count+ = NUMBER)dht11 = 1; return ERROR;函數(shù)值for(i = 0; i SIZE; i+)vaIue array i=DHT11 ReadVaIue ();if (status = ERROR)ReadVa Iue 0讀數(shù)據(jù)出錯會設(shè)定status為ERRORdht11 = 1;return ERROR;)/有應(yīng)答信號/等待應(yīng)答/檢測計(jì)數(shù)器就/讀數(shù)據(jù)出/釋放數(shù)據(jù)線/應(yīng)答信號后會退出/讀出濕、溫度/調(diào)用/讀出得彘后一個值就

22、是校驗(yàn)值不需加上去if (i != SIZE 一 1)/讀出得五字節(jié)數(shù)據(jù)中得前四字節(jié)數(shù)據(jù)與等于第五字節(jié)數(shù)據(jù)表示成功check_vaIue += vaIue arrayi;1 一 /end fordisplay (IedO, I ed1, Ied2, I ed3) ;/在沒用發(fā)生函數(shù)調(diào)用失敗進(jìn) 行校驗(yàn)i f (check_vaIue = vaIue array SIZE - 1) _ vaIue_humi = value array0;vaIue_temp = value array2;dht11 = 1;return OK;/正確得讀出dht11輸出得數(shù)據(jù)return ERROR;/校驗(yàn)數(shù)扌居

23、錯)void delay_1_002s(void) unsigned char z,b,c;for (z=0;z10;z+)for(b=0;b160;b+)for (c二0;c207;c+);1void de I ay (uns igned char x)unsigned char i,j;for (i=0;ix;i+)for (j=0;j0;fIag4-)d二DHT11 ReadTempAndHumi (); display (IedO, Ied1, Ied2, Ied3); if(flag3=0)if (d=1)led0=16;Ied1=16;Ied2=16;)fIag4=1;void xianshishidu(void)led0=17;Ied1=vaIue_hum i/10;Ied2=vaIue_hum i%10; led3=0;1void xianshiwendu(void)led0=12;Ied1=vaIue_temp/10;Ied2=vaIue_temp%10; led3=0;void mainOunsigned char key;P3=0xf0;TM0D=0x01;TH0=0x3c;TL0=0xb0;EA=1;ETO=1;TRO=O;delay_1_002s ();display (I

溫馨提示

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

評論

0/150

提交評論