智能空調(diào)控制系統(tǒng)設(shè)計(jì)_第1頁(yè)
智能空調(diào)控制系統(tǒng)設(shè)計(jì)_第2頁(yè)
智能空調(diào)控制系統(tǒng)設(shè)計(jì)_第3頁(yè)
智能空調(diào)控制系統(tǒng)設(shè)計(jì)_第4頁(yè)
智能空調(diào)控制系統(tǒng)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩49頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、課 程 設(shè) 計(jì) 說(shuō) 明 書(shū)題目:智能空調(diào)控制系統(tǒng) 學(xué)院(系):年級(jí)專(zhuān)業(yè): 學(xué) 號(hào):學(xué)生姓名:指導(dǎo)教師:教師職稱(chēng) 摘 要智能空調(diào)控制系統(tǒng)是根據(jù)溫度傳感器采集室內(nèi)的環(huán)境溫度與系統(tǒng)的預(yù)設(shè)值進(jìn)行對(duì)比,通過(guò)控制系統(tǒng)的預(yù)先設(shè)置,空調(diào)進(jìn)行自動(dòng)制冷或制熱,從而達(dá)到了智能控制的目的。根據(jù)人們對(duì)生活環(huán)境的要求和單片機(jī)的應(yīng)用特性,本文介紹了應(yīng)用STC89C52單片機(jī)進(jìn)行控制的智能空調(diào)控制系統(tǒng)。智能空調(diào)控制系統(tǒng)主要由電源電路、液晶顯示電路、單片機(jī)控制電路、按鍵電路、控制指示電路等組成。其工作原理是溫度傳感器DS18B20采集室內(nèi)溫度傳送給單片機(jī),單片機(jī)分析數(shù)據(jù),控制智能空調(diào)加熱或制冷。此系統(tǒng)可以通過(guò)按鍵設(shè)置空調(diào)的溫度

2、,使空調(diào)對(duì)室內(nèi)進(jìn)行加溫或降溫,也可以對(duì)系統(tǒng)預(yù)設(shè)一個(gè)溫度值,通過(guò)傳感器感知室內(nèi)溫度與智能空調(diào)的預(yù)設(shè)溫度值進(jìn)行對(duì)比,通過(guò)單片機(jī)控制空調(diào)對(duì)室內(nèi)進(jìn)行加溫或降溫,達(dá)到智能空調(diào)的自動(dòng)控制功能。在定時(shí)功能啟動(dòng)的情況下,如果計(jì)時(shí)時(shí)間與定時(shí)時(shí)間相同,此時(shí)空調(diào)相應(yīng)的狀態(tài)會(huì)自動(dòng)關(guān)閉,把定時(shí)時(shí)間存在STC89C52單片機(jī)內(nèi)部的EEPROM中,斷電后不會(huì)消失,直至通過(guò)按鍵去改變,達(dá)到了智能空調(diào)的定時(shí)功能。關(guān)鍵詞:智能空調(diào);液晶顯示;STC89C52單片機(jī);ds18b20溫度檢測(cè)芯片目 錄1智能空調(diào)控制系統(tǒng)的方案設(shè)計(jì)1智能空調(diào)控制系統(tǒng)1系統(tǒng)工作原理2系統(tǒng)功能模塊工作原理介紹2各功能要求實(shí)現(xiàn)的工作原理22系統(tǒng)功能模塊的設(shè)計(jì)

3、與實(shí)現(xiàn)5主控制模塊5主控制單元模塊設(shè)計(jì)5主控制單元工作原理5電源模塊設(shè)計(jì)6電源模塊概述6電源模塊的應(yīng)用6溫度檢測(cè)模塊設(shè)計(jì)7溫度傳感器的選取7DS18B20概述7溫度檢測(cè)單元電路8顯示模塊設(shè)計(jì)101602液晶顯示器概述10顯示模塊電路15模塊設(shè)計(jì)17鍵盤(pán)電路功能設(shè)定17矩陣鍵盤(pán)電路工作原理17外圍驅(qū)動(dòng)電路模塊設(shè)計(jì)18驅(qū)動(dòng)電路18JQC-3FF繼電器183系統(tǒng)軟件設(shè)計(jì)204系統(tǒng)測(cè)試及結(jié)果分析23系統(tǒng)測(cè)試23系統(tǒng)測(cè)試結(jié)果及分析25結(jié)論26心得體會(huì)27參考文獻(xiàn)27附錄281 智能空調(diào)控制系統(tǒng)的方案設(shè)計(jì)本系統(tǒng)以單片機(jī)STC89C52為核心,采用電源模塊、溫度采集、鍵盤(pán)輸入、液晶顯示、驅(qū)動(dòng)電路等,實(shí)現(xiàn)了基

4、于空調(diào)溫度控制系統(tǒng)。把定時(shí)時(shí)間存入單片機(jī)EEPROM中,不易丟失。人機(jī)交互采用按鍵輸入、液晶顯示,界面友好,易于操作。1.1 智能空調(diào)控制系統(tǒng)DS18B20溫度傳感器采集室內(nèi)溫度數(shù)據(jù),并將信息反饋給CPU,單片機(jī)分析并與設(shè)定的溫度值進(jìn)行比較,通過(guò)驅(qū)動(dòng)電路使智能空調(diào)調(diào)節(jié)不同的工作狀態(tài),單片機(jī)的工作狀態(tài)有加熱、制冷工作狀態(tài)。不同的按鍵S的功能設(shè)置為:S2為“加”,S10為“減”,S3啟動(dòng)/關(guān)閉,S5為啟動(dòng)智能空調(diào)制冷狀態(tài),S6為調(diào)節(jié)走時(shí)按鍵,S7為啟動(dòng)智能空調(diào)暖風(fēng)工作狀態(tài),S13為開(kāi)啟/關(guān)閉定時(shí),S14為調(diào)節(jié)定時(shí)。系統(tǒng)的結(jié)構(gòu)框圖如圖1-1所示:?jiǎn)纹瑱C(jī) 液晶顯示 鍵盤(pán)輸入 溫度檢測(cè) 晶振電路 驅(qū)動(dòng)電

