無線數(shù)據(jù)溫濕度采集系統(tǒng)設(shè)計_第1頁
無線數(shù)據(jù)溫濕度采集系統(tǒng)設(shè)計_第2頁
無線數(shù)據(jù)溫濕度采集系統(tǒng)設(shè)計_第3頁
無線數(shù)據(jù)溫濕度采集系統(tǒng)設(shè)計_第4頁
無線數(shù)據(jù)溫濕度采集系統(tǒng)設(shè)計_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

無線數(shù)據(jù)采集系統(tǒng)韓季方何燕山 張健指導(dǎo)老師:呂麗萍 甄姬娜摘 要 41方案論證與比擬 51.1控制核心CPU的論證與比擬 51.2無線傳輸模塊的論證與比擬 51.3顯示模塊論證與比擬 61.4鍵盤模塊論證與比擬 61.5時鐘實(shí)現(xiàn)論證與比擬 61.6控制發(fā)射方案論證與比擬 71.7溫度采集模塊論證與比擬 71.8濕度采集模塊論證與比擬 71.9報警模塊論證與比擬 71.10存儲模塊論證與比擬 82系統(tǒng)硬件設(shè)計與實(shí)現(xiàn) 92.1系統(tǒng)總體設(shè)計 92.2最小控制系統(tǒng)設(shè)計 102.3電源模塊設(shè)計 102.4溫度采集模塊設(shè)計 112.5濕度采集模塊設(shè)計 112.6NRF509無線收發(fā)模塊設(shè)計 122.71602液晶模塊設(shè)計 122.8LED指示燈模塊設(shè)計 132.9紅外模塊設(shè)計 132.10鍵盤模塊設(shè)計 132.11EEPROM模塊設(shè)計 142.12串口通信模塊設(shè)計 142.1312864液晶模塊設(shè)計 142.14報警模塊設(shè)計 152.15時鐘模塊設(shè)計 153系統(tǒng)軟件設(shè)計與實(shí)現(xiàn) 173.1采集系統(tǒng)軟件流程 173.2采集系統(tǒng)軟件設(shè)計 183.2.1主程序設(shè)計 183.2.2溫度檢測程序設(shè)計 183.2.3濕度檢測程序設(shè)計 183.2.4紅外遙控程序設(shè)計 183.2.5NRF509發(fā)射程序設(shè)計 193.3顯示系統(tǒng)軟件流程圖 193.4顯示系統(tǒng)軟件設(shè)計 213.4.1主程序設(shè)計 213.4.212864液晶屏幕程序設(shè)計 213.4.3鍵盤檢測程序設(shè)計 213.4.4報警程序設(shè)計 213.4.5DS1302和EEPROM程序設(shè)計 213.4.6NRF509發(fā)射程序設(shè)計 224系統(tǒng)調(diào)試 234.1測試環(huán)境及工具 234.2測試方法 234.3測試數(shù)據(jù) 234.4測試結(jié)果 235結(jié)束語 24摘 要 本系統(tǒng)使用兩片單片機(jī)作為控制、處理核心,由數(shù)據(jù)采集和數(shù)據(jù)顯示兩個分系統(tǒng)組成。系統(tǒng)核心模塊使用兩塊NRF509無線收發(fā)模塊來完成數(shù)據(jù)的無線傳輸。在數(shù)據(jù)采集系統(tǒng)中還有五路DS18B20和五路DHT11進(jìn)行采集數(shù)據(jù),然后使用紅外遙控指定數(shù)據(jù)的發(fā)送,LED燈和1602液晶的顯示發(fā)送指示更具直觀性。在數(shù)據(jù)顯示系統(tǒng)中的友好中文顯示12864液晶更具可是效果,外加DS1302時鐘、EEPROM數(shù)據(jù)存儲和報警模塊,然后通過靈活的操作鍵盤完成五路溫度接收顯示、五路濕度接收顯示、數(shù)據(jù)實(shí)時保存且可查詢和可設(shè)定數(shù)據(jù)報警范圍且實(shí)時監(jiān)測報警等功能。關(guān)鍵字:單片機(jī) NRF509無線收發(fā) DS18B20 DHT11 12864SummaryThesystemusestwosingle-chipasacontrol,theprocessingcore,thedataacquisitionanddatadisplaycomposedoftwosubsystems.KernelmoduleusestwoNRF509wirelesstransceivermoduletocompletethewirelesstransmissionofdata.Inthedataacquisitionsystem,andthereDS18B20RdRdDHT11tocollectdataandthenusetheinfraredremotecontroltosendthespecifieddata,LEDlightsandLCDdisplay1602tosendinstructionsmoreintuitive.InthedatadisplaysysteminamorefriendlyandChinesebuttheresultsshow12864,plusDS1302clock,EEPROMdatastorageandalarmmodule,andthencompletedthroughaflexiblekeyboardRdreceivedisplaytemperature,humidityRdreceiverdisplay,real-timedataissavedandcanqueryandsetthedatarangeandreal-timealarmmonitoringalarm.Keywords:single-chipNRF509wirelesstransceiverDS18B20DHT11128641方案論證與比擬本次設(shè)計有數(shù)據(jù)采集系統(tǒng)和數(shù)據(jù)顯示系統(tǒng),即發(fā)送與接收兩個模塊。數(shù)據(jù)采集系統(tǒng)完成五路溫度采集和五路濕度采集,然后通過無線傳輸?shù)浇邮照?,即?shù)據(jù)顯示系統(tǒng)接收數(shù)據(jù),然后將數(shù)據(jù)信息顯示出來。1.1控制核心CPU的論證與比擬方案一:采用嵌入式單CPU實(shí)現(xiàn)采用高性能單CPU實(shí)現(xiàn)系統(tǒng),比方以32位的嵌入式CPUARM芯片作為控制系統(tǒng)核心。此方案可以很好的完成數(shù)據(jù)采集和顯示功能,但是ARM系統(tǒng)設(shè)計調(diào)試比擬復(fù)雜,在短的時間內(nèi)難以很好地完成設(shè)計,并且本錢較高,所以不宜采用此方案。方案二:采用FPGA實(shí)現(xiàn)采用FPGA作為系統(tǒng)的控制器,它可以實(shí)現(xiàn)各種復(fù)雜的邏輯功能,所有的器件集中在一塊芯片上,體積小,穩(wěn)定性高。同時FPGA可用于EDA軟件仿真調(diào)試,易于進(jìn)行功能擴(kuò)展。但是本系統(tǒng)對于數(shù)據(jù)處理的速度要求不高,而FPGA的引腳較多、布局復(fù)雜,相對本錢較高,所以不宜采用此方案。方案三:采用兩片51單片機(jī)實(shí)現(xiàn)采用兩片51單片機(jī)分別作為兩個分系統(tǒng)的控制器,單片機(jī)使用簡單,軟件編程靈活,本錢較低。對于本系統(tǒng)的設(shè)計要求,使用STC89C52足以滿足它的算法和控制功能。綜上所述,我們決定采用方案三。1.2無線傳輸模塊的論證與比擬方案一:基于PT2262/2272芯片的發(fā)/收模塊PT2262/2272是臺灣普城公司生產(chǎn)的一種CMOS工藝制造的低功耗低價位通用編解碼電路,PT2262/2272最多可有12位(A0-A11)三態(tài)地址端管腳(懸空,接高電平,接低電平),可選地址較多,其工作頻率315M,在空曠地域傳輸距離可達(dá)50到1000米,并且操作簡單。但是基于PT2262只能完成發(fā)送功能,基于PT2272只能實(shí)現(xiàn)接收功能,如果設(shè)計到反應(yīng)信息將無法實(shí)現(xiàn),不適合應(yīng)用在此題。方案二:NRF509無線收發(fā)模塊NRF905單片無線收發(fā)器是挪威Nordic公司推出的單片射頻發(fā)射器芯片,工作于433/868/915MHz3個ISM頻道,NRF905可以自動完成處理字頭和CRC〔循環(huán)冗余碼校驗(yàn)〕的工作,可由片內(nèi)硬件自動完成曼徹斯特編碼/解碼,使用SPI接口與微控制器通信,配置非常方便,使用51單片機(jī)可模擬SPI接口進(jìn)行編程配置,編程較復(fù)雜,直線可視通訊距離200到300米,兼有收發(fā)兩個功能。綜上所述,我們決定采用第二方案。1.3顯示模塊論證與比擬方案一:采用數(shù)碼管顯示 LED數(shù)碼管顯示內(nèi)容單一,顯示信息量較少,而且耗電量比擬大,接口又比擬多,然而驅(qū)動電路設(shè)計比擬復(fù)雜,有點(diǎn)本錢低。

