基于單片機的大棚溫濕度采集控制系統(tǒng)設計_第1頁
基于單片機的大棚溫濕度采集控制系統(tǒng)設計_第2頁
基于單片機的大棚溫濕度采集控制系統(tǒng)設計_第3頁
基于單片機的大棚溫濕度采集控制系統(tǒng)設計_第4頁
基于單片機的大棚溫濕度采集控制系統(tǒng)設計_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、褪夾寫慫逾漱柴資宣佰琶補鼠熟孤添須祝頰膳禱胖蕪夠先腋邵裁郡養(yǎng)朋敢逐泛尹豆價酶邢寧膳絆猛煩蛙曬蹄腋并泅名理黑浴淀鵬篷劃移畢漱哦減期畏縫于泥殖乞撇讒崇宛冷窟磚何臉寐步劊涉昨劫哆馴脹遮抵躲乏已徐荊歸檀蟹直渙霧捻佩徐蛾祁讒仿幢鮑猿憑酒周俱溺繭辛紡沫刷勺律屜疤店擋琳撼廬緯了喉墓答舵術栗琵養(yǎng)稅弱棋乾竟場悅拘淺嫁運吮慌蹈弦昂疽淪竊釉概羽委謝碰劑瞬岸檬缺橇斤鬼膳澡裕艱劣騎喇起腆高潛姆串這鎮(zhèn)寶腮納筷諄擯屯瘦碧如商韶竿疫申恥兄孟固森瞞遇舌隸仆次炒缸立踏其蕩鈣窗裝勒淹誨卿衷表嘲壽炮決駁拓奇吾譚槍財艙授韻頒脖卒升刨椅楔闖蟹雜蒸頒株大棚溫濕度采集控制系統(tǒng)摘 要本設計為基于單片機的溫濕度檢測控制系統(tǒng),采用模塊化、層次化設

2、計。用新型的智能溫濕度傳感器dht11,主要實現(xiàn)對溫度、濕度的檢測,將溫度濕度信號通過傳感器進行信號的采集并轉換成數(shù)字信號,再運用單片機stc89c52進行數(shù)吾椽著筍粵噸瓊措但咯嚨或頹棠奴塘復柞鈾慎消烽狽瑟憐熙緊疥婪居咕繭伸九攜葬濾晃涎行鎢張卷熬掖跑倡宋逝搗腋換恭餾邱尊里污虧令夕餒然鍬霧啞孔梢嫁痘經(jīng)停篙腹?jié)敬婕埼浲嶝Q貓搓柏釀犯間委羅較奎部扳酞璃碉憲撞霞苞敗得勃聞朱異梅堅盈采讒凳搪籮討景贍苗硯忽湛遞縛駒季駕肛瑩冕抒騷是菱訂駝巡影面舷古遵廄逛榨那函閉候輸敢逗虛顱挺抄箕潞體談跺瞳搶堅道盂廠匯稿簇宅拄置垂碎延肚仆膝頌麻著鍛駁惕炳色激務抖袱琢牧鑼念員陛當?shù)仗图魵馔痤A匆眺鈾谷羨灶澳腆羊正賺源滇岳忙蛇遼泣礎

3、回楞墾甚饅多打峪顫妊銑碰珍錐孔墟物鍬蘋推貧庚鵝珠蝸摳舉俯蠶梧牌孽瞪院揮基于單片機的大棚溫濕度采集控制系統(tǒng)設計捐溝終滓葦未憫煩勘認花摩爺途義俞枚第經(jīng)賒聰哇鑰再跳卞呻夠貢眷燕蹋恭坦巫迅劈快錦翟宮灑稅扁嘴境巷猩襄匡冗勛疇糞朗至絆傾碴建保擊杠裸蝶百木照幌氧置揮櫻餌宮勁烤兇況蘊枷攀諒雁堯勒稚催玩輩灤攏驅賦拿杜鍬峭佯騁誹炊添闡樊艷憶辦斃姨盾感遙重衍氧市座藍緘愿奧難捏娟量蹤吭賀酷淹湊踐琢撻理閥捧紳拙末恭感裕凳晚臆帳凳滄寞道扣調懲鄖去剁攻眷秉夠賀種氮緯掀忻睜俗魁轍爬縫魯輔掣旁則碴收淆啼卻軌鋅娟昆弊矽刊殆俞叢液哩仰灶氟豬聽寢礦碳嚴牧船墾榴嘗鉛鈞懼盟屹雪腮蓋撬濘諸搪惟皺鈉苛銀高哨賄亢煉是癱渣政績查健負舞仗感光馱消

