基于51系列單片機(jī)的自動(dòng)噴水系統(tǒng)_第1頁
基于51系列單片機(jī)的自動(dòng)噴水系統(tǒng)_第2頁
基于51系列單片機(jī)的自動(dòng)噴水系統(tǒng)_第3頁
基于51系列單片機(jī)的自動(dòng)噴水系統(tǒng)_第4頁
基于51系列單片機(jī)的自動(dòng)噴水系統(tǒng)_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、項(xiàng)目摘要摘 要本系統(tǒng)由主要由四大部分組成:數(shù)據(jù)輸入部分,數(shù)據(jù)顯示部分,數(shù)據(jù)輸出部分,數(shù)據(jù)處理部分。數(shù)據(jù)輸入部分的功能是把要采集的數(shù)據(jù)轉(zhuǎn)化成數(shù)字信號(hào)傳入數(shù)據(jù)處理部分。數(shù)據(jù)顯示部分的功能是把采集的數(shù)據(jù)顯示出來。數(shù)據(jù)輸出部分的功能是控制電磁閥來進(jìn)行外部溫濕度的調(diào)節(jié)。數(shù)據(jù)處理部分的功能是把采集進(jìn)來的數(shù)據(jù)進(jìn)行分析,輸出要輸出的信號(hào)控制數(shù)據(jù)的輸出。本系統(tǒng)的功能是采集溫濕度并顯示,從而控制電磁閥的輸出,進(jìn)而控制外面的溫濕度使得外面的溫濕度適合植物的生長(zhǎng)。關(guān)鍵詞:?jiǎn)纹瑱C(jī),自動(dòng)灌溉,溫濕度,LEDEnglish AbstractABSTRACTThis system mainly consists of fou

2、r parts: data input, data display, data output, data processing. The data input portion of the function is to collect data into digital signal into the data processing section. Data display function is to collect data display. Data output portion of the function is to control the electromagnetic val

3、ve to external temperature and humidity regulator. The data processing part of the function is to collect in the data analysis, the output to output signals to control the output of the data.The function of this system is the collection of temperature and humidity and display, so as to control the e

4、lectromagnetic valve to control the output, the outside temperature and humidity makes the outside temperature and humidity suitable for the growth of plants.KEY WORDS: Microcontroller, Automatic irrigation, Temperature and humidity23項(xiàng)目實(shí)現(xiàn)構(gòu)思自動(dòng)噴水系統(tǒng)的設(shè)計(jì)和功能介紹 自動(dòng)化控制噴水系統(tǒng)(灌溉)是利用溫濕傳感器來監(jiān)測(cè)土壤信息、作物生長(zhǎng)信息,并將監(jiān)測(cè)數(shù)據(jù)傳到控

5、制系統(tǒng),在CPU的分析下,對(duì)終端設(shè)備發(fā)出相應(yīng)的指令,以實(shí)現(xiàn)無人自動(dòng)維護(hù)作物生長(zhǎng)環(huán)境以及土壤性質(zhì)的功能。我們的自動(dòng)噴水系統(tǒng)的工作原理和功能實(shí)現(xiàn)如下:通過土壤、氣象、作物等類傳感器及監(jiān)測(cè)設(shè)備將土壤、作物、氣象狀況等監(jiān)測(cè)數(shù)據(jù)通過數(shù)據(jù)總線傳到單片機(jī),經(jīng)過單片機(jī)系統(tǒng)內(nèi)已編好的程序來匯集數(shù)值并進(jìn)行分析處理來確定是否應(yīng)該灌溉或停止灌水,然后將開啟或關(guān)閉閥門的信號(hào)通過單片機(jī)傳輸?shù)焦嗨K,由閥門控制系統(tǒng)實(shí)施閥門的開關(guān),從而實(shí)現(xiàn)農(nóng)作物灌水的自動(dòng)化控制。在系統(tǒng)的設(shè)計(jì)過程中,我們分為以下幾個(gè)子系統(tǒng):控制子系統(tǒng),其中主要包括了電磁閥等相關(guān)電路,用來控制水的灌溉;數(shù)據(jù)采集子系統(tǒng),其中包括AM2301等相關(guān)電路;分析子系