5、路復(fù)位電路圖1-1 智能空調(diào)控制系統(tǒng)結(jié)構(gòu)框圖1.2 系統(tǒng)工作原理1.2.1 系統(tǒng)功能模塊工作原理介紹電源管理模塊將外部交流電通過(guò)整流變壓器及穩(wěn)壓芯片7805進(jìn)行穩(wěn)壓,以便提供給各個(gè)系統(tǒng)工作模塊,如DS18B20溫度傳感器、單片機(jī)主控制單元、液晶顯示單元、驅(qū)動(dòng)電路單元等。單片機(jī)(STC89C52)主控制單元負(fù)責(zé)整個(gè)智能空調(diào)控制系統(tǒng)的運(yùn)行控制,通過(guò)人際交互單元(按鍵及液晶顯示)的系統(tǒng)功能設(shè)置,用1602液晶顯示器將室內(nèi)溫度顯示出來(lái),并且可以通過(guò)按鍵進(jìn)行調(diào)整,實(shí)現(xiàn)空調(diào)加熱或制冷的工作狀態(tài)設(shè)置,即達(dá)到智能空調(diào)的手動(dòng)控制功能。通過(guò)DS18B20溫度傳感器實(shí)時(shí)檢測(cè)室溫并通過(guò)1602液晶顯示器顯示室溫,并將

6、室溫與預(yù)設(shè)值進(jìn)行對(duì)比,實(shí)現(xiàn)空調(diào)自動(dòng)制冷或加熱,實(shí)現(xiàn)了智能空調(diào)的自動(dòng)控制功能。在定時(shí)功能啟動(dòng)的情況下,如果計(jì)時(shí)時(shí)間與定時(shí)時(shí)間相同,此時(shí),空調(diào)相應(yīng)的工作狀態(tài)會(huì)自動(dòng)關(guān)閉。把定時(shí)時(shí)間存在STC89C52單片機(jī)內(nèi)部的EEPROM中,斷電后不會(huì)消失,直至通過(guò)按鍵去改變,實(shí)現(xiàn)了智能空調(diào)的定時(shí)加熱或制冷功能。1.2.2 各功能要求實(shí)現(xiàn)的工作原理1、定時(shí)與時(shí)間顯示剛開(kāi)始上電時(shí),1602液晶顯示器上產(chǎn)生實(shí)時(shí)時(shí)間。此系統(tǒng)運(yùn)用單片機(jī)的定時(shí)器功能產(chǎn)生走時(shí),采用的是二十四小時(shí)制,在一直通電的情況下,會(huì)一直加到23:59:59,然后清零從00:00:00重新開(kāi)始。若開(kāi)啟定時(shí)功能,液晶右下角顯示定時(shí)時(shí)間,在顯示器的右上角顯示

7、ON,未開(kāi)啟定時(shí)功能則顯示OFF。液晶顯示屏的顯示畫(huà)面,如表1-1所示:表1-1未開(kāi)啟定時(shí)或開(kāi)啟定時(shí)功能,液晶顯示屏顯示結(jié)果0123456789101112131415OOFNF單片機(jī)得電后,其內(nèi)部定時(shí)器會(huì)立即開(kāi)啟,在軟件程序中設(shè)定其相應(yīng)的內(nèi)部定時(shí)器的寄存器從而相應(yīng)的走時(shí)會(huì)比較準(zhǔn)確的記錄下來(lái)。2、溫度檢測(cè)與顯示DS18B20檢測(cè)的室內(nèi)溫度信號(hào)返回給單片機(jī),單片機(jī)會(huì)相應(yīng)的處理此溫度信號(hào),同時(shí)送往液晶顯示器顯示。提前設(shè)定的溫度值存在單片機(jī)ROM中,單片機(jī)處理后,也會(huì)在液晶上顯示。如表1-2所示,用*表示實(shí)時(shí)室內(nèi)溫度。表1-2 液晶顯示屏顯示實(shí)時(shí)室內(nèi)溫度(*為溫度值)0123456789101112

8、131415*智能溫控就是感溫頭精確感應(yīng),把室內(nèi)溫度的變化傳遞給中央控制芯片,由芯片控制系統(tǒng)使室內(nèi)溫度達(dá)到顯示屏上的設(shè)定溫度,使用者只需要自身的要求而去設(shè)定不同的溫度即可,以達(dá)到最大的智能化控制。3、鍵盤(pán)調(diào)節(jié)人機(jī)交互采用鍵盤(pán)輸入。通過(guò)鍵盤(pán)輸入指令,控制相應(yīng)的不同狀態(tài)的切換、時(shí)間定時(shí)長(zhǎng)短的設(shè)定。調(diào)整時(shí)間設(shè)定(*表示光標(biāo)閃爍)如表1-3所示。表1-3液晶顯示的調(diào)整時(shí)間設(shè)定(*為走時(shí)時(shí)間,為定時(shí)時(shí)間)0123456789101112131415*:*:*:通過(guò)按鍵把定時(shí)的時(shí)間寫(xiě)入單片機(jī)的EEPROM中,永久性保存。2 系統(tǒng)功能模塊的設(shè)計(jì)與實(shí)現(xiàn)2.1 主控制模塊2.1.1 主控制單元模塊設(shè)計(jì)系統(tǒng)主控制

9、單元,采用AT89c52單片機(jī)為主控制芯片,主要包括AT89c52單片機(jī)、復(fù)位電路、時(shí)鐘電路、下載電路、電源指示電路。2.1.2 主控制單元工作原理系統(tǒng)主控制單元如圖2-1所示:圖2-1 系統(tǒng)主控制單元功能電路STC89C52單片機(jī)具有256KB的程序存儲(chǔ)區(qū)、8KBFlashROM,完全滿(mǎn)足系統(tǒng)設(shè)計(jì)需要,按鍵S1為復(fù)位按鍵,采用低電平復(fù)位,電容C3與電阻R10組成上電復(fù)位電路,為了提高串行通信波特率的準(zhǔn)確度,時(shí)鐘電路采用12MHZ的晶振和電容C1、電容C2組成振蕩電路。2.2 電源模塊設(shè)計(jì)2.2.1 電源模塊概述LM7805是常用的三端穩(wěn)壓器,一般使用的是TO-220封裝,能提供DC 5V的輸