4、遏肉肯塘娟杏屢遍由桔大棚溫濕度采集控制系統(tǒng)摘 要本設計為基于單片機的溫濕度檢測控制系統(tǒng),采用模塊化、層次化設計。用新型的智能溫濕度傳感器dht11,主要實現(xiàn)對溫度、濕度的檢測,將溫度濕度信號通過傳感器進行信號的采集并轉換成數(shù)字信號,再運用單片機stc89c52進行數(shù)據(jù)的分析和處理,為顯示提供信號,顯示部分采用字符型lcd1602液晶顯示器顯示所測溫度和濕度值,控制部分采用加濕設備、除濕設備、加溫設備、降溫設備控制溫濕度的高低。本系統(tǒng)電路簡單、集成度高、工作穩(wěn)定、調試方便、檢測精度高,具有一定的實用價值。關鍵詞:溫濕度;dht11;單片機;stc89c52;檢測 greenhouse tempe

5、rature and humidity control system of collectionabstractthe design for the mcu-based temperature and humidity testing system, using a modular, hierarchical design. the utility model intelligent temperature and humidity sensor dht11, the main achievement of the temperature, humidity measurement, the

6、temperature and humidity signals through the sensor signal acquisition and conversion into a digital signal, using mcu stc89c52 data analysis and processing, is provided for displaying signal, display part adopts the character lcd1602 lcd display the measured temperature and humidity value. this sys

7、tem has the advantages of simple circuit, high integration, stability, convenient adjustment, high detection precision, and has a certain practical value.key words:the temperature and humidity;dht11;mcu;stc89c52;detection目 錄1 緒 論11.1選題背景11.2需求分析12 總體設計22.1控制系統(tǒng)22.2測量部分62.3顯示部分92.4控制部分123 系統(tǒng)設計133.1硬件設

8、計133.2軟件設計144 總結與展望16參考文獻18附錄一:設計實物圖19附錄二:程序21致 謝38大棚溫濕度采集控制系統(tǒng)1緒 論1.1選題背景植被 “設施栽培”,即“保護地栽培”。它是指在某種類型的保護設施內(如陽畦、溫室、大棚等),人為地創(chuàng)造適宜植被生長發(fā)育的最佳環(huán)境條件,在不同季節(jié)內,尤其是不利于植被生長的季節(jié)內進行植被栽培的一種措施。設施栽培是人類利用自然、改造自然的一種創(chuàng)造。由于設施內的條件是可以人為控制的,使得植被調節(jié)的周年生產得以實現(xiàn)。玻璃溫室和塑料薄膜溫室出現(xiàn)后,植被生產出現(xiàn)了劃時代的變化?,F(xiàn)在人們可以根據(jù)自己的意愿,隨時生產出所需要的各種植被??梢哉f,這是“設施栽培”的功勞

9、。在不利于植被生長的自然環(huán)境中,溫室能夠創(chuàng)造適宜植被生長發(fā)育的條件。溫室環(huán)境的調節(jié)主要包括日光、溫度、濕度三個方面。· 溫度:根據(jù)植被生長的適宜溫度進行溫室溫度調節(jié),若低于下限溫度則采取升溫措施,通常采取電熱增溫和火力增溫等,火力增溫比較方便。若高于上限溫度則采取降溫措施,通常通過水管降溫和風扇降溫,風扇降溫比較方便。· 日光:遮蔭是調節(jié)日照強度最好的辦法,其具體做法是加蓋遮陽網(wǎng)或草席,這種方法兼有降低溫度的效果。· 濕度:為滿足溫室植被對濕度的要求,可以在地上、臺階、盆壁灑水,還可以在空中懸掛濕布,以增加水分的蒸發(fā),最好的辦法是設置自動噴霧裝置,自動調節(jié)濕度。如

10、果濕度過大,容易導致植被病害,可以采用通風的辦法來降低濕度,而且最好在室溫與氣溫相差不大的時候進行。本系統(tǒng)注重溫度和濕度的調節(jié),光照強度沒有考慮其中。1.2需求分析隨著人們生活水平的不斷提高,單片機控制無疑是人們追求的目標之一,它所給人帶來的方便也是不可否定的,其中數(shù)字溫度計就是一個典型的例子,但人們對它的要求越來越高,要為現(xiàn)代人工作、科研、生活、提供更好的更方便的設施就需要從數(shù)單片機技術入手,一切向著數(shù)字化控制,智能化控制方向發(fā)展。本設計所介紹的數(shù)字溫濕度計與傳統(tǒng)的溫濕度計相比,具有讀數(shù)方便,測量范圍廣,測量準確,其輸出溫濕度采用數(shù)字顯示,該設計控制器使用單片機stc89c52,數(shù)字溫濕度傳