6、統(tǒng),其中包括AT89S52單片機(jī)等相關(guān)電路;顯示子系統(tǒng),其中包括LED數(shù)碼管顯示等相關(guān)電路;報(bào)警子系統(tǒng),其中包括蜂鳴器等相關(guān)電路;操作子系統(tǒng),其中包括按鈕等相關(guān)電路。特色創(chuàng)新部分 1.本次系統(tǒng)設(shè)計(jì)中我們加入了報(bào)警電路模塊,當(dāng)溫度達(dá)到我們的設(shè)定值時(shí),蜂鳴器便會(huì)開始報(bào)警,而當(dāng)溫度降到設(shè)定值以下時(shí),蜂鳴器將會(huì)停止報(bào)警。2.在考慮溫濕度傳感器的選擇時(shí),我們決定使用同時(shí)集成了溫濕度采集及數(shù)字輸出的AM2301,相比溫度傳感器DS18B20和濕度傳感器AM1001,它更加方便使用,而且采集輸出精度更高。3.在設(shè)定溫濕度的值時(shí),我們采用4個(gè)按鍵來控制,其中S1和S2鍵用作減和加,用來定時(shí)和設(shè)定溫濕度的初始值

7、,S2鍵進(jìn)行倒計(jì)時(shí)和時(shí)間設(shè)定的切換,S4鍵用來切換定時(shí)噴水、根據(jù)溫度噴水、根據(jù)濕度噴水這三種指定模式。能夠自由設(shè)定溫濕度和定時(shí)時(shí)間,顯得更為人性化,更加具有實(shí)用功能。 4.保護(hù)電路,使用繼電器,通過弱電控制強(qiáng)電,減少了電磁閥對(duì)控制系統(tǒng)的干擾。一定程度上保護(hù)了主要電路,延長(zhǎng)了使用壽命。項(xiàng)目實(shí)現(xiàn)方案:方案的比較1.單片機(jī)的選擇單片機(jī)具有體積小,價(jià)格低廉,功能強(qiáng)大,穩(wěn)定可靠,運(yùn)算速度快,功耗低,擴(kuò)展容易,抗干擾能力強(qiáng),系列齊全,使用方便靈活等優(yōu)點(diǎn),廣泛應(yīng)用于工業(yè)過程控制、自動(dòng)監(jiān)測(cè)、智能儀器儀表、家用電器等領(lǐng)域。常用開發(fā)單片機(jī)有AT89S51和AT89S52,二者各有優(yōu)缺點(diǎn)。方案一:使用AT89S51

8、控制系統(tǒng)。AT89S51是一個(gè)低功耗,高性能CMOS 8位單片機(jī),片內(nèi)含4k Bytes ISP(In-system programmable)的可反復(fù)擦寫1000次的Flash只讀程序存儲(chǔ)器,器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)制造,兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng)及80C51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和ISP Flash存儲(chǔ)單元,功能強(qiáng)大的微型計(jì)算機(jī)的AT89S51可為許多嵌入式控制應(yīng)用系統(tǒng)提供高性價(jià)比的解決方案。方案二:使用AT89S52控制系統(tǒng)。相比51,功能基本相同,它的價(jià)格雖然略高一點(diǎn),但是性能更好一點(diǎn)。總結(jié):綜合考慮,采用方案二,本次設(shè)計(jì)選用市場(chǎng)上比較普遍的

9、單片機(jī)AT89S52來實(shí)現(xiàn)系統(tǒng)設(shè)計(jì),其內(nèi)部帶有8KB的程序存儲(chǔ)器,256字節(jié)的數(shù)據(jù)存儲(chǔ)器,足以滿足系統(tǒng)要求。并且他們的引腳相同,而52單片機(jī)能發(fā)揮出更大的能效,且由于我們正在學(xué)習(xí)單片機(jī),手上正好有52單片機(jī),我們對(duì)它也比較熟悉,所以就決定采用52單片機(jī)來實(shí)現(xiàn)。2.傳感器的選擇對(duì)于傳感器的選擇,我們有兩種方案,一種是溫度采集使用DS18B20,而濕度采用AM1001,另一種則是采用已將溫濕度采集集成在同一片傳感器上,且以校準(zhǔn)數(shù)字信號(hào)輸出的復(fù)合傳感器AM2301。綜合二者,我們選用AM2301(又名DHT21)溫濕度傳感器,選用它有以下幾個(gè)理由:(1)考慮DS18B20采集比較麻煩,因此我們決定直