10、出電壓,應(yīng)用范圍廣,內(nèi)含過(guò)流和過(guò)載保護(hù)電路。帶散熱片時(shí)能持續(xù)提供1A的電流,如果使用外圍器件,它還能提供不同的電壓和電流。2.2.2 電源模塊的應(yīng)用電源模塊電路如圖2-2所示。電源電路主要為系統(tǒng)提供工作圖2-2 電源模塊功能電路電源,總電源有220V輸入,通過(guò)變壓器和整流器輸出12V直流電源。但是這個(gè)直流電源很不穩(wěn)定,所以再用一個(gè)7805進(jìn)行穩(wěn)壓,輸出穩(wěn)定的5V直流電源。供單片機(jī)、lcd1602等使用。2.3 溫度檢測(cè)模塊設(shè)計(jì)2.3.1 溫度傳感器的選取溫度是一種最基本的環(huán)境參數(shù),人民的生活舒適度與環(huán)境的溫度息息相關(guān),DS18B20裝置適用于人民的日常生活和工業(yè)和農(nóng)業(yè)生產(chǎn)用的溫度測(cè)量。由半導(dǎo)體

11、公司生產(chǎn)的DS18B20型單線(xiàn)智能溫度傳感器,屬于新一代適配微處理器的智能溫度傳感器,可廣泛用于工業(yè)、民用、軍事等領(lǐng)域的溫度測(cè)量及控制儀器、測(cè)控系統(tǒng)和大型設(shè)備中。DS18B20具有體積小,接口方便,傳輸距離遠(yuǎn)等特點(diǎn)。采用數(shù)字溫度傳感器DS18B20,與傳統(tǒng)的熱敏電阻相比,它能夠直接讀出被測(cè)溫度并且可根據(jù)實(shí)際要求通過(guò)簡(jiǎn)單的編程實(shí)現(xiàn)912位的數(shù)字值讀數(shù)方式。可以分別在和750ms內(nèi)完成9位和12位的數(shù)字量,并且從DS18B20讀出的信息或?qū)懭隓S18B20的信息僅需要一根口線(xiàn)( 單線(xiàn)接口) 讀寫(xiě),溫度變換功率來(lái)源于數(shù)據(jù)總線(xiàn),總線(xiàn)本身也可以向所掛接的DS18B20供電,而無(wú)需額外電源。因而使用DS1

12、8B20可使系統(tǒng)結(jié)構(gòu)更趨簡(jiǎn)單,可靠性更高,成本更低。測(cè)量溫度范圍為-55+125。在-10+85,精度為±。DS18B20的精度較差為±2?,F(xiàn)場(chǎng)溫度直接以“一線(xiàn)總線(xiàn)”的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性。2.3.2 DS18B20概述1DS18B20的性能特點(diǎn):(1)采用單總線(xiàn)專(zhuān)用技術(shù),既可通過(guò)串行口線(xiàn),也可通過(guò)其它I/O口線(xiàn)與微機(jī)接口,無(wú)須經(jīng)過(guò)其它變換電路,直接輸出被測(cè)溫度值(9位二進(jìn)制數(shù),含符號(hào)位)。(2) 測(cè)溫范圍是-55+125。(3)內(nèi)含64位經(jīng)過(guò)激光修正的只讀存儲(chǔ)器ROM。(4)適配各種單片機(jī)或系統(tǒng)機(jī)。(5)用戶(hù)可分別設(shè)定各路溫度的上、下限。(6)內(nèi)含寄生電

13、源。2DS18B20內(nèi)部結(jié)構(gòu)DS18B20內(nèi)部結(jié)構(gòu)主要由4部分組成:64位光刻ROM,溫度傳感器,非揮發(fā)的溫度報(bào)警觸發(fā)器TH和TL,配制寄存。DS18B20的管腳排列如圖2-3所示。圖2-3 DS18B20引腳圖3DS18B20引腳功能如下:NC(1 、2 、6 、7 、8腳) :空引腳,懸空不使用。VDD(3腳):可選電源腳,電源電壓范圍是3。DQ(4腳):數(shù)據(jù)輸入/輸出腳,漏極開(kāi)路,常態(tài)下高電平。2.3.3 溫度檢測(cè)單元電路溫度檢測(cè)單元采用DS18B20實(shí)現(xiàn)溫度的檢測(cè)。功能電路如圖2-4所示,溫度傳感器DS18B20將采集回來(lái)的數(shù)據(jù)經(jīng)口給AT89c52單片機(jī),AT89c52單片機(jī)把這些數(shù)據(jù)

14、進(jìn)行分析,送至1602液晶顯示器上顯示溫度。圖2-4 DS18B 20溫度檢測(cè)功能電路具體操作如下:1DS18B20初始化。(1)數(shù)據(jù)線(xiàn)拉到低電平“0”。(2)延時(shí)480微妙(該時(shí)間的時(shí)間范圍可以從480到960微妙)。(3)數(shù)據(jù)線(xiàn)拉到高電平“1”。(4)延時(shí)等待80微妙。如果初始化成功則在15到60微妙時(shí)間內(nèi)產(chǎn)生一個(gè)由DS18B20所返回的低電平“0”。根據(jù)該狀態(tài)可以來(lái)確定它的存在,但是應(yīng)注意不能無(wú)限的進(jìn)行等待,不然會(huì)使程序進(jìn)入死循環(huán),所以要進(jìn)行超時(shí)判斷。(5)若CPU讀到了數(shù)據(jù)線(xiàn)上的低電平“0”后,還要做延時(shí),其延時(shí)的時(shí)間從發(fā)出的高電平算起(第(3)步的時(shí)間算起)最少要480微妙。2控制器