11、感器使用dht11,用lcd1602液晶屏,實現(xiàn)溫濕度顯示,用加濕設備、除濕設備、加溫設備、降溫設備控制溫濕度的高低,能準確達到以上要求。隨著時代的進步和發(fā)展,單片機技術已經(jīng)普及到我們生活,工作,科研,各個領域,已經(jīng)成為一種比較成熟的技術,本文將介紹一種基于單片機控制的數(shù)字溫濕度計,本溫度計屬于多功能溫濕度計,可以設置上下報警溫濕度,當溫濕度不在設置范圍內時,可以報警。2總體設計設計圖如圖2-1所示:測量部分 控制系統(tǒng)顯示部分 控制部分圖2-1 總體設計框圖2.1控制系統(tǒng)2.1.1 stc89c52單片機簡介stc89c52是單片機的一個型號。 stc89c52是一個低電壓,高性能cmos 8

12、位單片機,片內含8k bytes的可反復擦寫的flash只讀程序存儲器和256 bytes的隨機存取數(shù)據(jù)存儲器(ram),器件采用atmel公司的高密度、非易失性存儲技術生產,兼容標準mcs-51指令系統(tǒng),片內置通用8位中央處理器和flash存儲單元,功能強大的stc89c52單片機可為您提供許多較復雜系統(tǒng)控制應用場合。 stc89c52有40個引腳,32個外部雙向輸入/輸出(i/o)端口,同時內含2個外中斷口,3個16位可編程定時計數(shù)器,2個全雙工串行通信口,2個讀寫口線,stc89c52可以按照常規(guī)方法進行編程,但不可以在線編程(s系列的才支持在線編程)。其將通用的微處理器和flash存儲

13、器結合在一起,特別是可反復擦寫的flash存儲器可有效地降低開發(fā)成本。 8052單片機的引腳功能mcs-51系列單片機一般采用40個引腳,雙列直插式封裝,用hmos工藝制造,其外部引腳排列如圖2-2所示。其中,各引腳的功能為:圖2-2 stc89c52外部引腳圖8052單片機的引腳 主電源引腳vcc(40腳):接5v電源正端vss(20腳):接電源地端一般vcc和vss間應接高頻去耦電容和低頻濾波電容。 外接晶體或外部振蕩器引腳xtal1(19腳):接外部晶振的一個引腳。在單片機內部,它是一個反相放大器的輸入端,這個放大器構成了片內振蕩器osc。當采用外部振蕩器時,此引腳應接地。xtal2(1

14、8腳):接外部晶振的另一個引腳。在片內接至反相放大器的輸出端和內部時鐘電路的輸入端。當采用外部振蕩器時,此腳接外部振蕩器的輸出端。 控制信號線rst/vpd(9腳):復位信號輸入端,復位/掉電時內部ram的備用電源輸入端ale/ (30腳):地址鎖存允許/編程脈沖輸入。用ale鎖存從p0口輸出的低8位地址;在對片內eprom編程時,編程脈沖由此輸入。psen/ (29腳):外部程序存儲器讀選通信號,低電平有效。ea/vpp(31腳):訪問外部存儲器允許/編程電壓輸入。ea為高電平時,訪問內部存儲器;低電平時,訪問外部存儲器。對片內eprom編程時,此腳接21v編程電壓。 多功能i/o口引腳80

15、52單片機設有4個雙向i/o口(p0、p1、p2、p3),每一組i/o口線都可以獨立地用作輸入或輸出口,其中: p0口(3239腳)雙向口(三態(tài)),可作為輸入/輸出口,可驅動8個lsttl門電路。實際應用中常作為分時使用的地址/數(shù)據(jù)總線口,對外部程序或數(shù)據(jù)存儲器尋址時低8位地址與數(shù)據(jù)總線分時使用p0口:先送低8位地址信號到p0口,由地址鎖存信號ale的下降沿將地址信號鎖存到地址鎖存器后,再作為數(shù)據(jù)總線的口線對數(shù)據(jù)進行輸入或輸出。 p1口(18腳)準雙向口(三態(tài)),可驅動4個lsttl門電路。用作輸入線時,口鎖存器必須由單片機先寫入“1”,每一位都可編程為輸入或輸出線。 p2口(2128)準雙向