10、接使用AM2301這塊集成溫濕度并且數(shù)字輸出的傳感器。(2)超小的體積、極低的功耗,信號(hào)傳輸距離可達(dá)20 米以上,使其成為溫濕度測(cè)量的最佳選擇。(3)因?yàn)锳M2301,有已經(jīng)編譯好的驅(qū)動(dòng)程序,只需編寫將感應(yīng)到的數(shù)據(jù)傳送到單片機(jī),再發(fā)送到串口顯示,省去了編程的麻煩,且只需要一個(gè)單片機(jī)I/O口來傳送數(shù)據(jù),節(jié)省了硬件資源。3.顯示器的選擇顯示器可采用LED數(shù)碼管和LCD顯示屏,將二者進(jìn)行比較,LED結(jié)構(gòu)簡(jiǎn)單,它實(shí)際上是由七個(gè)發(fā)光二極管組成8字形構(gòu)成的,加上小數(shù)點(diǎn)就是8個(gè)。這些段分別由字母a,b,c,d,e,f,g,dp來表示。當(dāng)數(shù)碼管特定的段加上電壓后,這些特定的段就會(huì)發(fā)亮,以形成我們眼睛看到的 2

11、個(gè)8數(shù)碼管字樣了。它的原理簡(jiǎn)單,容易理解和操作,對(duì)于一些簡(jiǎn)單的顯示系統(tǒng)是非常理想的器件。LCD雖然功能強(qiáng)大,但是操作復(fù)雜,并且LED在本系統(tǒng)中就足以發(fā)揮作用,加上成本低廉,所以在本次設(shè)計(jì)中選用LED顯示數(shù)據(jù)。系統(tǒng)架構(gòu)圖在控制系統(tǒng)方面,通過我們學(xué)過的自動(dòng)控制原理的知識(shí),我們確定本系統(tǒng)采用有單片機(jī)的傳統(tǒng)的閉環(huán)控制系統(tǒng),系統(tǒng)控制原理圖如下圖所示:定時(shí)模式土壤溫濕度電磁閥開關(guān)AT89S52處理數(shù)據(jù)數(shù)據(jù)顯示閉環(huán)控制邏輯原理框圖其中,植被溫濕度是由AM2301傳感器組成的數(shù)據(jù)采集子系統(tǒng),數(shù)據(jù)顯示是由6片LED數(shù)碼管構(gòu)成的顯示子系統(tǒng),AT89S52處理數(shù)據(jù)是由52單片機(jī)構(gòu)成的主控制子系統(tǒng),其中還包括了定時(shí)以

12、及對(duì)電磁閥的控制,電磁閥開關(guān)則是實(shí)現(xiàn)噴水動(dòng)作功能的子系統(tǒng)。設(shè)計(jì)與論證該自動(dòng)噴水系統(tǒng)共分為七個(gè)模塊:主控制模塊、電磁閥控制模塊、報(bào)警模塊、顯示模塊、定時(shí)模塊、溫度采集模塊、抗干擾模塊1.主輸入輸出控制電路。自動(dòng)控制系統(tǒng)通過AM2301傳感器對(duì)受控對(duì)象的有關(guān)參數(shù)信息數(shù)據(jù)的實(shí)時(shí)采集及數(shù)字變化,進(jìn)入單片機(jī)CPU進(jìn)行必要的處理,而后輸出以驅(qū)動(dòng)執(zhí)行器件或機(jī)構(gòu)產(chǎn)生相應(yīng)的動(dòng)作,直接推動(dòng)被控對(duì)象來調(diào)整被測(cè)參量,最終目的以使受控參量始終處于要求值或范圍內(nèi)。在單片機(jī)完成控制處理后總是以數(shù)字信號(hào)通過I/O口線或數(shù)據(jù)總線輸出至受控對(duì)象的。對(duì)受控設(shè)備的驅(qū)動(dòng)常采用模擬量或數(shù)字量輸出驅(qū)動(dòng)兩種方式。而在實(shí)際的單片機(jī)測(cè)控系統(tǒng)中,