15、寫(xiě)時(shí)序。(1)數(shù)據(jù)線(xiàn)先置“0”(2)延時(shí)15微妙。(3)按從低位到高位的順序發(fā)送數(shù)據(jù)(一次只發(fā)生一位)。(4)延時(shí)60微妙。(5)將數(shù)據(jù)線(xiàn)拉到高電平。(6)重復(fù)15步驟,直到發(fā)送完整的字節(jié)。(7)最后將數(shù)據(jù)線(xiàn)拉高。3控制器讀時(shí)序。(1)將數(shù)據(jù)線(xiàn)拉低“0”。(2)延時(shí)6微妙。(3)將數(shù)據(jù)線(xiàn)拉高“1”,釋放總線(xiàn)準(zhǔn)備讀數(shù)據(jù)。(4)延時(shí)4微妙。(5)讀數(shù)據(jù)線(xiàn)的狀態(tài)得到1個(gè)狀態(tài)位,并進(jìn)行數(shù)據(jù)處理。(6)延時(shí)30微妙。(7)重復(fù)17步驟,直到讀完一個(gè)字節(jié)。2.4 顯示模塊設(shè)計(jì)2.4.1 1602液晶顯示器概述1液晶顯示器簡(jiǎn)介液晶顯示器的主要工作原理是通過(guò)電流刺激液晶分子,從而產(chǎn)生點(diǎn)、線(xiàn)、面、并配合背部燈管

16、構(gòu)成不同的顯示畫(huà)面。各種不同型號(hào)的液晶顯示器都是按照顯示字符的行數(shù)或者是液晶顯示器點(diǎn)陣的行、列數(shù)進(jìn)行命名的。例如:1602液晶顯示器所表述的意思就是,每行顯示16個(gè)字符,一共能夠有兩行進(jìn)行顯示字符。本設(shè)計(jì)就是應(yīng)用1602液晶顯示器進(jìn)行顯示溫度以及定時(shí)時(shí)間。液晶顯示器的英文名稱(chēng)是Liquid Crystal Display,所以液晶顯示器又可以叫做LCD,以下的1602液晶顯示器都稱(chēng)為L(zhǎng)CD1602。字符型液晶顯示模塊是一種專(zhuān)門(mén)用于顯示字母、數(shù)字、符號(hào)等點(diǎn)陣式液晶顯示器,LCD1602以并行操作方式占大多數(shù),但是有的也并行操作方式和串行操作方式同時(shí)具有,用戶(hù)自行選擇并口或串口操作。2 LCD16

17、02的基本參數(shù)及引腳功能:LCD1602分為帶背光和不帶背光兩種,基控制器大部分為HD44780,帶背光的比不帶背光的要厚,是否帶背光在應(yīng)用中并無(wú)差別,兩者尺寸差別,如圖2-5所示:圖2-5LCD1602尺寸圖3LCD1602主要技術(shù)參數(shù):(1)顯示容量:162個(gè)字符(2)芯片工作電壓:(3)工作電流:2.0mA(5.0V)(4)模塊最佳工作電壓:(5)字符尺寸:2.954.35(WH)mm4.引腳功能說(shuō)明:LCD1602采用標(biāo)準(zhǔn)的14腳(無(wú)背光)或16腳(帶背光)接口,各引腳接口說(shuō)明如表2-1所示:第1腳:VSS為地電源。第2腳:VDD接5V正電源。第3腳:VL為液晶顯示器對(duì)比度調(diào)整端,接正

18、電源時(shí)對(duì)比度最弱,接地時(shí)對(duì)比度最高,對(duì)比度過(guò)高時(shí)會(huì)產(chǎn)生“鬼影”,使用時(shí)可以通過(guò)一個(gè)10K的電位器調(diào)整對(duì)比度。第4腳:RS為寄存器選擇,高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器。表2-1 LCD1602引腳接口說(shuō)明編號(hào)符號(hào)引腳說(shuō)明編號(hào)符號(hào)引腳說(shuō)明1VSS電源地9D2數(shù)據(jù)口2VDD電源正極10D3數(shù)據(jù)口3VL液晶顯示偏壓11D4數(shù)據(jù)口4RS數(shù)據(jù)/命令選擇12D5數(shù)據(jù)口5R/W讀/寫(xiě)選擇13D6數(shù)據(jù)口6E使能信號(hào)14D7數(shù)據(jù)口7D0數(shù)據(jù)口15BLA背光源正極8D1數(shù)據(jù)口16BLK背光源負(fù)極第5腳:R/W為讀寫(xiě)信號(hào)線(xiàn),高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫(xiě)操作。當(dāng)RS和R/W共同為低電平時(shí)可以寫(xiě)入指

19、令或者顯示地址,當(dāng)RS為低電平R/W為高電平時(shí)可以讀忙信號(hào),當(dāng)RS為高電平R/W為低電平時(shí)可以寫(xiě)入數(shù)據(jù)。第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。第714腳:D0D7為8位雙向數(shù)據(jù)線(xiàn)。第15腳:背光源正極。第16腳:背光源負(fù)極。5LCD1602的指令說(shuō)明:LCD1602內(nèi)部的控制器共有11條控制指令,如表3-2所示。LCD1602液晶模塊的讀寫(xiě)操作、屏幕和光標(biāo)的操作都是通過(guò)指令編程來(lái)實(shí)現(xiàn)的。(說(shuō)明:1為高電平、0為低電平)表3-2 LCD1602控制指令序號(hào)指令RSR/WD7D6D5D4D3D2D1D01清顯示00000000012光標(biāo)返回000000001*3置輸