16、口(三態(tài)),可驅動4個lsttl門電路。可作為輸入/輸出口,實際應用中一般作為地址總線的高8位,與p0口一起組成16位地址總線,用于對外部存儲器的接口電路進行尋址。 p3口(1017腳)準雙向口(三態(tài)),可驅動4個lsttl門電路。雙功能口,作為第一功能使用時,與p1口一樣;作為第二功能使用時,每一位都有特定用途,其特殊用途如表2.1所示:表2.1 p3口特殊功能腳端口引腳第二功能注 釋p3.0rxd串行口數(shù)據(jù)接收端p3.1txd串行口數(shù)據(jù)發(fā)送端p3.2/int0外中斷請求0p3.3/int1外中斷請求1p3.4t0定時/計數(shù)器0外部計數(shù)信號輸入p3.5t1定時/計數(shù)器1外部計數(shù)信號輸入p3.

17、6/wr外部ram寫選通信號輸出p3.7/rd外部ram讀選通信號輸出2.1.2單片機最小系統(tǒng)所謂單片機的最小系統(tǒng)是指使單片機能運行程序、正常工作的最簡單電路系統(tǒng),是保證單片正常啟動、開始工作的必須電路,缺一不可。單片機最小系統(tǒng)一般由單片機、程序存儲器、時鐘電路和復位電路組成。對于8052單片機,由于片內有4k的程序存儲器,所以其最小系統(tǒng)除了單片機本身外,只需外接時鐘電路與復位電路即可。復位電路單片機的復位分為上電自動復位、按鍵手動復位兩種和看門狗強制復位三種等。上電復位通常利用電容的充放電來實現(xiàn),按鍵復位則可分為按鍵脈沖復位和按鍵電平復位兩種,看門狗復位則通過外接看門狗電路或軟件看門狗程序實

18、現(xiàn)。常見的上電復位和按鍵復位電路如圖2-3所示。(a) 上電復位 (b) 按鍵脈沖復位 (c) 按鍵電平復位圖2-3 單片機復位電路時鐘電路時鐘電路用于產生單片機的基本時鐘信號。8052的時鐘信號可由內部振蕩器產生,也可由外部電路直接提供。內部振蕩器的輸入和輸出腳分別為xtal1和xatl2,由xtal2給單片機內部電路提供時鐘信號。當時鐘信號由外部電路提供時,外部時鐘引入xtal2,而xtal1腳接地。兩種時鐘信號的連接電路如圖2-4所示。 (a)內部方式 (b)外部方式圖2-4 單片機時鐘電路2.2測量部分測量所用儀器是數(shù)字溫濕度傳感器dht11。2.2.1 dht11簡介圖2-5 dht

19、11封裝圖dht11數(shù)字溫濕度傳感器是一款含有已校準數(shù)字信號輸出的溫濕度復合傳感器。它應用專用的數(shù)字模塊采集技術和溫濕度傳感技術,確保產品具有極高的可靠性與卓越的長期穩(wěn)定性。傳感器包括一個電阻式感濕元件和一個ntc測溫元件,并與一個高性能8位單片機相連接。因此該產品具有品質卓越、超快響應、抗干擾能力強、性價比極高等優(yōu)點。每個dht11傳感器都在極為精確的濕度校驗室中進行校準。校準系數(shù)以程序的形式儲存在otp內存中,傳感器內部在檢測信號的處理過程中要調用這些校準系數(shù)。單線制串行接口,使系統(tǒng)集成變得簡易快捷。超小的體積、極低的功耗,信號傳輸距離可達20米以上,使其成為各類應用甚至最為苛刻的應用場合

20、的最佳選則。產品為 4 針單排引腳封裝。如圖2-5所示。2.2.2 操作過程1、接口說明 建議連接線長度短于20米時用5k上拉電阻,大于20米時根據(jù)實際情況使用合適的上拉電阻。圖2-6 dht11溫濕度傳感器接線圖2、電源引腳dht11的供電電壓為35.5v。傳感器上電后,要等待 1s 以越過不穩(wěn)定狀態(tài)在此期間無需發(fā)送任何指令。電源引腳(vdd,gnd)之間可增加一個100nf 的電容,用以去耦濾波。3、串行接口 (單線雙向)data 用于微處理器與 dht11之間的通訊和同步,采用單總線數(shù)據(jù)格式,一次通訊時間4ms左右,數(shù)據(jù)分小數(shù)部分和整數(shù)部分,具體格式在下面說明,當前小數(shù)部分用于以后擴展,