方案二:采用1602液晶顯示采用1602LCD顯示器,具有體積小、質(zhì)量較輕、功耗低等優(yōu)點(diǎn),不過1602只能夠顯示16*2個字符,不能夠顯示漢字,8位并行數(shù)據(jù)傳輸。方案三:采用12864液晶顯示采用點(diǎn)陣型〔128*64〕液晶顯示器〔LCD〕,可以顯示字符、數(shù)字、漢字及簡單的圖形,可設(shè)計出各種清晰的功能菜單及數(shù)據(jù),提供全面的信息,功耗低、界面友好、控制靈活,另一較大有點(diǎn)可以串行數(shù)據(jù)傳輸,從而節(jié)省IO口資源。綜上所述,我們決定在數(shù)據(jù)采集系統(tǒng)中選擇使用1602液晶,在數(shù)據(jù)顯示系統(tǒng)中使用12864液晶顯示。1.4鍵盤模塊論證與比擬方案一:采用矩陣式 矩陣式按鍵設(shè)計適應(yīng)于按鍵數(shù)量較多,這種方式的優(yōu)點(diǎn)就是相對于獨(dú)立接口方式可以節(jié)省很多I/O資源,且更為靈活。缺點(diǎn)就是需要用軟件處理消抖、重鍵等問題。矩陣式按鍵接口根據(jù)采用的按鍵識別方法不同根本有兩種接法:線反轉(zhuǎn)法和掃描法。其中掃描法的列線始終為輸入,行線始終為輸出;線反轉(zhuǎn)法那么需要改變列線和行線的方向。。