20、入模式00000001I/DS4顯示開(kāi)/關(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寫(xiě)數(shù)到CGRAM或DDRAM10要寫(xiě)的數(shù)據(jù)內(nèi)容11從CGRAM或DDRAM讀數(shù)11讀出的數(shù)據(jù)內(nèi)容指令1:清顯示,指令碼01H,光標(biāo)復(fù)位到地址00H位置。指令2:光標(biāo)復(fù)位,光標(biāo)返回到地址00H。指令3:光標(biāo)和顯示模式設(shè)置I/D:光標(biāo)移動(dòng)方向。高電平右移,低電平左移。S:屏幕上所有文字是否左移或者右移。高電平表示有效,低電平則無(wú)效。指令4

21、:顯示開(kāi)關(guān)控制。D:控制整體顯示的開(kāi)與關(guān),高電平表示開(kāi)顯示,低電平表示關(guān)顯示。C:控制光標(biāo)的開(kāi)與關(guān),高電平表示有光標(biāo),低電平表示無(wú)光標(biāo)。B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍。指令5:光標(biāo)或顯示移位。S/C:高電平時(shí)移動(dòng)顯示的文字,低電平時(shí)移動(dòng)光標(biāo)。指令6:功能設(shè)置命令。 DL:高電平時(shí)為4位總線(xiàn),低電平時(shí)為8位總線(xiàn)。N:低電平時(shí)為單行顯示,高電平時(shí)雙行顯示。F: 低電平時(shí)顯示5x7的點(diǎn)陣字符,高電平時(shí)顯示5x10的點(diǎn)陣字符。指令7:字符發(fā)生器RAM地址設(shè)置。指令8:DDRAM地址設(shè)置。指令9:讀忙信號(hào)和光標(biāo)地址BF:為忙標(biāo)志位,高電平表示忙,此時(shí)模塊不能接收命令或者數(shù)據(jù),如果為低電平

22、表示不忙。指令10:寫(xiě)數(shù)據(jù)。指令11:讀數(shù)據(jù)。6LCD1602的RAM地址映射及標(biāo)準(zhǔn)字庫(kù)表:液晶顯示模塊是一個(gè)慢顯示器件,所以在執(zhí)行每條指令之前一定要確認(rèn)模塊的忙標(biāo)志為低電平,表示不忙,否則此指令失效。要顯示字符時(shí)要先輸入顯示字符地址,也就是告訴模塊在哪里顯示字符,圖2-7是LCD1602的內(nèi)部顯示地址。在對(duì)液晶模塊的初始化中要先設(shè)置其顯示模式,在液晶模塊顯示字符時(shí)光標(biāo)是自動(dòng)右移的,無(wú)需人工干預(yù)。每次輸入指令前都要判斷液晶模塊是否處于忙的狀態(tài)。圖2-7LCD1602內(nèi)部顯示地址LCD1602液晶模塊內(nèi)部的字符發(fā)生存儲(chǔ)器(CGROM)已經(jīng)存儲(chǔ)了160個(gè)不同的點(diǎn)陣字符圖形,如圖3-7所示,這些字符

23、有:阿拉伯?dāng)?shù)字、英文字母的大小寫(xiě)、常用的符號(hào)等,每一個(gè)字符都有一個(gè)固定的代碼,比如大寫(xiě)的英文字母“A”的代碼是01000001B(41H),顯示時(shí)模塊把地址41H中的點(diǎn)陣字符圖形顯示出來(lái),我們就能看到字母“A”。7. LCD1602的一般初始化(復(fù)位)過(guò)程:寫(xiě)指令38H:顯示模式設(shè)置寫(xiě)指令08H:顯示關(guān)閉寫(xiě)指令01H:顯示清屏寫(xiě)指令06H:顯示光標(biāo)移動(dòng)設(shè)置寫(xiě)指令0CH:顯示開(kāi)及光標(biāo)設(shè)置2.4.2 顯示模塊電路在該系統(tǒng)中顯示用到的是LCD1602液晶顯示器。液晶顯示器以其微功耗、體積小、顯示內(nèi)容豐富、超薄輕巧的諸多優(yōu)點(diǎn),在各種小系統(tǒng)中得到了非常廣泛的應(yīng)用。LCD1602是指顯示的內(nèi)容為16

24、15;2,即可以顯示2行,每行16個(gè)字符液晶模塊(顯示字符和數(shù)字)。圖2-8LCD1602與單片機(jī)接線(xiàn)電路圖2.5 模塊設(shè)計(jì)2.5.1 鍵盤(pán)電路功能設(shè)定鍵盤(pán)電路圖如圖2-9所示。圖2-9鍵盤(pán)電路圖按鍵S116組成矩陣鍵盤(pán)與單片機(jī)AT89c52的P3口相連接。S2為“加”,S10為“減”,S3啟動(dòng)/關(guān)閉,S5為啟動(dòng)智能空調(diào)制冷狀態(tài),S6為調(diào)節(jié)走時(shí)按鍵,S7為啟動(dòng)智能空調(diào)暖風(fēng)工作狀態(tài),S13為開(kāi)啟/關(guān)閉定時(shí),S14為調(diào)節(jié)定時(shí)。2.5.2 矩陣鍵盤(pán)電路工作原理矩陣鍵盤(pán)采用動(dòng)態(tài)掃描的方式:首先給P3.0口低電平,然后逐列掃描,如果S1鍵按下則P3.4口為低電平;然后給P3.1口低電平,再逐列掃描,以此

25、類(lèi)推,直到P3.3為低電平,掃描完一次矩陣鍵盤(pán)。2.6 外圍驅(qū)動(dòng)電路模塊設(shè)計(jì)2.6.1 驅(qū)動(dòng)電路本系統(tǒng)中AT89c52單片機(jī)根據(jù)讀取的按鍵值,做出不同的響應(yīng)動(dòng)作。單片機(jī)只是一個(gè)主控方,他的強(qiáng)大功能必須依靠外圍器件驅(qū)動(dòng)才能完成,所以本設(shè)計(jì)中通過(guò)三極管VT1(8550),繼電器K1后,驅(qū)動(dòng)智能空調(diào)的啟動(dòng)/停止功能,最終使室內(nèi)的溫度保持在一個(gè)人為感覺(jué)良好的理想狀態(tài)。通過(guò)控制繼電器的通/斷即可達(dá)到智能空調(diào)智能控制的要求。驅(qū)動(dòng)電路圖如圖2-10所示。圖2-10 驅(qū)動(dòng)電路圖2.6.2 JQC-3FF繼電器繼電器的工作原理實(shí)質(zhì)是通過(guò)低電壓、小電流控制高電壓、大電流。JQC-3FF-5V繼電器的觸點(diǎn)形式是一開(kāi)