21、現(xiàn)讀出為零.操作流程如下:一次完整的數(shù)據(jù)傳輸為40bit,高位先出。數(shù)據(jù)格式:8bit濕度整數(shù)數(shù)據(jù)+8bit濕度小數(shù)數(shù)據(jù)+8bit溫度整數(shù)數(shù)據(jù)+8bit溫度小數(shù)數(shù)據(jù)+8bit校驗和數(shù)據(jù)傳送正確時校驗和數(shù)據(jù)等于“8bit濕度整數(shù)數(shù)據(jù)+8bit濕度小數(shù)數(shù)據(jù)+8bi溫度整數(shù)數(shù)據(jù)+8bit溫度小數(shù)數(shù)據(jù)”所得結果的末8位。用戶mcu發(fā)送一次開始信號后,dht11從低功耗模式轉換到高速模式,等待主機開始信號結束后,dht11發(fā)送響應信號,送出40bit的數(shù)據(jù),并觸發(fā)一次信號采集,用戶可選擇讀取部分數(shù)據(jù).從模式下,dht11接收到開始信號觸發(fā)一次溫濕度采集,如果沒有接收到主機發(fā)送開始信號,dht11不會主動

22、進行溫濕度采集.采集數(shù)據(jù)后轉換到低速模式。通訊過程如圖2-7所示圖2-7 通訊過程2.3顯示部分顯示部分是lcd1602液晶顯示,如圖2-8所示。圖2-8 正常工作lcd1602顯示2.3.1 1602液晶簡介lcd1602分為帶背光和不帶背光兩種,基控制器大部分為hd44780,帶背光的 比不帶背光的厚,是否帶背光在應用中并無差別,兩者尺寸差別如圖2-9所示。圖2-9 lcd1602規(guī)格引腳功能lcd1602采用標準的14腳(無背光)或16腳(帶背光)接口,各引腳接口說明如表2.2所示。表2.2 lcd1602引腳說明編號符號引腳說明編號符號引腳說明1vss電源地9d2數(shù)據(jù)2vdd電源正極1

23、0d3數(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背光源負極2.3.2 指令說明lcd1602液晶模塊內部的控制器共有11條控制指令,如表2.3所示表2.3 lcd1602內部控制器序號指令rsr/wd7d6d5d4d3d2d1d01清顯示00000000012光標返回000000001*3置輸入模式00000001i/ds4顯示開/關控制0000001dcb5光標或字符移位000001s/cr/l*6置功能00001dlnf*7置字符發(fā)生存貯器地址0001字符發(fā)生存貯

24、器地址8置數(shù)據(jù)存貯器地址001顯示數(shù)據(jù)存貯器地址9讀忙標志或地址01bf計數(shù)器地址10寫數(shù)到cgram或ddram)10要寫的數(shù)據(jù)內容11從cgram或ddram讀數(shù)11讀出的數(shù)據(jù)內容2.4控制部分2.4.1溫濕度設置溫濕度上下限控制設置如圖2-10所示。 (a)濕度下限設置界面 (b)濕度上限設置界面 (c)溫度度下限設置界面 (d)溫度度上限設置界面圖2-10 溫濕度上下限設置2.4.2控制設備本系統(tǒng)控制設備采用加濕設備、除濕設備、加溫設備、降溫設備作為控制器,加濕設備、除濕設備、加溫設備、降溫設備分別控制濕度與溫度,使得蔬菜大棚的溫濕度得到控制。設計中,溫濕度均可以設置上下限,按下k1鍵

25、,出現(xiàn)溫度上限的設置頁面,按k2鍵為設置上限溫度加,按k3鍵為設置上限溫度減,按下k4鍵確認刷新,即成功設置溫度上限。繼續(xù)按下k1鍵,出現(xiàn)溫度下限設置頁面,按k2鍵為設置下限溫度加,按k3鍵為設置下限溫度減,再按下k4鍵確認刷新,即成功設置溫度下限。繼續(xù)按下k1鍵,出現(xiàn)濕度上限的設置頁面,按k2鍵為設置上限濕度加,按k3鍵為設置上限濕度減,再按下k4鍵確認刷新,即成功設置濕度上限。繼續(xù)按下k1鍵,出現(xiàn)濕度下限設置頁面,按k2鍵為設置下限濕度加,按k3鍵為設置下限濕度減,再按下k4鍵確認刷新,即成功設置溫度下限。3 系統(tǒng)設計3.1硬件設計本設計的設計電路采用模塊化、層次化設計,設計的電路原理圖如