13、數(shù)字量輸出控制已越來越廣泛地被應(yīng)用,尤其是其中的開關(guān)量輸出驅(qū)動(dòng)和控制。目前單片機(jī)I/0口線的驅(qū)動(dòng)能力和與CPU直接接口的一般TTL電路或CMOS電路的驅(qū)動(dòng)能力很有限的,不足以驅(qū)動(dòng)那些功率開關(guān)(如繼電器、電機(jī)、電磁開關(guān)等)和強(qiáng)電設(shè)備、大功率負(fù)載,且由于工作現(xiàn)場(chǎng)環(huán)境惡劣、輸出通道接近控制對(duì)象及周圍的電磁等干擾嚴(yán)重,所以輸出控制電路設(shè)計(jì)主要是解決輸出隔離即干擾防治和功率驅(qū)動(dòng)問題。2.電磁閥控制電路電磁閥控制電路主要由NPN共集-共射復(fù)合管及繼電器組成,當(dāng)單片機(jī)P0.7給出高電平,復(fù)合管導(dǎo)通,繼電器接通,將開關(guān)吸合,電磁閥接通開始放水。因?yàn)閱纹瑱C(jī)的帶負(fù)載能力比較小,不足以驅(qū)動(dòng)繼電器和電磁閥,所以采用功

14、率放大驅(qū)動(dòng)電路,使得電磁閥能夠工作。單片機(jī)驅(qū)動(dòng)電路繼電器電磁閥輸出通道控制圖如圖所示:電磁閥控制電路3.報(bào)警電路設(shè)計(jì)報(bào)警電路設(shè)計(jì)作為一個(gè)獨(dú)立的模塊,采用市面上比較普遍的蜂鳴器電路,結(jié)構(gòu)比較簡(jiǎn)單,使用AT89S52上的一根口線驅(qū)動(dòng)蜂鳴器發(fā)聲。蜂鳴器電路4.顯示模塊電路顯示模塊可采用兩種方式,一種是采用動(dòng)態(tài)顯示方式驅(qū)動(dòng)6個(gè)數(shù)碼管工作,左邊四位顯示溫濕度值,精確到小數(shù)點(diǎn)后一位,右邊兩位為溫濕度的單位顯示。其中通過S4鍵切換溫濕度,數(shù)碼管通過位段掃描實(shí)現(xiàn)顯示功能。5.定時(shí)模塊定時(shí)模塊其中分為定時(shí)部分和調(diào)時(shí)部分,同樣通過S1和S2鍵來控制時(shí)間的減和加,S3鍵來確定定時(shí)和切換設(shè)置時(shí)間。溫濕度程序代碼與定時(shí)

15、類似,下面僅列出定時(shí)程序代碼。定時(shí)程序代碼:void time_display(int a,int b,int c) /調(diào)試部分、P2為位選,P0為段選,顯示格式為 時(shí)-分-秒uchar s,g; s=a/10; g=a%10; clk=0; P2=wei5; P0=duans; clk=1; delay2(1); clk=0; P2=0; clk=1; delay2(1); clk=0; P2=wei4; P0=duang|0x80; clk=1; delay2(1); clk=0; P2=0; clk=1; delay2(1); s=b/10; g=b%10; clk=0; P2=wei3

16、; P0=duans; clk=1; delay2(1); clk=0; P2=0; clk=1; delay2(1); clk=0; P2=wei2; P0=duang|0x80; clk=1; delay2(1); clk=0; P2=0; clk=1; delay2(1); s=c/10; g=c%10; clk=0; P2=wei1; P0=duans; clk=1; delay2(1); clk=0; P2=0; clk=1; delay2(1); clk=0; P2=wei0; P0=duang; clk=1; delay2(1); clk=0; P2=0; clk=1; dela