26、一閉。繼電器的工作參數(shù)如表3-4所示。表2-4 繼電器工作參數(shù)額定電壓:DC-12V額定電流:12觸點(diǎn)切換電流:10觸點(diǎn)切換電壓:1防護(hù)特征:塑封式觸點(diǎn)負(fù)載:大功率應(yīng)用范圍:電磁型號(hào):JQC-3FF-5VDC-1ZS(551)觸點(diǎn)形式:一開(kāi)一閉3 系統(tǒng)軟件設(shè)計(jì)系統(tǒng)軟件設(shè)計(jì)采用模塊化、結(jié)構(gòu)化的設(shè)計(jì)思想,使程序便于移植。系統(tǒng)程序主要包括主程序、系統(tǒng)宏定義、鍵盤(pán)處理函數(shù)、LCD顯示函數(shù)、溫度檢測(cè)、系統(tǒng)控制算法函數(shù)。首先系統(tǒng)上電后啟動(dòng)系統(tǒng)功能,此時(shí)處于待機(jī)狀態(tài),S3按下后液晶顯示器顯示,空調(diào)開(kāi)始工作,然后可以通過(guò)人機(jī)交互選擇系統(tǒng)所運(yùn)行的功能。系統(tǒng)上電后自動(dòng)開(kāi)始走時(shí),開(kāi)機(jī)后顯示器顯示時(shí)間、室內(nèi)溫度確定值

27、、設(shè)定值以及定時(shí)時(shí)間。通過(guò)人機(jī)交互選擇系統(tǒng)所運(yùn)行的功能,確定這些數(shù)值是否需要進(jìn)行改動(dòng)。當(dāng)上述所有數(shù)值設(shè)定好后,再次通過(guò)人機(jī)交互選擇系統(tǒng)所運(yùn)行的功能,把所定時(shí)的時(shí)間寫(xiě)入到單片機(jī)的EEPROM中,把定時(shí)功能開(kāi)啟。智能空調(diào)控制系統(tǒng)的主程序流程圖,如圖3-1所示:開(kāi)始調(diào)用鍵盤(pán)程序DS18B20檢測(cè)溫度 判斷按鍵做出相應(yīng)處理液晶顯示有按鍵?NY圖3-1主程序流程圖智能空調(diào)控制系統(tǒng)按鍵部分的子程序流程圖,如圖3-2所示:圖3-2按鍵部分的子程序流程圖液晶顯示部分的子程序流程圖,如圖3-3所示:圖3-3液晶顯示部分的子程序流程圖4 系統(tǒng)測(cè)試及結(jié)果分析通過(guò)兩周的設(shè)計(jì)和制作,本系統(tǒng)成功地實(shí)現(xiàn)了設(shè)計(jì)要求。為驗(yàn)證系

28、統(tǒng)的功能和各項(xiàng)技術(shù)指標(biāo),下面通過(guò)實(shí)驗(yàn)對(duì)本系統(tǒng)進(jìn)行功能驗(yàn)證。4.1 系統(tǒng)測(cè)試1.首先上電,液晶顯示器不顯示。2.S3按下后顯示走時(shí),定時(shí)、實(shí)際溫度值等。3.按下S7按鍵,開(kāi)啟暖風(fēng)模式,右上角顯示1.4. 按下S13按鍵,開(kāi)啟定時(shí)模式。5. 定時(shí)模式開(kāi)啟時(shí),按下S14按鍵,可調(diào)節(jié)定時(shí)時(shí)間。此時(shí)光標(biāo)閃爍。按下S2或S9可調(diào)節(jié)時(shí)間。6. 按下S6按鍵,光標(biāo)在時(shí)間處閃爍,此時(shí)按下S2或S9可調(diào)節(jié)時(shí)間。4.2 系統(tǒng)測(cè)試結(jié)果及分析通過(guò)以上的測(cè)試數(shù)據(jù)分析,可以得出以下結(jié)論:1、本系統(tǒng)的走時(shí)功能,定時(shí)功能得以實(shí)現(xiàn)。2、本裝置使用了矩陣鍵盤(pán)。按鍵簡(jiǎn)潔方便,滿(mǎn)足人們的習(xí)慣??蓪?shí)現(xiàn)各個(gè)功能的調(diào)節(jié)與運(yùn)行。3、走時(shí)精確度

29、較高,與現(xiàn)實(shí)的時(shí)間相差甚小,可以完全作為一個(gè)電子鐘使用。走時(shí)精確,而就會(huì)減小定時(shí)長(zhǎng)短的失誤,更加精確化。利用單片機(jī)的自身資源,節(jié)省了成本,減少了外圍電路的設(shè)計(jì)。4、溫度傳感器檢測(cè)的實(shí)時(shí)溫度準(zhǔn)確度較高,可以使室內(nèi)溫度始終保持在一個(gè)比較理想的狀態(tài)中,使人們的生活更加舒適。5、在本設(shè)計(jì)中,為了防止在溫控點(diǎn)上壓縮機(jī)頻繁的啟動(dòng)/關(guān)閉,影響其壽命,溫控的精度誤差控制在1攝氏度。實(shí)踐證明,這對(duì)室內(nèi)的溫度并沒(méi)有明顯的影響。結(jié)論本論文分析了智能空調(diào)控制系統(tǒng)結(jié)構(gòu)和特點(diǎn),總結(jié)全文,主要的研究工作有以下幾個(gè)方面:1、對(duì)智能空調(diào)控制系統(tǒng)的原理和組成進(jìn)行了詳細(xì)的介紹,確定了系統(tǒng)的總體設(shè)計(jì)方案。2、對(duì)智能空調(diào)控制系統(tǒng)的控制