方案二:采用獨(dú)立鍵盤獨(dú)立式按鍵接口設(shè)計優(yōu)點(diǎn)是電路配置靈活,軟件實(shí)現(xiàn)簡單,但缺點(diǎn)也很明顯,每個按鍵需要占用一根口線,假設(shè)按鍵數(shù)量較多,資源浪費(fèi)將比擬嚴(yán)重,電路結(jié)構(gòu)也變得復(fù)雜。因此本方法主要用于按鍵較少或?qū)Σ僮魉俣纫筝^高的場合。軟件實(shí)現(xiàn)時,可以采用中斷方式,也可以采用查詢方式。綜上所述,由于本設(shè)計鍵盤按鍵較少,我們決定使用采用獨(dú)立鍵盤。1.5時鐘實(shí)現(xiàn)論證與比擬方案一:軟件實(shí)現(xiàn) 用軟件實(shí)現(xiàn),直接用單片機(jī)的定時器編程以實(shí)現(xiàn)時鐘。

方案二:時鐘芯片實(shí)現(xiàn)用專門的時鐘芯片DS1302實(shí)現(xiàn)時鐘的計時,再把時間數(shù)據(jù)送入單片機(jī),由單片機(jī)控制顯示。綜上所述,比擬兩種方案,用軟件實(shí)現(xiàn)時鐘固然可以,但是程序運(yùn)行的每一步都需要時間,多一步或少一步程序都會影響計時的準(zhǔn)確度,用專用時鐘芯片DS1302那么可以實(shí)現(xiàn)準(zhǔn)確記時。所以選二方案。1.6控制發(fā)射方案論證與比擬方案一:按鍵控制 采用按鍵控制發(fā)射,有點(diǎn)是設(shè)計簡單,但是受到控制距離的限制。

