基于單片機(jī)的智能加濕器系統(tǒng)設(shè)計(jì)_第1頁(yè)
基于單片機(jī)的智能加濕器系統(tǒng)設(shè)計(jì)_第2頁(yè)
基于單片機(jī)的智能加濕器系統(tǒng)設(shè)計(jì)_第3頁(yè)
基于單片機(jī)的智能加濕器系統(tǒng)設(shè)計(jì)_第4頁(yè)
基于單片機(jī)的智能加濕器系統(tǒng)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩34頁(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)介

基于單片機(jī)的智能加濕器系統(tǒng)設(shè)計(jì)基于單片機(jī)的智能加濕器系統(tǒng)設(shè)計(jì)Design of intelligent humidifiersystem based onsingle chipmicrocomputer緒論目前在我們的日常生活中,加濕器,被應(yīng)用到很多的領(lǐng)域。市場(chǎng)上多數(shù)的加濕器,都是通過(guò)手動(dòng)打開(kāi)、關(guān)閉,再加上空氣中的溫濕度進(jìn)行實(shí)時(shí)精確的監(jiān)測(cè),根據(jù)人們?cè)谑褂眉訚衿鞯倪^(guò)程中,一些意想不到的問(wèn)題,比如過(guò)度過(guò)度的空氣加濕的空氣濕度對(duì)人體的健康產(chǎn)生負(fù)面影響;如果加濕器工作過(guò)程中發(fā)生干燒,會(huì)帶來(lái)危險(xiǎn)減少使用生命。所以有必要開(kāi)發(fā)一種智能控制的加濕器。設(shè)定一個(gè)最佳濕度當(dāng)空氣濕度低于最佳濕度加濕器加濕,當(dāng)加濕的濕度達(dá)到時(shí),停止加濕,避免過(guò)度加濕。設(shè)定水位報(bào)警防干燒功能避免危險(xiǎn),使其更智能化。加濕器在國(guó)外主要用于工業(yè),國(guó)外加濕器產(chǎn)品的研制從50年代開(kāi)始興起,在加濕器智能控制系統(tǒng)方面的研究上從單片機(jī)向ARM以及DSP與FPGA方面轉(zhuǎn)化。其產(chǎn)品種類(lèi)不斷增多,加濕性能逐步提高。在我國(guó)加濕器還處于新興產(chǎn)物,主用于北方空氣干燥進(jìn)行屋內(nèi)加濕,加濕器占有率遠(yuǎn)低于國(guó)外,但隨著我國(guó)科技的進(jìn)步,經(jīng)濟(jì)的快速發(fā)展,對(duì)加濕器有了進(jìn)一步發(fā)展,種類(lèi)不斷變多,功能更加完善,加濕器的普及率也越來(lái)越高。本系設(shè)計(jì)采用單片機(jī)進(jìn)行智能控制。主要研究以單片機(jī)AT89C51為核心設(shè)計(jì),達(dá)到對(duì)加濕器更加智能設(shè)計(jì)。主要研究的內(nèi)容為藍(lán)牙控制,實(shí)時(shí)遠(yuǎn)程控制;水位報(bào)警,提醒人們要加水;防干燒,防止安全意外發(fā)生。本此設(shè)計(jì)從這三個(gè)功能來(lái)達(dá)到智能化。研究主要的問(wèn)題是加濕器使用過(guò)程中會(huì)存在濕度已經(jīng)足夠卻還要繼續(xù)加濕的問(wèn)題,為了避免加濕過(guò)渡,于是在此基礎(chǔ)設(shè)計(jì)了當(dāng)濕度當(dāng)達(dá)到最佳濕度值時(shí),加濕器關(guān)閉。總體設(shè)計(jì)本次設(shè)計(jì)的總體通過(guò)單片機(jī)來(lái)對(duì)各個(gè)模塊控制,來(lái)達(dá)到下列功能:(1)水位低于20%報(bào)警,防干燒;(2)空氣中濕度低于45%加濕,達(dá)到45%時(shí)自動(dòng)關(guān)閉;(3)顯示濕度,溫度和時(shí)間;(4)可以自己通過(guò)按鍵來(lái)設(shè)置適合的濕度值和水位報(bào)警值。(5)可以定時(shí)開(kāi)啟加濕器;(6)可用手機(jī)藍(lán)牙進(jìn)行開(kāi)關(guān);利用水位傳感器模塊和繼電器模塊進(jìn)行水位報(bào)警,防干燒,溫濕度傳感器模塊進(jìn)行溫度采集,LCD1602液晶顯示模塊屏進(jìn)行數(shù)據(jù)顯示,按鍵模塊來(lái)進(jìn)行數(shù)據(jù)選擇修改,添加一個(gè)外部時(shí)鐘模塊對(duì)時(shí)間進(jìn)行實(shí)時(shí)顯示,設(shè)置一個(gè)鬧鐘來(lái)定時(shí)打開(kāi)加濕器,最后通過(guò)藍(lán)牙模塊進(jìn)行遠(yuǎn)程控制。智能加濕器總體設(shè)計(jì)原理框圖如圖1-1所示:加濕模塊溫濕度傳感器單片機(jī)加濕模塊溫濕度傳感器單片機(jī)顯示模塊顯示模塊繼電器繼電器時(shí)鐘模塊時(shí)鐘模塊水位傳感器水位傳感器按鍵模塊按鍵模塊報(bào)警模塊報(bào)警模塊藍(lán)牙模塊藍(lán)牙模塊圖1-1:智能加濕器原理框架圖本次設(shè)計(jì)可以看成自動(dòng)加濕和手動(dòng)加濕兩部分。手動(dòng)加濕器功能可以通過(guò)按鍵來(lái)對(duì)加濕器進(jìn)行開(kāi)關(guān),還可以通過(guò)功能鍵對(duì)時(shí)間,最佳濕度值,水位報(bào)警值進(jìn)行修改,啟動(dòng)加濕器。還可以通過(guò)定時(shí)按鍵來(lái)設(shè)置時(shí)間來(lái)打開(kāi)加濕器。自動(dòng)加濕器是通過(guò)系統(tǒng)設(shè)定的初始值來(lái)對(duì)加濕器進(jìn)行加濕。自動(dòng)加濕功能要通過(guò)三個(gè)方面來(lái)進(jìn)行完成。首先硬件方面,我們要對(duì)各個(gè)模塊的元器件進(jìn)行了解,然后進(jìn)行電路設(shè)計(jì)然后再進(jìn)行總線(xiàn)連接,畫(huà)出原理圖來(lái)對(duì)整個(gè)電路進(jìn)行布局調(diào)試,詳細(xì)可見(jiàn)系統(tǒng)硬件設(shè)計(jì)。其次軟件方面,通過(guò)畫(huà)流程圖對(duì)各個(gè)模塊電路程序設(shè)計(jì)的框架進(jìn)行了解,然后編寫(xiě)程序,達(dá)到需要的功能設(shè)計(jì),詳細(xì)可見(jiàn)系統(tǒng)軟件設(shè)計(jì)。最后調(diào)試方面,使用仿真軟件進(jìn)行觀察,并對(duì)其進(jìn)行調(diào)試。在仿真軟件里面調(diào)試完成之后,我們可以通過(guò)燒錄器下載在單片機(jī)里面進(jìn)行硬件調(diào)試,詳情可見(jiàn)系統(tǒng)調(diào)試。2系統(tǒng)硬件設(shè)計(jì)2.1單片機(jī)模塊2.1.1AT89C51單片機(jī)簡(jiǎn)介本次系統(tǒng)單片機(jī)控制芯片采用AT89C51系列,它是是一種高性能,低電壓的4k脈沖流的COMS8位應(yīng)用程序處理器。該裝置采用高密度不易腐貯存技術(shù),符合MSS-51.AT89S51系列工業(yè)標(biāo)準(zhǔn),是一個(gè)高效、靈活和成本效益高的集成控制器。AT89C51實(shí)物圖如圖2-1。圖2-1AT89C51實(shí)物圖本次設(shè)計(jì)選擇的AT89C51單片機(jī)采用的是40引腳雙列直插封裝形式。它含有32個(gè)外部雙向輸入輸出端口引腳,2個(gè)外中斷口引腳,還有2個(gè)16位可編程定時(shí)計(jì)數(shù)器引腳,另外2個(gè)全雙工串行通信口,2個(gè)讀寫(xiě)口線(xiàn)。AT89C51單片機(jī)由于受引腳數(shù)目的限制,其引腳具有的具有第二功能。引腳排列如圖2.2。圖2-2AT89C51引腳圖其中各引腳各功能為:主電源引腳VCC(40腳):供電電壓+5v電源。GND(20腳):接地。晶振引腳XTAL1(19腳):反向振蕩放大器的和內(nèi)部時(shí)鐘工作電路的輸入端。XTAL2(18腳):反向振蕩器輸出端??刂菩盘?hào)引腳 RST(9腳):復(fù)位端。ALE/PROG(30腳):用來(lái)鎖存P0口送出的低8位字節(jié)。用于編程時(shí)輸入編程脈沖。/PSEN(29腳):外部程序存儲(chǔ)器選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PSEN有效。但在訪(fǎng)問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。/EA/VPP(31腳):當(dāng)/EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H-FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。多功能I/O口引腳AT89C51單片機(jī)有四個(gè)8位I/O口P0、P1、P2、P3,每一組I/O口線(xiàn)都可以作為輸入或輸出口,其中:P0口(32~39腳):P0口與外部連接時(shí)需要接一個(gè)八位上拉電阻的8位雙向I/O口。 P0口吸收8TTL門(mén)電流。P0口可用于外部數(shù)據(jù)程序存儲(chǔ)。當(dāng)P0口的管腳為1時(shí),為高阻輸入。在編程時(shí),P0口可用為原碼輸入口,校驗(yàn)時(shí),P0為輸出原碼。 P1口(1~8腳):P1口是一個(gè)內(nèi)部提供上拉電阻的八位雙向I/O口, P0口輸出4TTL門(mén)電流。P1口可用于緩沖器。當(dāng)P1口管腳為1時(shí),當(dāng)內(nèi)部上拉電阻為高電平時(shí),作為輸入,外部下拉為低電平時(shí),為輸出電流。在編程和校驗(yàn)時(shí),P1口為低八位地址接收。P2口(21~28):P2口為一個(gè)內(nèi)部帶上拉電阻的八位雙向I/O口,P2口輸出4個(gè)TTL門(mén)電流,當(dāng)P2口管腳為1時(shí),當(dāng)內(nèi)部上拉電阻為高電平,作為輸入,被外部拉低,為輸出電流。當(dāng)P2輸出為高八位地址時(shí),可用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器。在對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫(xiě)時(shí),P2口可以輸出其特殊功能寄存器的內(nèi)容。在編程和校驗(yàn)時(shí),P2口為接收高八位地址信號(hào)和控制信號(hào)。P3口(10~17腳):P3口管腳為一個(gè)內(nèi)部帶上拉電阻的八位雙向I/O口,P2輸出4個(gè)TTL門(mén)電流。當(dāng)P3口管腳為1時(shí),當(dāng)內(nèi)部上拉為高電平,作為作輸入。外部下拉為低電平,為輸出電流。P3也有一些特殊功能口,如表2.1所示:表2.1P3口特殊功能腳端口引腳第二功能注釋P3.0RXD串行輸入口P3.1TXD串行輸出口P3.2/INT0外部中斷0P3.3/INT1外部中斷1P3.4T0計(jì)時(shí)器0外部輸入P3.5T1計(jì)時(shí)器1外部輸入P3.6/WR外部數(shù)據(jù)存儲(chǔ)器寫(xiě)選通P3.7/RD外外部數(shù)據(jù)存儲(chǔ)讀器選通2.1.2單片機(jī)最小系統(tǒng)(1)時(shí)鐘電路單片機(jī)內(nèi)部時(shí)鐘電路就是一個(gè)振蕩器,單片機(jī)執(zhí)行各種操作必須在這個(gè)振蕩器給的節(jié)拍下控制下才能進(jìn)行。因此單片機(jī)沒(méi)有時(shí)鐘電路是不會(huì)正常工作的。時(shí)鐘電路根據(jù)程序來(lái)進(jìn)行對(duì)單片機(jī)進(jìn)行工作。單片機(jī)時(shí)鐘方式由它內(nèi)部反向放大器輸入端XTAL1和輸出端XTAL2連接一個(gè)構(gòu)成的振蕩電路和內(nèi)部時(shí)鐘電路組成。晶體振蕩的頻率一般為1.2~12Mhz,電容在時(shí)鐘電路中啟到對(duì)頻率微調(diào)的作用,電路中電容在5~30PF范圍內(nèi)。在本次設(shè)計(jì)中采用12Mhz的晶體振蕩頻率和兩個(gè)30PF的電容與單片機(jī)XTAL1腳和XTAL2相連構(gòu)成一個(gè)內(nèi)部時(shí)鐘電路。時(shí)鐘電路圖2-3所示:圖2-3時(shí)鐘電路復(fù)位電路 單片機(jī)的復(fù)位電路分為上電自動(dòng)復(fù)位、按鍵手動(dòng)復(fù)位兩種和看門(mén)狗強(qiáng)制復(fù)位三種等。本次設(shè)計(jì)采用上電復(fù)位電路,通過(guò)對(duì)電容的充放電來(lái)進(jìn)行復(fù)位。電容與單片機(jī)RST腳相連,電路在上電時(shí),RST通過(guò)電容加給得到了短暫的高電平信號(hào),高平信號(hào)持續(xù)的時(shí)間長(zhǎng)久根據(jù)電容在充電過(guò)程的快慢。上電時(shí),VCC的上升時(shí)間約為10ms,而振蕩器的起振時(shí)間取決于振蕩頻率。復(fù)位電路如圖2-4所示:圖2-4復(fù)位電路2.2傳感器模塊2.2.1溫濕度傳感器本次設(shè)計(jì)溫濕度傳感器采用DHT11數(shù)字溫濕度傳感器。DHT11由-個(gè)NTC檢測(cè)溫度的元器件與一個(gè)電阻式的檢測(cè)濕度的元器件組成,該傳感器與8位單片機(jī)相連,是一塊可以同時(shí)檢測(cè)溫度和濕度的數(shù)字傳感器。通過(guò)單片機(jī)和-一個(gè)簡(jiǎn)單的電路,它可以檢測(cè)室內(nèi)的溫度和濕度采集并實(shí)比較,能夠更好的收集信息。DHT11溫濕度采集范圍濕度采集范圍5%~95%,在環(huán)境溫度為25℃時(shí),濕度采集精度是±5%。溫度采集范圍是-20℃~60℃,在環(huán)境溫度為25℃時(shí),溫度采集精度是±2℃。DHT1工作時(shí)電壓為3.3V~5.5V,測(cè)量時(shí)的供電電流為1.0mA,傳感器在使用過(guò)程中要接一個(gè)接4.7K的上拉電阻,上拉電阻的作用是在單片機(jī)不進(jìn)行輸出以及傳感器待機(jī)時(shí),使得DATA口為高電平,使電路防止干擾,提高穩(wěn)定性。本次設(shè)計(jì)中,因?yàn)镈HT11與單片機(jī)的通信同步是通過(guò)數(shù)據(jù)端口實(shí)現(xiàn),于是數(shù)據(jù)端連接到p1.7端口,由于單片機(jī)p1端口內(nèi)部自帶上拉電阻,所以本次設(shè)計(jì)不需要外接一個(gè)上拉電阻。DHT11傳感器電路設(shè)計(jì)如圖2-5。圖2-5DHT11傳感器電路圖2.2.2水位傳感器本次設(shè)計(jì)采用yl-69傳感器,實(shí)現(xiàn)對(duì)當(dāng)前水位檢測(cè)。YL-69的AO是模塊的模擬量輸出需要經(jīng)過(guò)AD轉(zhuǎn)換后接入單片機(jī),DO口是數(shù)字量輸出輸出可直接接到單片機(jī)。本次電路設(shè)計(jì)由于沒(méi)有找到適合的水位傳感器,于是用三個(gè)按鈕開(kāi)關(guān)代替水位傳感器檢測(cè)的高、中、低水位。按下按鈕表示水位到達(dá)相應(yīng)的水位。當(dāng)水位高于報(bào)警水位置,加濕器器正常工作,當(dāng)水位低于報(bào)警值水位值加濕器報(bào)警,繼電器截止,停止加濕,從而達(dá)到防干燒。水位傳感器如圖2-6。圖2-6水位傳感器2.3按鍵輸入模塊本次設(shè)計(jì)采用輕觸按鍵4腳開(kāi)關(guān),當(dāng)我們按下它時(shí)發(fā)出的電平為低電平;當(dāng)按鍵開(kāi)關(guān)彈起時(shí),發(fā)出的電平為高電平,單片機(jī)這些電平信號(hào)都是由單片機(jī)相連的引腳發(fā)出的,被單片機(jī)系統(tǒng)接收并處理。這些按鍵的主要功能:S1為功能鍵:對(duì)時(shí)間和定時(shí)的時(shí),分,秒,濕度,水位值進(jìn)行選擇調(diào)節(jié)。從而達(dá)到手動(dòng)加濕的功能。S2和S3為增和減鍵:對(duì)選擇的功能進(jìn)行增和減達(dá)到想要的時(shí)間,定時(shí)時(shí)間,濕度,水位。S4為定時(shí)啟動(dòng)鍵:?jiǎn)?dòng)時(shí)開(kāi)始定時(shí)加濕,到設(shè)定的時(shí)間加濕器就會(huì)自動(dòng)加濕。設(shè)置定時(shí)時(shí)間通過(guò)S1選擇時(shí),分,秒,然后S2,S3進(jìn)行增加和減少。鍵盤(pán)輸入電路如圖2-7。圖2-7按鍵輸入電路2.4外部時(shí)鐘模塊本次外部時(shí)鐘模塊電路采用DS1302時(shí)鐘芯片。DS1302是一個(gè)低功耗實(shí)時(shí)時(shí)鐘芯片。本次設(shè)計(jì)通過(guò)它提供時(shí),分,秒的信號(hào),并且通過(guò)配置的AN/PM來(lái)決定采用時(shí)間的格式。工作電壓為2.0V~5.5V,采用雙電源供電,可以對(duì)后備電源進(jìn)行涓細(xì)電流充電。在本次設(shè)計(jì)中采用32.768kMZ的晶振接在DS1302的X1和X2之間,提供基準(zhǔn)。VCC1腳外接一個(gè)備用電源,DS1302的CE腳與單片機(jī)P1.2口相連,內(nèi)部有個(gè)40K下拉電阻,當(dāng)進(jìn)行讀寫(xiě)操作的時(shí)候必須高電平。I/O腳與單片機(jī)P1.1口相連,進(jìn)行數(shù)據(jù)傳輸,SCLK腳與單片機(jī)P1.0口相連,進(jìn)行通信時(shí)鐘信號(hào)。外部時(shí)鐘電路如圖2-8。圖2-8外部時(shí)鐘電路2.5顯示模塊本次設(shè)計(jì)顯示部分采用1602字符型液晶顯示屏。字符型液晶顯示屏專(zhuān)門(mén)從來(lái)顯示數(shù)字、符號(hào)和字母等,它是由字符型液晶顯示屏、控制驅(qū)動(dòng)主電路及擴(kuò)展驅(qū)動(dòng)電路,以及少量電阻、電容元件和結(jié)構(gòu)件等裝配在PCB板上而組成。LCD1602顯示的容量為16×2個(gè)字符,顯示圖形由M×N個(gè)顯示單元組成,顯示屏上顯示單元與顯示外部字節(jié)相對(duì)應(yīng),每一字節(jié)的內(nèi)容與顯示屏上相應(yīng)位置的亮暗對(duì)應(yīng)。LCD1602各引腳功能如表2.2。表2.2LCD1602各引腳功能符號(hào)引腳說(shuō)明符號(hào)引腳說(shuō)明VSS電源地D2數(shù)據(jù)VDD電源正極D3數(shù)據(jù)VL液晶顯示偏壓D4數(shù)據(jù)RS數(shù)據(jù)/命令選擇D5數(shù)據(jù)R/W讀/寫(xiě)選擇D6數(shù)據(jù)E使能信號(hào)D7數(shù)據(jù)D0數(shù)據(jù)BLA背光源正極D1數(shù)據(jù)BLK背光源負(fù)極本次設(shè)計(jì)中D0到D7與單片機(jī)P0口相連,由于P0口內(nèi)部沒(méi)有上拉電阻使用時(shí)需要外部連接,RS腳與單片機(jī)P2.6連接,進(jìn)行數(shù)據(jù)命令選擇,E腳與單片機(jī)P2.7連接,使能信號(hào)端。D0~D7端與單片機(jī)P0端口相連,由于P0口內(nèi)部沒(méi)有上拉電阻使用時(shí)需要外部連接個(gè)八位上拉電阻,進(jìn)行數(shù)據(jù)傳輸,VEE腳為液晶顯示器對(duì)比度調(diào)整端,接了一個(gè)1k的電阻接地,為防止對(duì)比度過(guò)高,產(chǎn)生鬼影。LCD1602電路如圖2-9。圖2-9LCD1602電路圖2.6A/D轉(zhuǎn)換模塊由于本次設(shè)計(jì)采用的水位傳感器輸出的是模擬量,所以電路要進(jìn)行一次AD轉(zhuǎn)換把輸出的模擬量轉(zhuǎn)換成數(shù)字量傳到單片機(jī)里。本次AD轉(zhuǎn)換采用ADC0832芯片。ADC0832是一種雙通道轉(zhuǎn)換芯片,它內(nèi)部含有256級(jí)八位分辨率,對(duì)于一般的轉(zhuǎn)換都能適應(yīng)。它內(nèi)部電壓工作在0~5V之間,轉(zhuǎn)換時(shí)間僅只要32US,轉(zhuǎn)換速度快且穩(wěn)定性好。本次設(shè)計(jì)通過(guò)ADC0832的引腳與單片機(jī)相應(yīng)端口相連,來(lái)達(dá)到數(shù)據(jù)轉(zhuǎn)換。CS引腳與p2.0口相連,當(dāng)DS1302沒(méi)有工作,輸入為高電平時(shí),芯片停用,進(jìn)行AD轉(zhuǎn)換時(shí),CS應(yīng)為低電平并保持到轉(zhuǎn)換結(jié)束。由于單片機(jī)的接口是雙向的而在通信時(shí)DO引腳和DI引腳并未同時(shí)有效,所以將兩個(gè)引腳連在一起與單片機(jī)p2.2口相連。CLK與P2.1相連進(jìn)行時(shí)鐘輸入,輸入時(shí)鐘脈沖。A/D轉(zhuǎn)換電路如圖2-10。圖2-10A/D轉(zhuǎn)換電路2.7報(bào)警模塊本次報(bào)警模塊采用蜂鳴器報(bào)警。通過(guò)與8550PNP型三極管相連,然后單片機(jī)P3.7口與三極管基集限流電阻1K相連構(gòu)成了一個(gè)報(bào)警電路。利用三極管的開(kāi)關(guān),來(lái)控制蜂鳴器工作。報(bào)警情況是由于水位傳感器檢測(cè)水位不夠從而產(chǎn)生報(bào)警。當(dāng)檢測(cè)的水位信號(hào)為低水位時(shí),單片機(jī)系統(tǒng)對(duì)管腳P3.7口發(fā)送開(kāi)始信號(hào)使晶體管轉(zhuǎn)換到通路狀態(tài),從而使蜂鳴器發(fā)出報(bào)警信號(hào);當(dāng)檢測(cè)的水位信號(hào)為正常時(shí)P3.7置高電平,三極管截止,蜂鳴器不發(fā)出聲音。水位報(bào)警電路電路如圖2-11。如圖2-11水位報(bào)警電路2.8繼電器模塊本設(shè)計(jì)用繼電器來(lái)控制加濕器進(jìn)行加濕。繼電器本身就是一個(gè)控制器。它可以自己控制其他模塊,也可以其他模塊來(lái)控制自己。它適用于自動(dòng)控制電路中,它對(duì)電路啟到自動(dòng)調(diào)節(jié)、安全保護(hù)的作用。本設(shè)計(jì)采用PNP型三極管來(lái)驅(qū)動(dòng)繼電器,當(dāng)P3.6口輸入為低電平時(shí),三極管導(dǎo)通,繼電器開(kāi)啟,當(dāng)P3.6口輸入為高電平時(shí),三極管截止,繼電器關(guān)閉。通過(guò)三極管驅(qū)動(dòng)控制,從而實(shí)現(xiàn)自動(dòng)控制加濕器。本次設(shè)計(jì)中三極管啟到控制繼電器開(kāi)關(guān)作用,電阻R6限流降低了三極管管耗,發(fā)光二極管則當(dāng)繼電器打開(kāi)時(shí)燈亮,繼電器關(guān)閉時(shí)燈滅。繼電器驅(qū)動(dòng)電路如圖2-12。如圖2-12繼電器驅(qū)動(dòng)電路2.9藍(lán)牙模塊本次設(shè)計(jì)采用JDY-30SPP藍(lán)牙芯片。進(jìn)行對(duì)單片機(jī)遠(yuǎn)程手機(jī)控制在本次設(shè)計(jì)中藍(lán)牙模塊1腳串口輸入,電平為T(mén)TL電平接單片機(jī)P3.1口,2腳為串口輸出,電平為T(mén)TL電平接單片機(jī)接怕P3.0口。藍(lán)牙電路如圖2-13.圖2-13藍(lán)牙電路3系統(tǒng)軟件設(shè)計(jì)3.1系統(tǒng)軟件總體設(shè)計(jì)水位監(jiān)測(cè)溫濕度檢測(cè)外部時(shí)鐘主程序系統(tǒng)軟件程序是采用C語(yǔ)言編寫(xiě),在Keiluvsion4進(jìn)行開(kāi)發(fā)。系統(tǒng)軟件程序分多個(gè)模塊進(jìn)行編寫(xiě),其軟件總體設(shè)計(jì)如圖3-1。水位監(jiān)測(cè)溫濕度檢測(cè)外部時(shí)鐘主程序液晶顯示液晶顯示按鍵控制按鍵控制藍(lán)牙控制狀態(tài)控制藍(lán)牙控制狀態(tài)控制圖3-1軟件總體設(shè)計(jì)這幾個(gè)模塊之間相輔相成,根據(jù)設(shè)計(jì)來(lái)達(dá)到相應(yīng)的功能。通過(guò)溫濕度檢測(cè)模塊和水位檢測(cè)的模塊,從而達(dá)到采集濕度、溫度和水位值的功能。通過(guò)液晶顯示模塊,按鍵控制模塊,外部時(shí)鐘模塊,藍(lán)牙控制模塊,從而達(dá)到界面顯示,按鍵選擇,時(shí)鐘顯示定時(shí),藍(lán)牙開(kāi)關(guān)功能的功能。狀態(tài)控制模塊則建立在繼電器和液晶顯示基礎(chǔ)上,從而達(dá)到控制加濕器的功能。3.2系統(tǒng)軟件各模塊程序設(shè)計(jì)在編寫(xiě)程序之前我們可用先通過(guò)繪制程序流程圖,來(lái)提高軟件設(shè)計(jì)的效率。通過(guò)繪制流程圖可以是使我們思路更加清晰,首先先畫(huà)出簡(jiǎn)單結(jié)構(gòu)了解大概的框架,然后再明確哪個(gè)管腳進(jìn)行細(xì)致化,這樣一步一步的,對(duì)于軟件設(shè)計(jì)程序編程有很大的提高。3.2.1主程序設(shè)計(jì)主程序先初始化系統(tǒng)參數(shù)和工作狀態(tài),各個(gè)模塊的調(diào)用都在主函數(shù)main.c。主程序流程圖如圖3-1。開(kāi)始開(kāi)始采集溫濕度,水位顯示溫濕度水位值設(shè)置報(bào)警值顯示定時(shí)時(shí)間界面定時(shí)狀態(tài)按鍵控制按鍵掃描初始化和設(shè)置定時(shí)采集溫濕度,水位顯示溫濕度水位值設(shè)置報(bào)警值顯示定時(shí)時(shí)間界面定時(shí)狀態(tài)按鍵控制按鍵掃描初始化和設(shè)置定時(shí)是藍(lán)牙開(kāi)關(guān) 否藍(lán)牙開(kāi)關(guān)否 是加濕器檢測(cè)加濕器檢測(cè)溫度過(guò)高水位滿(mǎn)足,加濕器工作溫度過(guò)高水位滿(mǎn)足,加濕器工作結(jié)束結(jié)束圖3-1主程序設(shè)計(jì)主程序具體代碼見(jiàn)附錄一,其主結(jié)構(gòu)為:Voidmain(){...While(1){Keyscan()//按鍵函數(shù),設(shè)定相關(guān)參數(shù)if(set==0&&seta==0)//定時(shí)狀態(tài)...if(set==0)//時(shí)鐘狀態(tài)...}Baojing()//報(bào)警函數(shù),設(shè)置相關(guān)參數(shù)if(RI)//藍(lán)牙開(kāi)關(guān),遠(yuǎn)程設(shè)定參數(shù)}主函數(shù)中,通過(guò)對(duì)keycan()函數(shù)調(diào)用,判斷此界面,當(dāng)顯示時(shí)鐘界面時(shí)則采集溫濕度,水位值,從而顯示溫濕度,水位界面。當(dāng)顯示為定時(shí)界面則顯示定時(shí)的時(shí)間界面。Baojing()函數(shù)則調(diào)用,則對(duì)水位的高低,繼電器的工作轉(zhuǎn)態(tài)進(jìn)行判斷。如果是RI藍(lán)牙控制的話(huà),發(fā)送相對(duì)應(yīng)的參數(shù)則可以控制加濕器。3.2.2溫濕度檢測(cè)程序設(shè)計(jì)DHT11使用的是單一總線(xiàn)通信,DATA引腳和單片機(jī)相連??偩€(xiàn)處于空閑狀態(tài)和通信狀態(tài)這個(gè)2個(gè)狀態(tài)之間。

單片機(jī)沒(méi)有與DHT11交互時(shí),總線(xiàn)處于空閑狀態(tài),在上拉電阻的作用下,處于高電平狀態(tài)。

當(dāng)單片機(jī)和DHT11正在通信時(shí),總線(xiàn)處于通信狀態(tài),通信過(guò)程如下:

①單片機(jī)將驅(qū)動(dòng)總線(xiàn)的I0配置為輸出模式。準(zhǔn)備向DHT11發(fā)送數(shù)據(jù)。

②單片機(jī)將總線(xiàn)拉低至少18ms,以此來(lái)發(fā)送起始信號(hào)。再將總線(xiàn)拉高并延時(shí)20~40us,以此來(lái)代表起始信號(hào)結(jié)束。

③單片機(jī)將驅(qū)動(dòng)總線(xiàn)的I0口配置為輸入模式,準(zhǔn)備接收DHT11回傳的數(shù)據(jù)。

④當(dāng)DHT11檢測(cè)倒單片機(jī)發(fā)送的起始信號(hào)后。首先把總線(xiàn)降低80us作為對(duì)單片機(jī)的應(yīng)答(ACK),然后接著將總線(xiàn)拉高80us,準(zhǔn)備回傳采集到的溫濕度數(shù)據(jù)。其溫濕度檢測(cè)程序流程圖如圖3-2。數(shù)據(jù)保存數(shù)組接收數(shù)據(jù)判斷80us高電平是否結(jié)束判斷80us低電平是否結(jié)束判斷p1.7是否為低電平延時(shí)20usP1.7輸出高電平P1.7輸出低電平結(jié)束延時(shí)18ms開(kāi)始數(shù)據(jù)保存數(shù)組接收數(shù)據(jù)判斷80us高電平是否結(jié)束判斷80us低電平是否結(jié)束判斷p1.7是否為低電平延時(shí)20usP1.7輸出高電平P1.7輸出低電平結(jié)束延時(shí)18ms開(kāi)始 否 是 否 否 是 是 否 否 是圖3-2溫濕度檢測(cè)程序流程圖通過(guò)數(shù)字溫濕度傳感器將采集到溫度,濕度值傳到單片機(jī)中。單片機(jī)經(jīng)過(guò)處理,把p1.7腳的電平拉低,延時(shí)18ms之后再拉高20us,完成后判斷p1.7是否為低電平,如果不是則循環(huán)判斷該信號(hào),如果是低電平就繼續(xù)判斷80us低電平是否結(jié)束,沒(méi)有結(jié)束就重復(fù)判斷,若是結(jié)束就繼續(xù)判斷80us高電平是否結(jié)束,結(jié)束的話(huà)就單片機(jī)開(kāi)始接受數(shù)據(jù),并將接收的數(shù)據(jù)按照十進(jìn)制的方式存在指定的數(shù)組中。3.2.3水位檢測(cè)程序設(shè)計(jì)水位檢測(cè)設(shè)計(jì)是通過(guò)Yl-69采集的模擬量經(jīng)過(guò)adc0832模數(shù)轉(zhuǎn)換成數(shù)字量而成。采集到水位傳感器輸出的的模擬量后,然后數(shù)據(jù)首先經(jīng)過(guò)采樣,把連續(xù)的模擬量變成離散的數(shù)字量。其次再保持,保持電路原有的脈寬。然后量化,用數(shù)字量來(lái)對(duì)模擬信號(hào)進(jìn)行轉(zhuǎn)化的最小單位進(jìn)行表示,最后進(jìn)行編碼,用二進(jìn)制數(shù)表達(dá)量化后數(shù)據(jù)。經(jīng)歷這四次轉(zhuǎn)換后,輸出的模擬信號(hào)變成數(shù)字信號(hào)。所以水位檢測(cè)的主要程序是adc0832程序。首先定義CS使能、Clk時(shí)鐘、DATI數(shù)據(jù)輸入和DATO數(shù)據(jù)輸出輸入和單片機(jī)相連的管腳。然后再定義3位地址,端口初始化。水位采集的數(shù)據(jù)進(jìn)行通道選擇,當(dāng)DATI兩組數(shù)據(jù)為“1”“0”時(shí)則表示在CH0里面進(jìn)行轉(zhuǎn)換。當(dāng)DATLLI兩組數(shù)據(jù)為“1”“1”時(shí)表示在CH1里面進(jìn)行轉(zhuǎn)換,通道選擇完成后再選通模擬前八位數(shù)值和后八位數(shù)值到比較器。比較前8位與后8位的值,如果不相同就舍去,這得到的數(shù)據(jù)會(huì)連續(xù)送出。其水位檢測(cè)流程圖如圖3-3。端口初始化開(kāi)始

端口初始化開(kāi)始水位采集水位采集AD轉(zhuǎn)換AD轉(zhuǎn)換判斷AD轉(zhuǎn)是否換結(jié)束判斷AD轉(zhuǎn)是否換結(jié)束 否 是讀取轉(zhuǎn)換數(shù)據(jù)讀取轉(zhuǎn)換數(shù)據(jù)結(jié)束結(jié)束圖3-3水位檢測(cè)流程圖3.2.4狀態(tài)控制程序設(shè)計(jì)通過(guò)繼電器和水位檢測(cè)的水位值,和溫濕度檢測(cè)濕度值進(jìn)行對(duì)比看是否啟動(dòng)加濕器,當(dāng)水位檢測(cè)到?jīng)]有水時(shí),繼電器關(guān)閉,停止加濕。當(dāng)水位檢測(cè)有水時(shí)還要滿(mǎn)足濕度值看是否需要加濕,當(dāng)滿(mǎn)足時(shí)開(kāi)啟繼電器,加濕器工作。其狀態(tài)控制程序的流程圖如圖3-4。判斷水位高低顯示時(shí)間判斷定時(shí)時(shí)間是否到開(kāi)始判斷水位高低顯示時(shí)間判斷定時(shí)時(shí)間是否到開(kāi)始判斷環(huán)境濕度是否啟動(dòng)判斷環(huán)境濕度是否啟動(dòng)關(guān)閉繼電器關(guān)閉繼電器 否 否關(guān)閉繼電器關(guān)閉繼電器 是開(kāi)啟繼電器開(kāi)啟繼電器加濕器工作加濕器工作蜂鳴器報(bào)警 低蜂鳴器報(bào)警結(jié)束結(jié)束關(guān)閉繼電器 高關(guān)閉繼電器圖3-4狀態(tài)控制程序流程圖狀態(tài)控制模塊通過(guò)對(duì)baojing()函數(shù)的調(diào)用,再對(duì)alarm鬧鐘函數(shù)進(jìn)行判斷,假如alarm=1則再對(duì)水位值進(jìn)行判斷,當(dāng)水位低時(shí),繼電器關(guān)閉,蜂鳴器報(bào)警。當(dāng)滿(mǎn)足水位時(shí)則對(duì)濕度值大小再進(jìn)行一次判斷,當(dāng)濕度值過(guò)低時(shí),繼電器開(kāi)啟,加濕器工作。狀態(tài)控制模塊具體代碼見(jiàn)附錄一,其結(jié)構(gòu)為:voidbaojing(){ if(alarm==1)//定時(shí)時(shí)鐘時(shí)間到 {... if(255-adc0832_0)/2.55)<LS){...}//判斷水位 else {... if(RH_data<HS) //判斷環(huán)境濕度是否啟動(dòng)繼電器 {... if(value1>10){...} } else{...} }} else{...}}3.2.5外部時(shí)鐘程序設(shè)計(jì)本次設(shè)計(jì)外部時(shí)鐘電路采用的是DS1302時(shí)鐘芯片。通過(guò)接一個(gè)32768Hz的晶振,然后內(nèi)部進(jìn)行分頻后獲取周期信號(hào),再對(duì)信號(hào)進(jìn)行處理,獲取秒、分、時(shí)的數(shù)值。然后對(duì)DS1302進(jìn)行命令操作,設(shè)置定時(shí)時(shí)間。對(duì)DS1302的操作就是對(duì)其內(nèi)部寄存器的操作它的內(nèi)部時(shí)間寄存器如圖3-5:圖3-5DS1302內(nèi)部時(shí)間寄存器首先對(duì)DS1302芯片進(jìn)行讀寫(xiě)操作,然后進(jìn)行寫(xiě)入地址,發(fā)送數(shù)據(jù),writel1302(0x8E,0x00);狀態(tài)寄存器打開(kāi)寫(xiě)保護(hù),writel(0x80,0x55);對(duì)秒寄存器工作,寫(xiě)入55秒,writel1302(0x82,0x59);對(duì)分寄存器工作,寫(xiě)入59分。writch1302(0x84,0x23);對(duì)時(shí)寄存器工作,寫(xiě)入23時(shí),對(duì)ds1302寫(xiě)入了初始時(shí)間23小時(shí)59分55秒的時(shí)間,最后按BCD碼進(jìn)行時(shí)分秒存儲(chǔ)順序進(jìn)行存儲(chǔ)。通過(guò)液晶顯示屏進(jìn)行位選,從而對(duì)時(shí)間顯示。最后進(jìn)行數(shù)據(jù)的讀取轉(zhuǎn)換成16進(jìn)制。定時(shí)功能通過(guò)get_shizhong()函數(shù)對(duì)DS102進(jìn)行寫(xiě)入2時(shí)5分8秒的時(shí)間然后再讀出,通過(guò)按鍵來(lái)進(jìn)行啟動(dòng)定時(shí)。3.2.6按鍵程序設(shè)計(jì)按鍵程序通過(guò)keycan()函數(shù)來(lái)對(duì)整個(gè)模塊進(jìn)行編寫(xiě)。通過(guò)對(duì)外部時(shí)鐘函數(shù)和屏幕顯示函數(shù)的調(diào)用,實(shí)現(xiàn)對(duì)濕度,水位,時(shí)間和定時(shí)器進(jìn)行設(shè)定。 按鍵模塊程序通過(guò)判斷按下哪個(gè)按鍵可以把它分成五個(gè)子程序,然后五個(gè)子程序里面進(jìn)行編寫(xiě)。Keycan函數(shù)結(jié)構(gòu)為:voidkeyscan(){if(s5==0){while(!s5)..}//開(kāi)關(guān)鍵if(s1==0){s1num++;while(!s1);switch(s1num){...}}//選擇鍵 if(s1num!=0){if(s2==0){while(!s2);switch(s1num){...}}//加減if(s3==0){while(!s3);switch(s1num){..}}}//減鍵 if(s4==0){while(!s4);if(seta==0){...}else{..}}}//定時(shí)器設(shè)置鍵當(dāng)按鍵按下時(shí)延時(shí)10ms進(jìn)行消抖,S5為手動(dòng)開(kāi)關(guān)鍵,當(dāng)定時(shí)時(shí)間沒(méi)到也可以通過(guò)手動(dòng)按下開(kāi)開(kāi)啟加濕,s1為選擇鍵通過(guò)s1num標(biāo)志量來(lái)判斷在屏幕顯示的位置,來(lái)繼行數(shù)據(jù)的選擇。而s2,s3,通過(guò)s1num顯示的位置來(lái)對(duì)選擇的數(shù)值進(jìn)行增加,減小。S4為定時(shí)器設(shè)置鍵,按下后設(shè)定定時(shí)的時(shí)間。3.2.7藍(lán)牙控制模塊設(shè)計(jì)藍(lán)牙控制模塊主要由藍(lán)牙模塊通過(guò)串口和單片機(jī)控制設(shè)備進(jìn)行數(shù)據(jù)傳輸。通過(guò)發(fā)送命令來(lái)對(duì)系統(tǒng)進(jìn)行控制。其藍(lán)牙控制代碼結(jié)構(gòu)為:if(RI) { RI=0; if(SBUF=='k') //發(fā)送指令K { SBUF='k'; di(); alarm=!alarm; delay(50);藍(lán)牙模塊通過(guò)手機(jī)下載藍(lán)牙串口,與加濕器藍(lán)牙進(jìn)行匹配連接,然后對(duì)加濕器發(fā)送指令“K來(lái)對(duì)加濕器啟到開(kāi)關(guān)。當(dāng)加濕器處于開(kāi)啟狀態(tài),發(fā)送指令則關(guān),加濕器處于關(guān)閉狀態(tài),發(fā)送指令則開(kāi)。 3.2.8屏幕顯示程序設(shè)計(jì)屏幕顯示模塊調(diào)用溫度檢測(cè)模塊、水位檢測(cè)模塊和外部時(shí)鐘模塊,對(duì)采集到的溫度,濕度,水位和時(shí)間進(jìn)行顯示。屏幕顯示程序通過(guò)初始化函數(shù)init1602()來(lái)對(duì)采集的數(shù)據(jù)進(jìn)行write_byte()和read_byte(),從而顯示出來(lái)。LCD1602屏幕顯示程序的讀寫(xiě)操做,屏幕和光標(biāo)操作都是通過(guò)指令編程來(lái)實(shí)現(xiàn),液晶內(nèi)部含有十一條控制指令,如圖3-6。圖3-6LCD1602內(nèi)部控制指令設(shè)計(jì)先對(duì)LCD1602進(jìn)寫(xiě)入數(shù)據(jù)指令,發(fā)送指令碼38H用來(lái)設(shè)置工作方式,0CH來(lái)設(shè)置光標(biāo),06H設(shè)置輸入方式,01H清屏,通過(guò)80H來(lái)進(jìn)行一行寫(xiě)入數(shù)據(jù),然后80H+40H來(lái)進(jìn)行第二行數(shù)據(jù)寫(xiě)入,最后LCD1602進(jìn)行數(shù)據(jù)寫(xiě)入和讀出數(shù)據(jù)。4系統(tǒng)調(diào)試4.1仿真軟件簡(jiǎn)介本次系統(tǒng)設(shè)計(jì)原理圖和程序完成后,我們可用仿真軟件進(jìn)行仿真與調(diào)試,檢驗(yàn)現(xiàn)象是否與設(shè)計(jì)的一樣。此次仿真過(guò)程軟件調(diào)試采用Proteus,程序調(diào)試采用KeilC。4.1.2Proteus簡(jiǎn)介Proteus是一款非常實(shí)用的仿真軟件,他操作方便,元器件種類(lèi)齊全,對(duì)單片機(jī)電路現(xiàn)象調(diào)試啟到很大的幫助。它具有以下優(yōu)點(diǎn):不同于其他的仿真軟件,它是混合電路仿真軟件,不僅可以對(duì)模擬電路進(jìn)行調(diào)試,還可以對(duì)數(shù)字電路,甚至模數(shù)混合電路。單片機(jī)芯片類(lèi)型繁多,元器件齊全沒(méi)有適合的可以依照自己需要的去創(chuàng)建,使仿真效果更貼近硬件要達(dá)到的效果。它除了可以仿真單片機(jī)工作狀態(tài),還可以仿真外圍電路和沒(méi)單片機(jī)的電路工作狀態(tài)。Poreus的操作過(guò)程也十分簡(jiǎn)單,打開(kāi)主界面,然后在元器件里面搜索自己所需的元器件,然后進(jìn)行仿真,完成后,將對(duì)應(yīng)的引腳進(jìn)行連接。電路的搭建完成后可以通過(guò)下面的開(kāi)始鍵進(jìn)行測(cè)試。4.1.2KeilC51簡(jiǎn)介Keil

C51是德國(guó)Keil

Sottvvaloq出品的51系列兼容單片機(jī)C語(yǔ)言軟件開(kāi)發(fā)系統(tǒng),與匯編相比,C語(yǔ)言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性.上有明顯的優(yōu)勢(shì),因而易學(xué)易用。用過(guò)匯編語(yǔ)言后再使用C來(lái)開(kāi)發(fā),體會(huì)更加深刻。

keil操作步驟:首先建所選芯片一個(gè)工程文件,然后進(jìn)行保存。然后在建一個(gè)源文件把它添加到工程文件里面去。之后在源文件進(jìn)行編寫(xiě)代碼。編寫(xiě)完成后進(jìn)行編譯,編譯沒(méi)錯(cuò)之后生成一個(gè).hex文件。keil編程和Proteus仿真軟件聯(lián)合直接用寫(xiě)的程序燒寫(xiě)到仿真軟件里面。keil編譯成功后生成一個(gè)后綴名后hex的文件,然后在proteus里面雙擊芯片瀏覽hex文件的所在目錄將其加載,加載成功沒(méi)問(wèn)題后,然后就可以對(duì)整個(gè)仿真設(shè)計(jì)進(jìn)行調(diào)試。4.2仿真調(diào)試本次設(shè)計(jì)在仿真中由于沒(méi)有找到適合的DHT11傳感器和水位傳感器所以在仿真里面只顯示濕度和水位上下限值,沒(méi)有采集到的濕度和水位值。所以在仿真過(guò)程中看不數(shù)據(jù)采集到的現(xiàn)象還有藍(lán)牙模塊本身是個(gè)串口,所以在仿真中仿真不了通過(guò)手機(jī)遠(yuǎn)程控制的現(xiàn)象。上電后,這個(gè)就是一個(gè)屏幕顯示現(xiàn)象仿真,LCD1602液晶顯示屏第一行顯示的是水位報(bào)警值20%和濕度上限值45%,第二行顯示的是個(gè)時(shí)間。其仿真現(xiàn)象如圖4-1。圖4-1仿真現(xiàn)象接下來(lái)進(jìn)行按鍵仿真,通過(guò)按下不同的按鈕來(lái)對(duì)仿真現(xiàn)象進(jìn)行調(diào)試。首按下第一個(gè)按鈕后的,會(huì)對(duì)顯示的濕度,水位上下值和時(shí)間時(shí)分秒進(jìn)行選擇,其仿真圖,如圖4-2。圖4-2按下選擇鍵后的仿真圖按下第一個(gè)按鈕選擇后,然后按下第二個(gè)按鈕,會(huì)對(duì)選擇的值進(jìn)行增加其仿真結(jié)果圖如圖4-3。圖4-3按下加鍵后仿真圖按下第一個(gè)按鈕選擇后,然后按下第三個(gè)按鈕,會(huì)對(duì)選擇的值進(jìn)行減小其仿真結(jié)果圖如圖4-4。圖4-4按下減鍵后仿真圖按下第四個(gè)鍵為定時(shí)設(shè)定鍵,按下就會(huì)定時(shí)打開(kāi)加濕,定時(shí)的時(shí)間通過(guò)第一按鈕對(duì)定時(shí)的時(shí)分秒進(jìn)行選擇,選擇后按下第二個(gè)鍵則增加,按下第三個(gè)則減小,其現(xiàn)象仿真圖如圖4-5。圖4-5定時(shí)設(shè)定鍵仿真圖由于沒(méi)有水位傳感器不能自動(dòng)報(bào)警,所以在仿真過(guò)程中設(shè)置了一個(gè)報(bào)警按鈕,來(lái)仿真水位低時(shí),蜂鳴器報(bào)警現(xiàn)象。按下第五個(gè)按鈕,按下報(bào)警鍵后,低電平,蜂鳴器響。其仿真現(xiàn)象如圖4-6。4-6報(bào)警后仿真圖本次仿真只能看見(jiàn)屏幕顯示,功能鍵,增加鍵,減小鍵,定時(shí)間和水位報(bào)警這幾個(gè)現(xiàn)象,其他的濕度,水位的采集數(shù)據(jù)顯示和藍(lán)牙控制只能通過(guò)硬件來(lái)進(jìn)行調(diào)試4.3硬件調(diào)試Keil編寫(xiě)完成生成.hex文件,然后用專(zhuān)門(mén)的燒錄器下載到硬件板里面去,從而來(lái)對(duì)各個(gè)模塊進(jìn)行硬件調(diào)試。硬件實(shí)物圖如圖4-7。圖4-7硬件實(shí)物圖通電后硬件溫濕度,水位,時(shí)間,界面顯示如圖4-8。藍(lán)牙指令界面如圖4-9。圖4-8 顯示界面圖4-9藍(lán)牙指令界面結(jié)論本次設(shè)計(jì)為單片機(jī)智能加濕器,主要模塊有DHTLL溫濕度采集模塊,DS1302外部時(shí)鐘模塊,液晶顯示模塊等。主要工作有,確定本課題的難點(diǎn)重點(diǎn)和需要實(shí)現(xiàn)的功能。確定本課題的研究方向,發(fā)展前景。進(jìn)行總體設(shè)計(jì),畫(huà)出原理框架圖。設(shè)計(jì)硬件,根據(jù)元器件的時(shí)序圖編寫(xiě)驅(qū)動(dòng)程序。在仿真平臺(tái)上進(jìn)行硬件電路的仿真及軟件程序的代入。對(duì)仿真現(xiàn)象調(diào)試,達(dá)到最佳效果。再進(jìn)行硬件設(shè)備的焊接與測(cè)試,最后撰寫(xiě)論文。在本次設(shè)計(jì)過(guò)程中,難點(diǎn)主要為以下部分:(1)焊接時(shí)未考慮管腳排版的問(wèn)題,導(dǎo)致部分管腳與仿真圖上差異較大,略顯雜亂影響整體美觀。(2)軟件程序設(shè)計(jì)中狀態(tài)控制模塊對(duì)繼電器控制,防干燒程序問(wèn)題(3)仿真時(shí)找不到適合的溫濕度傳感器和水位傳感器,于是有些現(xiàn)象仿真不了,只能通過(guò)下載硬件里面去然后來(lái)進(jìn)行調(diào)試。本次設(shè)計(jì)基于市面上的加濕器,增加了一個(gè)防干燒,加濕時(shí)濕度達(dá)到最最佳濕度時(shí)停止加濕,以免加濕過(guò)度,另外還添加了個(gè)手機(jī)藍(lán)牙遠(yuǎn)程控制,讓我們可以更方便的去操作它,不足的是藍(lán)牙只能發(fā)送命令控制開(kāi)關(guān),并不控制其他的。在此基礎(chǔ)我們可以更智能化,比如把水位報(bào)警換成語(yǔ)音報(bào)警,我們

溫馨提示

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