30、過(guò)程做了準(zhǔn)確的算法分析,包括檢測(cè)過(guò)程中的實(shí)時(shí)溫度、按鍵復(fù)用、驅(qū)動(dòng)等,通過(guò)上述分析最終通過(guò)程序算法實(shí)現(xiàn)溫度的自動(dòng)控制控制。3、對(duì)鍵盤(pán)詳細(xì)的分析,采用內(nèi)部定時(shí)器產(chǎn)生實(shí)時(shí)時(shí)鐘供顯示屏顯示,使其可作為一臺(tái)精度較高的電子時(shí)鐘使用。這樣節(jié)省了成本。4、以AT89c52最小系統(tǒng)板為控制系統(tǒng),進(jìn)行并完成了系統(tǒng)要求所需的各硬件模塊的原理圖,并做了相應(yīng)的硬件制作調(diào)試。采用了DS18B20溫度傳感器檢測(cè)實(shí)時(shí)溫度狀態(tài),使數(shù)據(jù)更準(zhǔn)確,并對(duì)DS18B20溫度傳感器進(jìn)行了精確的控制,提高了檢測(cè)系統(tǒng)的可靠性。5、完成了相關(guān)的分析算法程序和各功能模塊的應(yīng)用程序的設(shè)計(jì),實(shí)現(xiàn)了溫度控制。整個(gè)軟件的設(shè)計(jì)采用模塊化、結(jié)構(gòu)化設(shè)計(jì)思想,使

31、程序便于移植。6、分析了控制系統(tǒng)中可能存在的各種干擾源,在設(shè)計(jì)控制系統(tǒng)時(shí),采用硬件和軟件抗干擾技術(shù)相結(jié)合的方法進(jìn)行了抗干擾設(shè)計(jì),保證了控制系統(tǒng)的可靠性。1 譚浩強(qiáng),C程序設(shè)計(jì).北京:清華大學(xué)出版社,2005.07。2 7805電壓轉(zhuǎn)換模塊使用說(shuō)明書(shū)。3 DS18B20溫度傳感器使用手冊(cè)。4LCD1602液晶顯示模塊使用說(shuō)明書(shū)。5 數(shù)字電子技術(shù)基礎(chǔ)。常丹華 主編6 單片機(jī)原理及應(yīng)用技術(shù)。張淑清等編著7 百度文庫(kù)以及網(wǎng)上的各種資料。附錄附錄1系統(tǒng)主程序/包含所需頭文件#include<reg52.h>#include"LCD1602.h"#include"

32、ds18b20.h"#define uint unsigned int#define uchar unsigned char/uchar key_value;sbit led=P22; /電源指示燈uchar p; /定時(shí)中斷參數(shù)uchar key_scan(); /矩陣鍵盤(pán)掃描/*定時(shí)中斷初始化*/void dszd_init()TMOD=0x01;TR0=1;TH0=(65535-10000)/256;TL0=(65535-10000)%256;ET0=1;EA=1;/*空調(diào)啟動(dòng)停止*/uchar start()if(key_value=2) /按鍵s3按下 打開(kāi)/關(guān)閉空調(diào)del

33、ay(500); /延時(shí)500mskey_value=0;s3num+;s3num=s3num%2;if(s3num=1)begin=1;if(s3num=0)begin=0;if(s3num=1&&r=1&&s1num=0&&s2num=0) /開(kāi)關(guān)打開(kāi)/并且開(kāi)啟定時(shí)并且沒(méi)有進(jìn)行調(diào)試if(hour=hour_1&&min=min_1)begin=0;s3num=0;return begin;/*室溫與設(shè)定溫度比較*/void compare()if(cold=0)/制冷模式下if(temper-temp>1)|(temp-

34、temper>1)jidianqi_1=1;/溫差大于一度 啟動(dòng)電動(dòng)機(jī)if(temper=temp)/室內(nèi)溫度等于設(shè)定溫度 關(guān)閉/電動(dòng)機(jī)jidianqi_1=0;if(hot=0)/暖風(fēng)模式下if(temper-temp>1)|(temp-temper>1)jidianqi_2=1;/溫差大于一度 啟動(dòng)電動(dòng)機(jī)if(temper=temp)/室內(nèi)溫度等于設(shè)定溫度 關(guān)閉電動(dòng)機(jī)jidianqi_2=0;/*主程序*/void main()dszd_init(); /開(kāi)定時(shí)中斷 while(1)key_scan();/開(kāi)矩陣鍵盤(pán)掃描start();write_com(0x08);/關(guān)

35、閉顯示jidianqi_1=0;jidianqi_2=0;/啟動(dòng)前電機(jī)關(guān)閉cold=0;hot=0; / 制冷/暖風(fēng)指示燈關(guān)閉while(begin)init(); /初始化液晶顯示cold=0; /默認(rèn)為制冷模式hot=1;while(begin)led=1; /電源指示燈一直亮write_hms(0,hour);write_hms(3,min);write_hms(6,sec);/顯示時(shí)間key_scan(); /矩陣鍵盤(pán)掃描start(); /掃描空調(diào)開(kāi)啟/關(guān)閉lcd_mode(); /工作模式LCD_scan();/更新液晶時(shí)間顯示lcd_temp();/更新液晶溫度顯示dingshi