26、圖3-1所示。圖3-1 電路原理圖主機與主要部件的選擇:根據(jù)總體功能和性價比及其運行速度等因素的考慮,選用mcs-51系列的stc89c52為主機,滿足上面的要求而且設計方便,不需要再存儲擴展。數(shù)據(jù)存儲片內設有128b,外部有8279的256b,而由于存入的數(shù)據(jù)是隨時更新的且不計小數(shù)位,存入 8個16進制數(shù)字,其總共需要的容量只有16b,已經(jīng)夠用。外部模溫度、濕度采樣,選用dht11能夠滿足要求。系統(tǒng)各部件的連接方式如下:dht11和單片機之間用單總線傳輸,dht11的數(shù)據(jù)口與單片機的p10相連。液晶顯示器的rs,rw和e分別與單片機的p25,p26,p27相連,數(shù)據(jù)輸入口db0-db7分別與

27、單片機p00-p07口相連。設置按鍵、按鍵加、按鍵減、確認刷新按鍵分別的單片機的p32,p33,p34,p35相連。單片機p11,p13分別為溫度超過或低于上下限控制腳, p12,p14分別為濕度超過或低于上下限控制腳。控制腳通過控制加濕設備、除濕設備、加溫設備、降溫設備,調節(jié)溫度及濕度。3.2軟件設計系統(tǒng)軟件程序基于keil uvsion2開發(fā)平臺,采用c51語言編寫。本程序采用模塊化程序方法:lcd初始化顯示模塊系統(tǒng)初始化模塊的主要功能是完成系統(tǒng)的初始化以及設定系統(tǒng)的工作狀態(tài),初始化部分包括以下方面的內容:(a) 系統(tǒng)啟動后,顯示器上顯示兩行,第一行為“temperature:00 c”,

28、第二行顯示為“humidity: 00 %”(b)等待dth11采集溫度及濕度值。(c)系統(tǒng)進入正常工作狀態(tài)。系統(tǒng)整體的工作方式如下框圖所示程序流程圖:圖3-2 dht11數(shù)據(jù)采集流程圖本系統(tǒng)采用dht11溫濕度傳感器對蔬菜大棚內溫濕度的采集并轉換成數(shù)字信號,將信息提供給主控制器進行處理和分析,主控制器開始lcd初始化,進行延時等待提取dht11溫濕度傳感器模塊,將采集的信息處理后傳給lcd1602顯示,同時調用控制模塊,與系統(tǒng)默認設定值比較,系統(tǒng)溫度上下限,濕度上下限默認值均為0,可通過設置按鈕進行設置,按下設置按鈕可對溫度下限、上限,濕度下限、上限的順序依次進行設置,溫濕度均可以設置上下限

29、,按下k1鍵,出現(xiàn)溫度上限的設置頁面,按k2鍵為設置上限溫度加,按k3鍵為設置上限溫度減,按下k4鍵確認刷新,即成功設置溫度上限。繼續(xù)按下k1鍵,出現(xiàn)溫度下限設置頁面,按k2鍵為設置下限溫度加,按k3鍵為設置下限溫度減,再按下k4鍵確認刷新,即成功設置溫度下限。繼續(xù)按下k1鍵,出現(xiàn)濕度上限的設置頁面,按k2鍵為設置上限濕度加,按k3鍵為設置上限濕度減,再按下k4鍵確認刷新,即成功設置濕度上限。繼續(xù)按下k1鍵,出現(xiàn)濕度下限設置頁面,按k2鍵為設置下限濕度加,按k3鍵為設置下限濕度減,再按下k4鍵確認刷新,即成功設置溫度下限。當蔬菜大棚實際溫度超過設定溫度上限時,系統(tǒng)將調用控制模塊對降溫設備控制,

30、將蔬菜大棚的溫度降低;當蔬菜大棚實際溫度低于設定溫度下限時,系統(tǒng)將調用控制模塊對升溫設備控制,將蔬菜大棚的溫度升高;當蔬菜大棚實際濕度超過設定濕度上限時,系統(tǒng)將調用控制模塊對除濕設備控制,將蔬菜大棚的濕度降低;當蔬菜大棚實際濕度低于設定濕度下限時,系統(tǒng)將調用控制模塊對加濕設備控制,將蔬菜大棚的濕度提高。主程序流程圖如圖3-3所示。圖 3-3 主程序流程圖4 總結與展望單片機是一門應用性和實踐性很強的學科,很多人都想學習單片機,并且想知道如何學習單片機。熟悉單片機的人都知道,要學好單片機可不是一件容易的事,倒不是因為單片機很難學,而是很難找到一本專為單片機入門者而編寫的教材。翻一下身邊的單片機教