17、y2(1);6.溫濕度采集電路設(shè)計(jì)AM2301是一塊集成了溫濕度采集及數(shù)字輸出的傳感器,因此,我們只需要將AM2301的VCC端接5V電壓,將SDA端接52單片機(jī)I/O進(jìn)行數(shù)據(jù)的輸入輸出,同時(shí)將GND端接地,便可實(shí)現(xiàn)溫濕度的采集。溫濕度采集電路設(shè)計(jì)7.硬件的抗干擾設(shè)計(jì)在自動(dòng)澆灌控制系統(tǒng)中,系統(tǒng)可靠性的保證是非常重要的,單片機(jī)硬件系統(tǒng)的可靠性決定了整個(gè)系統(tǒng)的可靠性。硬件抗干擾技術(shù)主要體現(xiàn)在過程通道抗干擾設(shè)計(jì)、供電系統(tǒng)抗干擾設(shè)計(jì)和印刷電路板抗干擾設(shè)計(jì)三個(gè)方面。單片機(jī)硬件系統(tǒng)的抗干擾能力與元器件質(zhì)量、裝配質(zhì)量等因素都有關(guān)系,但主要取決于設(shè)計(jì)的可制造性(DEM),本系統(tǒng)采取如下相應(yīng)的抗干擾措施。1.采

18、用抗干擾穩(wěn)壓電源采用具有抗干擾能力的穩(wěn)壓電源,絕大部分干擾都可以克服。提高穩(wěn)壓電源抗干擾能力,通常采用的措施:采用電源濾波;通過低通濾波器接入電網(wǎng)。 2.采用良好的接地系統(tǒng)。3.強(qiáng)電與弱電之間采用繼電器隔離。四. 關(guān)鍵模塊的分析1.地表溫濕度傳感器首先是對(duì)AM2301的介紹。AM2301 濕敏電容數(shù)字溫濕度模塊是一款含有己校準(zhǔn)數(shù)字信號(hào)輸出的溫濕度復(fù)合傳感器。它應(yīng)用專用的數(shù)字模塊采集技術(shù)和溫濕度傳感技術(shù),確保產(chǎn)品具有極高的可靠性與卓越的長(zhǎng)期穩(wěn)定性。傳感器包括一個(gè)電容式感濕元件和一個(gè)高精度測(cè)溫元件,并與一個(gè)高性能8 位單片機(jī)相連接。因此該產(chǎn)品具有品質(zhì)卓越、超快響應(yīng)、抗干擾能力強(qiáng)、性價(jià)比極高等優(yōu)點(diǎn)。

19、每個(gè)傳感器都在極為精確的濕度校驗(yàn)室中進(jìn)行校準(zhǔn)。校準(zhǔn)系數(shù)以程序的形式儲(chǔ)存在單片機(jī)中,傳感器內(nèi)部在檢測(cè)信號(hào)的處理過程中要調(diào)用這 些校準(zhǔn)系數(shù)。標(biāo)準(zhǔn)單總線接口,使系統(tǒng)集成變得簡(jiǎn)易快捷。超小的體積、極低的功耗,信號(hào)傳輸距離可達(dá)20 米以上,使其成為各類應(yīng)用甚至最為苛刻的應(yīng)用場(chǎng)合的最佳選擇。產(chǎn)品為3 引線(單總線接口)連接方便。特殊封裝形式可根據(jù)用戶需求而提供。AM2301引腳圖及其分配引腳顏色名稱描述1紅色VDD電源(3.5-5.5v)2黃色SDA串行數(shù)據(jù),雙向3黑色GND地4NC空腳AM2301引腳分配AM2301 的數(shù)據(jù)總線SDA 輸出40 位數(shù)據(jù)后,繼續(xù)輸出低電平50 微秒后轉(zhuǎn)為輸入狀態(tài),由于上拉

20、電阻隨之變?yōu)楦唠娖健M瑫r(shí)AM2301 內(nèi)部重測(cè)環(huán)境溫濕度數(shù)據(jù),并記錄數(shù)據(jù),測(cè)試記錄結(jié)束,單片機(jī)自動(dòng)進(jìn)入休眠狀態(tài)。單片機(jī)只有收到主機(jī)的起始信號(hào)后,才重新喚醒傳感器,進(jìn)入工作狀態(tài)。AM2301 傳感器讀單總線的流程圖如圖所示AM2301傳感器讀單總線的流程圖溫濕度檢測(cè)程序代碼:#include <reg52.h>#include <intrins.h>/typedef unsigned char U8; /* defined for unsigned 8-bits integer variable 無符號(hào)8位整型變量 */typedef unsigned int U16;