36、();/定時(shí)時(shí)間顯示和調(diào)節(jié)LcdDisplay(Ds18b20ReadTemp();/溫度檢測(cè)compare();/溫度比較,控制電動(dòng)機(jī)起動(dòng)/關(guān)閉/*定時(shí)中斷*/void Timer0() interrupt 1TH0=(65536-10000)/256; TL0=(65536-10000)%256;p+;if(p=100)p=0;sec+;if(sec=60)sec=0;min+;if(min=60)min=0;hour+;if(hour=24)hour=0;#ifndef _LCD1602_H_#define _LCD1602_H_#define uint unsigned int#def

37、ine uchar unsigned charuchar key_value;sbit cold=P20;/綠燈時(shí)制冷指示燈sbit hot=P21;/紅燈為暖風(fēng)指示燈sbit jidianqi_1=P11;sbit jidianqi_2=P12;/*定義液晶顯示器*/sbit LCDE=P27;sbit LCDRS=P26;sbit LCDRW=P25;uchar num,s1num,s2num,s3num,r;uchar hour,min,sec,hour_1=1,min_1;uchar temper=26;uchar shi,ge;uchar begin;uchar code table

38、_1="27 / /26 OFF 0" /液晶顯示器第一行顯示結(jié)果uchar code table_2="00:00:00 00:00" /液晶顯示器第二行顯示結(jié)果void delay(uint z) /1ms延時(shí)函數(shù)uint i,j;for(i=0;i<z;i+)for(j=0;j<110;j+);/*矩陣鍵盤(pán)掃描程序*/uchar key_scan()uchar table=0,i;for(i=0;i<4;i+)P3=(0x10<<i);table=P3;table=table&0x0f;if(table!=0x

39、0f)delay(5); /去抖table=P3; /區(qū)分獨(dú)立鍵盤(pán)table=table&0x0f;if(table!=0x0f)switch(table)case 0x0e:key_value=0+i;break;case 0x0d:key_value=4+i;break;case 0x0b:key_value=8+i;break;case 0x07:key_value=12+i;break;while(table!=0x0f) /松手檢測(cè) table=P3;table=table&0x0f;return key_value;/*液晶顯示器寫(xiě)命令*/void write_co

40、m(uchar com) LCDRS=0;LCDRW=0;P0=com;delay(5);LCDE=1;delay(5);LCDE=0;/*液晶顯示器寫(xiě)數(shù)據(jù)*/void write_data(uchar date) LCDRS=1;LCDRW=0;P0=date;delay(5); /延時(shí)5msLCDE=1;delay(5);LCDE=0;/*液晶顯示器初始化*/void init() LCDE=0;write_com(0x38); /顯示模式設(shè)制write_com(0x0c); /開(kāi)顯示 不顯示光標(biāo) 光標(biāo)不閃爍write_com(0x06); /當(dāng)讀或?qū)懸粋€(gè)字符后地址指針加一,且光標(biāo)加一 整

41、屏不移動(dòng)write_com(0x01); /顯示清屏write_com(0x80); /設(shè)計(jì)數(shù)據(jù)指針地址for(num=0;num<16;num+)write_data(table_1num);delay(20); /延時(shí)20 mswrite_com(0x80+0x40); /重新設(shè)置數(shù)據(jù)指針 換行for(num=0;num<16;num+)write_data(table_2num);delay(20);/*/void write_hms(uchar add,uchar date)uchar shi,ge;shi=date/10;ge=date%10;write_com(0x80

42、+0x40+add);write_data(0x30+shi);write_data(0x30+ge);/*/void write_temp(uchar date)uchar shi,ge;shi=date/10;ge=date%10;write_com(0x80+0x07);write_data(0x30+shi);write_data(0x30+ge);/*調(diào)整液晶顯示器時(shí)間*/void LCD_scan() uchar panduan_1; if(key_value=5) / 按鍵S6摁下panduan_1=1;/delay(50); /延時(shí)50mswhile(panduan_1)if(

43、key_value=5)delay(500); /延時(shí)500ms 防止加的過(guò)快s1num+;key_value=0;if(s1num=1)TR0=0;/停止時(shí)間計(jì)時(shí)write_com(0x80+0x40+1);/重新設(shè)置數(shù)據(jù)指針 換行write_com(0x0f);/顯示光標(biāo) 光標(biāo)閃爍if(s1num=2)write_com(0x80+0x40+4);if(s1num=3)write_com(0x80+0x40+7);if(s1num=4)s1num=0;write_com(0x0c);TR0=1;panduan_1=0; /判斷標(biāo)志位清零 退出時(shí)間調(diào)節(jié)if(s1num!=0)if(key_v

44、alue=1) /按鍵S2按下delay(500);/延時(shí)500ms 防止加的過(guò)快key_value=0;if(s1num=1)hour+;if(hour=24)hour=0;write_hms(0,hour); /光標(biāo)在小時(shí)處閃爍write_com(0x80+0x40+1);/使光標(biāo)再回到小時(shí)處閃爍if(s1num=2)min+;if(min=60)min=0;write_hms(3,min); /光標(biāo)在分處閃爍write_com(0x80+0x40+4);/光標(biāo)再回到分處閃爍if(s1num=3)sec+;if(hour=60)sec=0;write_hms(6,sec);/光標(biāo)在秒處閃爍

45、write_com(0x80+0x40+7);/光標(biāo)再回到秒處閃爍if(key_value=9) /按鍵S10按下delay(500);/延時(shí)500ms防止減的過(guò)快key_value=0; if(s1num=1)hour-;if(hour=-1)hour=23;write_hms(0,hour); /光標(biāo)在小時(shí)處閃爍write_com(0x80+0x40+1); /使光標(biāo)再回到小時(shí)處閃爍if(s1num=2)min-;if(min=-1)min=59;write_hms(3,min); /光標(biāo)在分處閃爍write_com(0x80+0x40+4);/光標(biāo)再回到分處閃爍if(s1num=3)sec-;if(sec=-1)sec=60;write_hms(6,sec); /光標(biāo)在秒處閃爍write_com(0x80+0x40+7);/光標(biāo)再回到秒處閃爍key_scan();/*工作模式*/void lcd_mode()if(key_value=4) /按鍵s5按下/delay(50);key_value=0;write_com(0x80+0x0f);write_data(0x30+0x00); /顯示0表示制冷jidianqi_1=1; /繼電器1起動(dòng)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論