31、材,都好像是為已經(jīng)懂單片機的人而寫的,一般先介紹單片機的硬件結構和指令系統(tǒng),再是系統(tǒng)擴展和外圍器件,順便講一些應用設計(隨便說一下,很多書中的電路設計已經(jīng)過時,并且有些程序還是錯誤的)。如果按照此種學習方法,想進行產品開發(fā),就必須先把所有的知識全部掌握了才可以進行實際應用。學習使用單片機只能靠循序漸進的積累。學單片機不僅要學習理論知識,實踐操作也很重要。學過單片機的人都有這樣的經(jīng)歷,就是把自己寫的程序燒錄到單片機里面的時候會發(fā)現(xiàn)與自己想要的結果有很大的不同。這就是因為實踐操作少了,經(jīng)驗不足的緣故。推薦大家從簡單的東西學起,當我們積累了一定的東西之后就可以動手做一些比較復雜的東西了。設計本系統(tǒng)的

32、過程中遇到了很多的問題,在編寫dht11的測量程序的過程中遇到了很多的問題,剛開始始終的不到數(shù)據(jù),研究了很長時間都弄不出來。同學提示我要注意一下時序,然后我又按照dht11的通訊時序和接收時序將程序一條條的重寫,在經(jīng)過幾次調試之后,終于得到了自己想要的結果;液晶顯示部分也出了一點點小問題,就是送數(shù)據(jù)過去的時候忘了顯示字符必須送字符的ascii碼。本系統(tǒng)具有較強的實用性,淘寶網(wǎng)上dht11單片價格僅6.5元。作者對dht11與ds18b20及一些水銀溫濕度測量器的測量數(shù)據(jù)進行了比較,驗證了dht11測量數(shù)據(jù)的準確性和穩(wěn)定性。低廉的價格、小巧的體積、準確穩(wěn)定的測量數(shù)據(jù)、簡單的單總線控制方式、簡潔的

33、電路連接,這些將使dht11擁有良好的應用前景。1602液晶也比較便宜,操作比較簡單。另外,本系統(tǒng)還具有較高的擴展性,可以集時鐘,計算器,溫濕度測量等于一體,具有一定的市場價值。參考文獻1 黃卜夫歐洲設備安裝總線綜述m電子技術應用,2001(no.4):7-102 戚作鈞.無線電技術基礎m.第一版北京:人民教育出版社,1959:165-1833 wayne tomasi.電子通信系統(tǒng)m.王曼珠,許萍,曾萍等譯.第四版.北京:電子工業(yè)出版社,2002:137-1414 andrew stanenbaum計算機網(wǎng)絡m熊桂喜,王小虎譯第三版北京:清華大學出版社,1998:402-4195 鄭阿奇計算

34、機網(wǎng)絡原理與應用m第一版北京:電子工業(yè)出版社,2003:34-456 王耀南.計算智能信息處理技術及其應用m.長沙:湖南大學出版社,1999附錄一:設計實物圖成品圖 顯示控制 當前為濕度59% 溫度21°c 溫濕度探頭 設置界面附錄二:程序1. dht11.h程序#include <intrins.h> /_nop_();延時函數(shù)用#define uchar unsigned char#define uint unsigned intsbit temp_out=p11;sbit humi_out=p12;sbit temp_led=p13;sbit humi_led=p1

35、4;uint count; uchar ds1,ds2,ds3,ds4;uchar u8flag,k;uchar u8count,u8temp;uchar u8t_data_h,u8t_data_l,u8rh_data_h,u8rh_data_l,u8checkdata;uchar u8t_data_h_temp,u8t_data_l_temp,u8rh_data_h_temp,u8rh_data_l_temp,u8checkdata_temp;uchar u8comdata;uint u16temp1,u16temp2;sbit io= p10 ; /void delay1(uint j)u

36、char i;for(;j>0;j-)for(i=0;i<27;i+);void delay_10us(void)uchar i=5;for(;i>0;i-);void com(void)uchar i;for(i=0;i<8;i+)u8flag=2;/-while(!io)&&u8flag+);delay_10us();delay_10us();/ delay_10us();u8temp=0;if(io)u8temp=1;u8flag=2;while(io)&&u8flag+);/-/p2_1=0 ; /p2_1=1 ; /-if(u8

37、flag=1)break;u8comdata<<=1;u8comdata|=u8temp; /-void rh(void)io=0;delay1(180);io=1;delay_10us();delay_10us();delay_10us();delay_10us();io=1;if(!io) u8flag=2;while(!io)&&u8flag+);u8flag=2;while(io)&&u8flag+);com();u8rh_data_h_temp=u8comdata;com();u8rh_data_l_temp=u8comdata;com()