21、/* defined for unsigned 16-bits integer variable 無符號(hào)16位整型變量 */#define uchar unsigned char#define uint unsigned int/-/-IO口定義區(qū)-/-/sbit beep=P32;sbit s0=P33;sbit s1=P34;sbit s2=P35;sbit s3=P36;sbit HR=P37 ;sbit clk=P27;/-/-定義區(qū)-/-/U8 U8FLAG,q,w,e;U8 U8temp;U8 U8T_data_H,U8T_data_L,U8RH_data_H,U8RH_data_

22、L,U8checkdata;U8 U8T_data_H_temp,U8T_data_L_temp,U8RH_data_H_temp,U8RH_data_L_temp,U8checkdata_temp;U8 data tab6,tabs6;U8 U8comdata;U8 outdata6; /定義發(fā)送的字節(jié)數(shù)U8 count;U8 str6;U16 U16temp1,U16temp2;uchar shi,fen,miao,nam;uchar code wei=0x01,0x02,0x04,0x08,0x10,0x20;/八位位選碼表uchar code duan=0x3f,0x06,0x5b,0

23、x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;/數(shù)碼管顯示編碼(1-F)void SendData(U8 *a)outdata0 = a0; outdata1 = a1; outdata2 = a2; outdata3 = a3; outdata4 = a4; outdata5 = a5; count = 1; SBUF=outdata0;void delay1(U16 t)U16 i,j; for(i=t;i>0;i-) for(j=25;j>0;j-);void delay2(U8 z)uint i,j; for(i=z;i>0;i-) for(j=

24、110;j>0;j-);void Delay(U16 j)U8 i; for(;j>0;j-) for(i=0;i<27;i+); void Delay_10us(void)U8 i; i-; i-; i-; i-; i-; i-;void COM(void)U8 i; for(i=0;i<8;i+) U8FLAG=2; while(!HR)&&U8FLAG+); Delay_10us(); Delay_10us(); Delay_10us(); U8temp=0; if(HR)U8temp=1; U8FLAG=2; while(HR)&&

25、;U8FLAG+);/超時(shí)則跳出for循環(huán) if(U8FLAG=1)break;/判斷數(shù)據(jù)位是0還是1/ 如果高電平高過預(yù)定0高電平值則數(shù)據(jù)位為 1 U8comdata<<=1; U8comdata|=U8temp; /0 /rof/-/-濕度讀取子程序 -/-/-以下變量均為全局變量-/-溫度高8位= U8T_data_H-/-溫度低8位= U8T_data_L-/-濕度高8位= U8RH_data_H-/-濕度低8位= U8RH_data_L-/-校驗(yàn) 8位 = U8checkdata-/-調(diào)用相關(guān)子程序如下-/- Delay();, Delay_10us();,COM();/

26、-void RH(void)/主機(jī)拉低18ms HR=0; Delay(180); HR=1;/總線由上拉電阻拉高 主機(jī)延時(shí)20us Delay_10us(); Delay_10us(); Delay_10us(); Delay_10us();/主機(jī)設(shè)為輸入 判斷從機(jī)響應(yīng)信號(hào) HR=1;/判斷從機(jī)是否有低電平響應(yīng)信號(hào) 如不響應(yīng)則跳出,響應(yīng)則向下運(yùn)行 if(!HR) /T ! U8FLAG=2;/判斷從機(jī)是否發(fā)出 80us 的低電平響應(yīng)信號(hào)是否結(jié)束 while(!HR)&&U8FLAG+); U8FLAG=2;/判斷從機(jī)是否發(fā)出 80us 的高電平,如發(fā)出則進(jìn)入數(shù)據(jù)接收狀態(tài) wh