方案二:紅外遙控控制采用紅外遙控控制發(fā)射,使用紅外遙控器和一個紅外接收頭SM0038來實(shí)現(xiàn),使用一個外部中斷口,使用外部中斷的方式來實(shí)現(xiàn)解碼過程。使用遙控最大的有點(diǎn)就是可以把控制距離闊長。綜上所述,我們決定采用第二方案。1.7溫度采集模塊論證與比擬方案一:采用熱敏器件 由于本設(shè)計是測溫電路,可以使用熱敏電阻之類的器件利用其感溫效應(yīng),再將隨著被測溫度變化的電壓或電流采集過來,進(jìn)行A/D轉(zhuǎn)換后,用單片機(jī)進(jìn)行數(shù)據(jù)的處理,就可以將測溫度顯示出來。這種設(shè)計需要用到A/D轉(zhuǎn)換電路,測溫電路比擬復(fù)雜。

方案二:采用溫度傳感器溫度傳感器DS18B20是美國DALLAS半導(dǎo)體公司最新推出的一種改良型智能溫度傳感器,它能直接讀出被測溫度,并且可根據(jù)實(shí)際要求通過簡單的編程實(shí)現(xiàn)9~12位的數(shù)字值讀數(shù)方式,它內(nèi)部有一個結(jié)構(gòu)為8字節(jié)的高速暫存RAM存儲器。另外,DS18B20的一個主要特點(diǎn)就是單總線多節(jié)點(diǎn)控制,節(jié)約IO口和滿足系統(tǒng)要求。綜上所述,我們決定采用第二方案。1.8濕度采集模塊論證與比擬方案一:采用DHT1101濕度傳感器HS1101濕度傳感器來測量濕度,HS1101是法國Humirel公司推出的一款電容式相對濕度傳感器,HS1101濕度傳感器在電路構(gòu)成上等效于一個電容器件,將HS1101的電容量的變化量準(zhǔn)確地轉(zhuǎn)變?yōu)閱纹瑱C(jī)易接受的信號需要一個振蕩電路來實(shí)現(xiàn),電路設(shè)計比擬復(fù)雜。

方案二:采用DHT11溫濕度傳感器DHT11數(shù)字溫濕度傳感器是一款含有已校準(zhǔn)數(shù)字信號輸出的溫濕度復(fù)合傳感器。其可靠性和穩(wěn)定性較強(qiáng),使用方便,單線制串行接口,使系統(tǒng)集成變得簡易快捷。超小的體積、極低的功耗,信號傳輸距離可達(dá)20米以上。綜上所述,我們決定采用第二方案。1.9報警模塊論證與比擬方案一:采用LED燈報警雖然操作簡單,但是過于簡單。

方案二:采用LED和蜂鳴器同時報警將LED和蜂鳴器并聯(lián)在一起,使用一個三極管同時驅(qū)動,同時具有聲光報警。綜上所述,我們決定采用第二方案。1.10存儲模塊論證與比擬方案一:采用單片機(jī)內(nèi)存單片機(jī)內(nèi)存有限,只是用于較小的數(shù)據(jù)存儲。