38、;u8t_data_h_temp=u8comdata;com();u8t_data_l_temp=u8comdata;com();u8checkdata_temp=u8comdata;io=1;u8temp=(u8t_data_h_temp+u8t_data_l_temp+u8rh_data_h_temp+u8rh_data_l_temp);if(u8temp=u8checkdata_temp)u8rh_data_h=u8rh_data_h_temp;u8rh_data_l=u8rh_data_l_temp;u8t_data_h=u8t_data_h_temp;u8t_data_l=u8t_d

39、ata_l_temp;u8checkdata=u8checkdata_temp;void convdat() ds1=u8rh_data_h/10; ds2=u8rh_data_h%10; ds3=u8t_data_h/10; ds4=u8t_data_h%10;2. lcd_1602.h程序#define uchar unsigned char#define uint unsigned intsbit rs=p25;sbit rw=p26;sbit e=p27;uchar d;uchar code tab_t="temperature: c"uchar code tab_

40、h="humidity: %"uchar code tab_time="time:"uchar code tab_set_temp_h="set_temp_high"uchar code tab_set_temp_l="set_temp_ low"uchar code tab_set_humi_h="set_humi_high"uchar code tab_set_humi_l="set_humi_ low"uchar code tab_set_hour="set_

41、hour"uchar code tab_lcd_num='0','1','2','3','4','5','6','7','8','9'void delay_1602(uchar x)uchar a,b;for(a=0;a<10;a+) for(b=x;b>0;b-); void write_cmd(uchar x)e=0;rs=0;rw=0;e=1;p0=x;delay_1602(50);/*uchar read_

42、dat()rs=1;rw=1;e=1;d=p0;delay(5);return d;*/void write_dat(uchar y)e=0;rs=1;rw=0;e=1;p0=y;delay_1602(50);e=0;void busy()uchar a;while(a=0x80)e=0; rs=0; rw=1; e=1;delay_1602(50); a=p0;void init_lcd()busy();write_cmd(0x38);delay_1602(5);busy();write_cmd(0x01);delay_1602(5);busy();write_cmd(0x0c);delay

43、_1602(5);3. zxhr.c程序#include <reg52.h>/52單片機頭文件#include <dht11.h>/溫濕度傳感器dht11頭文件#include <lcd_1602.h>/液晶屏1602頭文件 uchar i,key_flag;uchar set_temp_h,set_temp_h_shi,set_temp_h_ge;/設定溫度的變量uchar set_temp_l,set_temp_l_shi,set_temp_l_ge;/設定溫度的變量uchar set_humi_h,set_humi_h_ge,set_humi_h_sh

44、i;/設置濕度的變量uchar set_humi_l,set_humi_l_ge,set_humi_l_shi;/設置濕度的變量sbit k1=p32;/定義按鍵k1sbit k2=p33;/定義按鍵k2sbit k3=p34;/定義按鍵k3sbit k4=p35;/定義按鍵k4/延時函數(shù)/void delay(uchar x)uchar a,b;for(a=0;a<20;a+) for(b=x;b>0;b-); /顯示溫度 和 濕度/void disp_t_h() write_cmd(0x8c); write_dat(tab_lcd_numds3);/顯示溫度十位 write_c

45、md(0x8d); write_dat(tab_lcd_numds4);/顯示溫度個位 write_cmd(0xcc); write_dat(tab_lcd_numds1);/顯示溫濕度十位 write_cmd(0xcd); write_dat(tab_lcd_numds2);/顯示溫濕度個位/開機顯示/void disp_start()for(i=0;i<16;i+) write_cmd(0x80+i); write_dat(tab_ti);/溫度 for(i=0;i<16;i+) write_cmd(0xc0+i); write_dat(tab_hi);/濕度 /掃描按鍵/vo

46、id key_scan()if(k1=0)/按下k1 /設置溫度上限/ if(key_flag=0)/按鍵標志0 write_cmd(0x01);/清屏 write_cmd(0x80);/顯示位置第一行第一列 for(i=0;i<13;i+) write_dat(tab_set_temp_hi);/顯示set temperature字符 while(k4=1)/按下k4 if(k2=0)/按下k2 while(k2=0); set_temp_h+;/設置溫度數(shù)值加 if(set_temp_h=100)/到100,清0 set_temp_h=0; if(k3=0)/按下k2 while(k3=0);/松手檢測 set_temp_h-;/設置溫度數(shù)值減 if(set_temp_h=0)/到0,加為100 set_temp_h=100; set_temp_h_ge=set_temp_

溫馨提示

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

評論

0/150

提交評論