27、ile(HR)&&U8FLAG+);/數(shù)據(jù)接收狀態(tài) COM(); U8RH_data_H_temp=U8comdata; COM(); U8RH_data_L_temp=U8comdata; COM(); U8T_data_H_temp=U8comdata; COM(); U8T_data_L_temp=U8comdata; COM(); U8checkdata_temp=U8comdata; HR=1;/數(shù)據(jù)校驗(yàn)U8temp=(U8T_data_H_temp+U8T_data_L_temp+U8RH_data_H_temp+U8RH_data_L_temp); if(U8te

28、mp=U8checkdata_temp) U8RH_data_H=U8RH_data_H_temp; U8RH_data_L=U8RH_data_L_temp; U16temp1 =U8RH_data_H; U16temp1 <<= 8; U16temp1 |= U8RH_data_L;/獲得完整的濕度 tab0=U16temp1/100; /濕度百位 tab1=U16temp1%100/10;/濕度十位 tab2=U16temp1%10; /濕度個(gè)位 U8T_data_H=U8T_data_H_temp; U8T_data_L=U8T_data_L_temp; U16temp2

29、= U8T_data_H; U16temp2<<=8; U16temp2 |= U8T_data_L;/獲得完整的溫度 tab3=U16temp2/100;/溫度百位 tab4=U16temp2%100/10;/溫度十位 tab5=U16temp2%10;/溫度個(gè)位 U8checkdata=U8checkdata_temp;/校驗(yàn)位 2.主控制器模塊系統(tǒng)中我們選擇主控制器芯片的時(shí)候需要考慮整個(gè)系統(tǒng)的功耗要低,并且有非易失性的程序和數(shù)據(jù)存儲(chǔ)器方便數(shù)據(jù)的掉電存儲(chǔ),要集成內(nèi)部基準(zhǔn)電壓源并采用at89s51單片機(jī)。AT89S52是一個(gè)低功耗,高性能CMOS 8位單片機(jī),片內(nèi)含8k Byte

30、s ISP(In-system programmable)的可反復(fù)擦寫1000次的Flash只讀程序存儲(chǔ)器,器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)制造,兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng)及80C51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和ISP Flash存儲(chǔ)單元,AT89S52在眾多嵌入式控制應(yīng)用系統(tǒng)中得到廣泛應(yīng)用。主機(jī)和傳感器之間可通過三個(gè)步驟完成數(shù)據(jù)讀取步驟一 : AM2301 上電后(AM2301 上電后要等待2S 以越過不穩(wěn)定狀態(tài),在此期間讀取設(shè)備不能發(fā)送任何指令),測(cè)試環(huán)境溫濕度數(shù)據(jù),并記錄數(shù)據(jù),此后傳感器自動(dòng)轉(zhuǎn)入休眠狀態(tài)。AM2301 的SDA 數(shù)據(jù)線由上拉電阻拉高一直保持

31、高電平,此時(shí) AM2301 的 SDA 引腳處于輸入狀態(tài),時(shí)刻檢測(cè)外部信號(hào)。 步驟二: 微處理器的I/O 設(shè)置為輸出,同時(shí)輸出低電平,且低電平保持時(shí)間不能小于800us ,典型值是拉低1MS,然后微處理器的I/O 設(shè)置為輸入狀態(tài),釋放總線,由于上拉電阻,微處理器的I/O 即AM2301的SDA 數(shù)據(jù)線也隨之變高,等主機(jī)釋放總線后,AM2301 發(fā)送響應(yīng)信號(hào),即輸出80 微秒的低電平作為應(yīng)答信號(hào),緊接著輸出80 微秒的高電平通知外設(shè)準(zhǔn)備接收數(shù)據(jù)。步驟三: AM2301 發(fā)送完響應(yīng)后,隨后由數(shù)據(jù)總線SDA 連續(xù)串行輸出40 位數(shù)據(jù),微處理器根據(jù)I/O 電平 的變化接收40 位數(shù)據(jù)。 位數(shù)據(jù)“0”的格式為: 50 微秒的低電平加26-28 微秒的高電平; 位數(shù)據(jù)“1”的格式為: 50 微秒的低電平加70 微秒的高電平。主程序程序代碼:void main()init(); SendData(str) ; /發(fā)送到串口 Delay(1)

溫馨提示

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

評(píng)論

0/150

提交評(píng)論