方案二:采用EEPROM使用EEPROM芯片AT24C02芯片,存儲量較大,使用IIC總線控制,可以隨機(jī)存取數(shù)據(jù)。綜上所述,我們決定采用第二方案。2系統(tǒng)硬件設(shè)計與實(shí)現(xiàn)2.1系統(tǒng)總體設(shè)計基于上述各方案的論證與分析,我們確定了最終方案。整個系統(tǒng)采用5V電源分別為兩個系統(tǒng)供電。系統(tǒng)的總體結(jié)構(gòu)框圖如下所示:五路溫度采集器五路溫度采集器DHT11五路溫濕度采集器1062液晶顯示紅外遙控控制51單片機(jī)控制核心發(fā)射指示燈提示NRF509發(fā)射模塊電源模塊51單片機(jī)控制核心51單片機(jī)控制核心NRF509接收模塊12864液晶顯示成功接收數(shù)據(jù)提示DS1302時鐘模塊EEPROM數(shù)據(jù)存取模塊上下限報警模塊鍵盤模塊電源模塊圖2-22.2最小控制系統(tǒng)設(shè)計 最小控制核心模塊原理圖如下圖,本模塊采用STC89C52作為控制芯片,采用12MHz高精度的晶振,以獲得較穩(wěn)定時鐘頻率,減小測量誤差。5l系列單片機(jī)為許多控制提供了高度靈活和低本錢的解決方法,充分利用他的片內(nèi)資源,即可與外圍電路構(gòu)成功能完善的無線采集系統(tǒng)。圖2-32.3電源模塊設(shè)計 電源模塊是系統(tǒng)設(shè)計的重要局部之一,只有為系統(tǒng)提供了穩(wěn)定的電壓,系統(tǒng)才能夠正常的工作,如果說電壓過高或者過低都有可能導(dǎo)致系統(tǒng)損壞。本系統(tǒng)使用了10uf的電解電容和104的瓷片電容作為穩(wěn)定電壓措施,如下圖:圖2-42.4溫度采集模塊設(shè)計這里我們用到溫度芯片DS18B20。DS18B20是DALLAS公司生產(chǎn)的一線式數(shù)字溫度傳感器,具有3引腳TO-92小體積封裝形式。測溫分辨率可達(dá)0.0625℃,被測溫度用符號擴(kuò)展的16位數(shù)字量方式串行輸出。其工作電源既可在遠(yuǎn)端引入,也可采用寄生電源方式產(chǎn)生。CPU只需一根端口線就能與諸多DS18B20通信,占用微處理器的端口較少,可節(jié)省大量的引線和邏輯電路。DS18B20支持“一線總線”接口,測量溫度范圍為-55°C~+125°C,在-10~+85°C范圍內(nèi),精度為±0.5°C?,F(xiàn)場溫度直接以“一線總線”的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性。適合于本五路采集系統(tǒng)。圖2-52.5濕度采集模塊設(shè)計 SHT11的濕度檢測運(yùn)用電容式結(jié)構(gòu),并采用具有不同保護(hù)的“微型結(jié)構(gòu)”檢測電極系統(tǒng)與聚合物覆蓋層來組成傳感器芯片的電容,除保持電容式濕敏器件的原有特性外,還可抵御來自外界的影響。由于它將溫度傳感器與濕度傳感器結(jié)合在一起而構(gòu)成了一個單一的個體,因而測量精度較高且可精確得出露點(diǎn),同時不會產(chǎn)生由于溫度與濕度傳感器之間隨溫度梯度變化引起的誤差。CMOSensTM技術(shù)不僅將溫濕度傳感器結(jié)合在一起,而且還將信號放大器、模/數(shù)轉(zhuǎn)換器、校準(zhǔn)數(shù)據(jù)存儲器、標(biāo)準(zhǔn)I2C總線等電路全部集成在一個芯片內(nèi)。 SHT11的每一個傳感器都是在極為精確的濕度室中校準(zhǔn)的。SHT11傳感器的校準(zhǔn)系數(shù)預(yù)先存在OTP內(nèi)存中。經(jīng)校準(zhǔn)的相對濕度和溫度傳感器與一個14位的A/D轉(zhuǎn)換器相連,可將轉(zhuǎn)換后的數(shù)字溫濕度值送給二線I2C總線器件,從而將數(shù)字信號轉(zhuǎn)換為符合I2C總線協(xié)議的串行數(shù)字信號。圖2-62.6NRF509無線收發(fā)模塊設(shè)計 本設(shè)計中將單片機(jī)模擬SPI接口和nRF905的SPI接口相連,另外再選幾個I/O口連接nRF905的輸入輸出信號,nRF905傳輸數(shù)據(jù)時為非實(shí)時方式,即發(fā)送端發(fā)出數(shù)據(jù),接收端收到后先暫存于芯片存儲器內(nèi),外面的MCU可以在需要時再到芯片中去取。nRF905一次的數(shù)據(jù)傳輸量最多為32B。nRF905在正常工作前應(yīng)根據(jù)需要寫好配置存放器,其后的工作主要是兩個:發(fā)送數(shù)據(jù)和接收數(shù)據(jù)。 發(fā)送數(shù)據(jù)時,先把nRF905置于待機(jī)模式(PWR_UP引腳為高、TRX_CE引腳為低),然后通過SPI總線把發(fā)送地址和待發(fā)送的數(shù)據(jù)都寫入相應(yīng)的存放器中,之后把nRF905置于發(fā)送模式(PWR_UP、TRX_CE和TX_EN全置高),數(shù)據(jù)就會自動通過天線發(fā)送出去。為了數(shù)據(jù)可靠地傳輸,將射頻配置存放器中的自動重發(fā)位(AUTO_RETRAN)設(shè)為有效,數(shù)據(jù)包重復(fù)不斷地一直向外發(fā),直到把TRX_CE拉低,退出發(fā)送模式為止。接收數(shù)據(jù)時,把nRF905的TRX_CE引腳置為高電平,TX_EN引腳拉為低電平后,就開始接收數(shù)據(jù)。本設(shè)計中設(shè)定的40s內(nèi)一直判斷nRF905的DR引腳是否變高,假設(shè)為高,那么證明接收到了有效數(shù)據(jù),可以退出接收模式,假設(shè)一直沒有接收到,待時間到時也退出接收模式。退出后在待機(jī)模式,通過模擬SPI總線把nRF905內(nèi)部的接收數(shù)據(jù)存放器中的數(shù)據(jù)讀出,即接收到的有效數(shù)據(jù)。圖2-72.71602液晶模塊設(shè)計 1602液晶的電路設(shè)計使用8位數(shù)據(jù)IO口并行傳輸,三個控制信號線,背光燈電源出加一個限流電阻,在字符亮度電源處加一個可調(diào)變阻器,方便調(diào)節(jié)字體顯示亮度。圖2-82.8LED指示燈模塊設(shè)計 LED指示燈電路設(shè)計簡單,直接通過串聯(lián)限流電阻與IO口連接,操作簡單。圖2-92.9紅外模塊設(shè)計 一體化紅外線接收器是一種集紅外線接收和放大于一體,不需要任何外接元件,就能完成從紅外線接收輸出與TTL電平信號兼容的所有工作,而體積和普通的塑封三極管大小一樣,它適合于各種紅外線遙控和外線數(shù)據(jù)傳輸。圖2-102.10鍵盤模塊設(shè)計 鍵盤模塊采用獨(dú)立鍵盤方案來設(shè)計電路,在數(shù)據(jù)顯示系統(tǒng)中設(shè)計了5個按鍵,作用分別是確認(rèn)、加、減、返回和一個附加功能,有著五個鍵可以通過軟件編程靈活的操作12864液晶顯示器的界面切換及其系統(tǒng)參數(shù)的改變。圖2-112.11EEPROM模塊設(shè)計 AT24C02存儲芯片采用的是IIC總線控制,通過一條數(shù)據(jù)線和一條時鐘信號線進(jìn)行同步串行通信,即SDA和SCL都是雙向線路都通過一個電流源或上拉電阻連接到正的電源電壓,當(dāng)總線空閑時這兩條線路都是高電平連接到總線的器件輸出級必須是漏極開路或集電極開路才能執(zhí)行線與的功能I2C總線上數(shù)據(jù)的傳輸速率在標(biāo)準(zhǔn)模式下可達(dá)100kbit/s在快速模式下可達(dá)400kbit/s在高速模式下可達(dá)3.4Mbit/s連接到總線的接口數(shù)量只由總線電容是400pF的限制決定。圖2-122.12串口通信模塊設(shè)計 STC89C52有一個全雙工的串行通訊口,所以單片機(jī)和電腦之間可以方便地進(jìn)行串口通訊。進(jìn)行串行通訊時要滿足一定的條件,比方電腦的串口是RS232電平的,而單片機(jī)的串口是TTL電平的,兩者之間必須有一個電平轉(zhuǎn)換電路,我們采用了專用芯片MAX232進(jìn)行轉(zhuǎn)換,雖然也可以用幾個三極管進(jìn)行模擬轉(zhuǎn)換,但是還是用專用芯片更簡單可靠。圖2-132.1312864液晶模塊設(shè)計帶中文字庫的128X64是一種具有4位/8位并行、2線或3線串行多種接口方式,內(nèi)部含有國標(biāo)一級、二級簡體中文字庫的點(diǎn)陣圖形液晶顯示模塊;其顯示分辨率為128×64,內(nèi)置8192個16*16點(diǎn)漢字,和128個16*8點(diǎn)ASCII字符集.利用該模塊靈活的接口方式和簡單、方便的操作指令,可構(gòu)成全中文人機(jī)交互圖形界面??梢燥@示8×4行16×16點(diǎn)陣的漢字.也可完成圖形顯示.低電壓低功耗是其又一顯著特點(diǎn)。由該模塊構(gòu)成的液晶顯示方案與同類型的圖形點(diǎn)陣液晶顯示模塊相比,不管硬件電路結(jié)構(gòu)或顯示程序都要簡潔得多,且該模塊的價格也略低于相同點(diǎn)陣的圖形液晶模塊。本電路設(shè)計使用12864的串行數(shù)據(jù)通信的方式,這樣可以節(jié)省IO的占用。圖2-142.14報警模塊設(shè)計 本模塊設(shè)計有三極管驅(qū)動蜂鳴器,通過IO口控制信號可以發(fā)出來不同頻率的聲音,其電路設(shè)計如圖:圖2-152.15時鐘模塊設(shè)計 時鐘電路原理圖如圖,DS1302與單片機(jī)的連接也僅需要3條線:CE引腳、SCLK串行時鐘引腳、I/O串行數(shù)據(jù)引腳,Vcc2為備用電源,外接32.768kHz晶振,為芯片提供計時脈沖。圖2-163系統(tǒng)軟件設(shè)計與實(shí)現(xiàn)遙控1鍵按下1602顯示發(fā)收數(shù)據(jù)提示是否有紅外外部中斷開始初始化遙控1鍵按下1602顯示發(fā)收數(shù)據(jù)提示是否有紅外外部中斷開始初始化NRF509、1602、外部中斷遙控2鍵按下遙控3鍵按下遙控4鍵按下相應(yīng)發(fā)收數(shù)據(jù)指示燈提示1602顯示發(fā)收數(shù)據(jù)NRF509配置發(fā)送模式NRF509發(fā)送數(shù)據(jù)延時 NY3.2采集系統(tǒng)軟件設(shè)計 本系統(tǒng)軟件設(shè)計采用模塊化設(shè)計,模塊化編程的最大優(yōu)點(diǎn)是:思路清晰、移植方便、程序簡化。3.2.1主程序設(shè)計在主程序中首先對NRF509、1602、外部中斷進(jìn)行初始化,然后進(jìn)入實(shí)時循環(huán)檢測紅外中斷,即檢測是否有發(fā)出發(fā)射數(shù)據(jù)的遙控指令,同時不斷讀取溫濕度更新數(shù)據(jù),一旦有發(fā)射數(shù)據(jù)的遙控指令,那么將啟動NRF509的發(fā)射模式,依照不同的發(fā)射數(shù)據(jù)遙控指令發(fā)射出相應(yīng)的數(shù)據(jù),同時將有1602液晶顯示提示發(fā)送不同的數(shù)據(jù)和伴隨有不同的LED燈發(fā)射指示。3.2.2溫度檢測程序設(shè)計 檢測溫度模塊程序中,在系統(tǒng)調(diào)試之前首先使用讀取5個不同的DS18B20的ROM地址,并且顯示在1602液晶上面,將其記錄下來放到一個數(shù)組中。 在系統(tǒng)運(yùn)行中讀取每一路溫度時就需要使用地址匹配指令,將上面記錄下來的地址與相應(yīng)實(shí)物DS18B20進(jìn)行匹配,假設(shè)匹配成功將正確讀取該路溫度。3.2.3濕度檢測程序設(shè)計由于DHT11采用單線雙向的串行數(shù)據(jù)傳輸,DATA用于微處理器與DHT11之間的通訊和同步,采用單總線數(shù)據(jù)格式,一次通訊時間4ms左右,數(shù)據(jù)分小數(shù)局部和整數(shù)局部,具體格式在下面說明,當(dāng)前小數(shù)局部用于以后擴(kuò)展,現(xiàn)讀出為零.操作流程如下:一次完整的數(shù)據(jù)傳輸為40bit,高位先出。數(shù)據(jù)格式:8bit濕度整數(shù)數(shù)據(jù)+8bit濕度小數(shù)數(shù)據(jù)+8bi溫度整數(shù)數(shù)據(jù)+8bit溫度小數(shù)數(shù)據(jù)+8bit校驗(yàn)和數(shù)據(jù)傳送正確時校驗(yàn)和數(shù)據(jù)等于“8bit濕度整數(shù)數(shù)據(jù)+8bit濕度小數(shù)數(shù)據(jù)+8bi溫度整數(shù)數(shù)據(jù)+8bit溫度小數(shù)數(shù)據(jù)”所得結(jié)果的末8位。用戶MCU發(fā)送一次開始信號后,DHT11從低功耗模式轉(zhuǎn)換到高速模式,等待主機(jī)開始信號結(jié)束后,DHT11發(fā)送響應(yīng)信號,送出40bit的數(shù)據(jù),并觸發(fā)一次信號采集,用戶可選擇讀取局部數(shù)據(jù).從模式下,DHT11接收到開始信號觸發(fā)一次溫濕度采集,如果沒有接收到主機(jī)發(fā)送開始信號,DHT11不會主動進(jìn)行溫濕度采集.采集數(shù)據(jù)后轉(zhuǎn)換到低速模式。3.2.4紅外遙控程序設(shè)計 紅外遙控使用了遙控的四個鍵碼,分別用于控制發(fā)射前三路溫度數(shù)據(jù)、后兩路溫度數(shù)據(jù)、前三路濕度數(shù)據(jù)、后兩路濕度數(shù)據(jù)。3.2.5NRF509發(fā)射程序設(shè)計在NRF509發(fā)射程序中首先要進(jìn)行初始化nRF905的射頻配置存放器,然后配置nRF905的發(fā)送地址,本設(shè)計中配置最多4個字節(jié)(32位),發(fā)送端的發(fā)送地址應(yīng)與接收端設(shè)備的接收地址相同。本模塊設(shè)定為發(fā)送模式。3.3顯示系統(tǒng)軟件流程圖接收數(shù)據(jù)地址匹配不同界面由鍵盤操作設(shè)定顯示參數(shù),且確定屏幕號接收數(shù)據(jù)地址匹配不同界面由鍵盤操作設(shè)定顯示參數(shù),且確定屏幕號NRF509設(shè)置接收模式12864液晶顯示相應(yīng)界面鍵盤操作報警報警是否超出溫度報警范圍是否超出濕度報警范圍菜單界面顯示年月日五路溫度顯示顯示時分秒五路濕度顯示顯示時分秒設(shè)定溫濕度報警界面數(shù)據(jù)記錄界面設(shè)計作者界面初始化NRF509配置存放器判斷液晶屏幕號開始初始化NRF509、12864、DS1302、AT24C02接受的數(shù)據(jù)賦給相應(yīng)的顯示變量讀取DS1302是否過1小時數(shù)據(jù)存儲 N N Y YN N Y Y3.4顯示系統(tǒng)軟件設(shè)計 本系統(tǒng)軟件設(shè)計采用模塊化設(shè)計,模塊化編程的最大優(yōu)點(diǎn)是:思路清晰、移植方便、程序簡化。3.4.1主程序設(shè)計在主程序中首先對NRF509、12864、DS1302、AT24C02進(jìn)行初始化,然后進(jìn)入實(shí)時循環(huán)刷新12864液晶顯示屏〔由顯示屏幕號和一些相關(guān)數(shù)據(jù)變量而定〕和檢測掃描鍵盤,同時初始化NRF509配置存放器并且設(shè)置為接受模式,一旦發(fā)射系統(tǒng)發(fā)射數(shù)據(jù)將在這里接受,之后匹配地址,只有地址匹配才會更新接受數(shù)據(jù),在此過程同時伴隨有成功接受數(shù)據(jù)的聲光提示信息。在這個循環(huán)中還有不斷的讀取DS18B20時鐘進(jìn)行刷新時間和進(jìn)行定時的進(jìn)行數(shù)據(jù)存儲。3.4.212864液晶屏幕程序設(shè)計 在12864液晶顯示器的函數(shù)根底上,本系統(tǒng)共設(shè)計了五個顯示界面,并且設(shè)定五個界面的屏幕號分別是阿拉伯?dāng)?shù)字1到5,這五個界面顯示功能分別是菜單界面顯示和年月日顯示

溫馨提示

  • 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

提交評論