基于單片機(jī)的節(jié)水灌溉控制系統(tǒng)_第1頁
基于單片機(jī)的節(jié)水灌溉控制系統(tǒng)_第2頁
基于單片機(jī)的節(jié)水灌溉控制系統(tǒng)_第3頁
基于單片機(jī)的節(jié)水灌溉控制系統(tǒng)_第4頁
基于單片機(jī)的節(jié)水灌溉控制系統(tǒng)_第5頁
已閱讀5頁,還剩20頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、 基于單片機(jī)的節(jié)水灌溉控制系統(tǒng) 學(xué)號(hào): XXX 姓名: CCC 日期:2014-12-18基于單片機(jī)的節(jié)水灌溉控制系統(tǒng)摘 要節(jié)水灌溉智能控制技術(shù)的高低代表著農(nóng)業(yè)現(xiàn)代化的發(fā)展?fàn)顩r,灌溉系統(tǒng)智能化水平較低是制約我國(guó)高效農(nóng)業(yè)發(fā)展的主要原因。本文就此問題研究了單片機(jī)控制的節(jié)水灌溉系統(tǒng),該系統(tǒng)對(duì)土壤的濕度進(jìn)行監(jiān)控,并按照作物對(duì)土壤濕度的要求進(jìn)行適時(shí)、適量灌水,其核心是單片機(jī)和PC機(jī)構(gòu)成的控制部分,主要對(duì)土壤濕度與灌水量之間的關(guān)系、灌溉控制技術(shù)及設(shè)各系統(tǒng)的硬件、軟件編程各個(gè)部分進(jìn)行了深入的研究。單片機(jī)控制部分采用選用AT89C51單片機(jī)為核心,主要由土壤濕度傳感器,AD轉(zhuǎn)換器,顯示電路,輸出控制電路,故障

2、報(bào)警電路等組成;軟件選用匯編語言編程。系統(tǒng)主要具有以下功能:?jiǎn)纹瑱C(jī)可根據(jù)土壤濕度傳感器檢測(cè)到的土壤濕度,自動(dòng)啟動(dòng)灌溉系統(tǒng)。本文就土壤濕度與灌水量之間的關(guān)系進(jìn)行了實(shí)驗(yàn)研究,對(duì)單片機(jī)控制系統(tǒng)做了大量的調(diào)試實(shí)驗(yàn),并檢測(cè)通過,系統(tǒng)運(yùn)行良好。該系統(tǒng)靈活性強(qiáng),易于操作,可靠性高,將會(huì)有更廣闊的開發(fā)前景。關(guān)鍵詞: 節(jié)水灌溉,智能控制器,濕度傳感器,串行通信,單片機(jī) 目 錄第1章 緒論11.1研究的背景和意義1節(jié)水灌溉系統(tǒng)的研究背景1第2章 系統(tǒng)總體設(shè)計(jì)22.1系統(tǒng)硬件介紹2土壤濕度傳感器22.1.2 AT89C51單片機(jī)32.2 系統(tǒng)總體設(shè)計(jì)5第3章 系統(tǒng)硬件電路設(shè)計(jì)63.1單片機(jī)控制原理63.2單片機(jī)主機(jī)

3、控制電路6時(shí)鐘電路6復(fù)位電路6數(shù)據(jù)存儲(chǔ)器的擴(kuò)展電路73.3數(shù)據(jù)采集處理電路73.4 LED顯示電路8第4章 系統(tǒng)軟件設(shè)計(jì)114.1系統(tǒng)主程序設(shè)計(jì)114.2采樣子程序設(shè)計(jì)124.3數(shù)據(jù)處理13數(shù)字濾波技術(shù)13尺度變換144.3.3 BCD轉(zhuǎn)換16第5章 結(jié)論19參考文獻(xiàn)20 第1章 緒論1.1研究的背景和意義節(jié)水灌溉系統(tǒng)的研究背景水資源是人類賴以生存的基礎(chǔ)性資源,我國(guó)一方面水資源十分緊缺。雖然水資源的總量居世界第6位,但人均占有量只有2500m³,約為世界人均水量的1/4,屬于全球貧水國(guó)家之一。另外一方面農(nóng)業(yè)用水浪費(fèi)又十分嚴(yán)重,就全國(guó)范圍而言,水資源的利用率僅為45%,而水資源利用率高

4、的國(guó)家已達(dá)70%80%,由于農(nóng)業(yè)灌溉用水的利用率低下,因此,提高節(jié)水灌溉的利用率,對(duì)于解決我國(guó)農(nóng)業(yè)灌溉用水,緩解水資源的緊缺非常重要。我國(guó)的節(jié)水灌溉技術(shù),在經(jīng)過近幾十年的快速發(fā)展,在總結(jié)相關(guān)成果的基礎(chǔ)上,初步形成了其技術(shù)體系,在某些方面已經(jīng)達(dá)到或接近國(guó)際先進(jìn)水平。但由于受我國(guó)經(jīng)濟(jì)發(fā)展水平及科研體制的限制,我國(guó)的節(jié)水灌溉技術(shù)與發(fā)達(dá)國(guó)家還有很大的差距。隨著我國(guó)水資源供需矛盾日益尖銳,農(nóng)業(yè)用水分配額減少的問題勢(shì)必日益突出,同時(shí)為了緩解我國(guó)水資源短缺對(duì)我國(guó)農(nóng)業(yè)發(fā)展的壓力,如何快速發(fā)展我國(guó)的節(jié)水灌溉技術(shù)及其配套設(shè)備,從而緩解我國(guó)農(nóng)業(yè)用水壓力已經(jīng)成為一個(gè)不容忽視的嚴(yán)峻問題。在灌溉系統(tǒng)中,合理地推廣智能化控

5、制,不僅可以提高水資源的利用率,緩解水資源日趨緊張矛盾,還可以提高農(nóng)作物的產(chǎn)量,降低農(nóng)產(chǎn)品的生產(chǎn)成本,為我國(guó)農(nóng)業(yè)的發(fā)展提供技術(shù)保障是十分必要的。節(jié)水灌溉系統(tǒng)的研究意義當(dāng)前我國(guó)包括灌溉水和降水在內(nèi)的農(nóng)田利用效率也很低,單方水生產(chǎn)糧食的能力約為0.84kg。而以色列已達(dá)2.32kg,一些發(fā)達(dá)國(guó)家大體都在2kg以上,差距很大。為了提高灌溉水的利用率,使單方水生產(chǎn)糧食的能力得到提高,為保證21世紀(jì)中國(guó)16億人口的糧食安全,靠傳統(tǒng)的灌水方式是難以達(dá)到期望的,必須從高新技術(shù)入手,在管理上下功夫,從過去那種“澆地”轉(zhuǎn)變?yōu)椤皾仓参铩钡乃枷胗^念。做到作物需要多少水,灌溉系統(tǒng)就能及時(shí)而準(zhǔn)確地提供多少水。要實(shí)現(xiàn)這一

6、目標(biāo),只有發(fā)展先進(jìn)的灌溉系統(tǒng),是灌溉過程達(dá)到自動(dòng)控制才有可能。因此實(shí)現(xiàn)灌溉系統(tǒng)的智能控制,對(duì)節(jié)水、提高灌溉水的利用率以及對(duì)我國(guó)的糧食安全將起到極為重要的作用,具有重要的實(shí)現(xiàn)意義。第2章 系統(tǒng)總體設(shè)計(jì)2.1系統(tǒng)硬件介紹土壤濕度傳感器又名:土壤水分傳感器、土壤墑情傳感器主要用來測(cè)量土壤容積含水量,做土壤墑情監(jiān)測(cè)及農(nóng)業(yè)灌溉和林業(yè)防護(hù) 目前常用到的土壤濕度傳感器有FDR型和TDR型 FDR(Frequency Domain Reflectometry)頻域反射儀是一種用于測(cè)量土壤水分的儀器,它利用電磁脈沖原理、根據(jù)電磁波在介質(zhì)中傳播頻率來測(cè)量土壤的表觀介電常數(shù)(),從而得到土壤容積含水量(v),F(xiàn)DR

7、具有簡(jiǎn)便安全、快速準(zhǔn)確、定點(diǎn)連續(xù)、自動(dòng)化、寬量程、少標(biāo)定等優(yōu)點(diǎn)。是一種值得推薦的土壤水分測(cè)定儀器。 FDR型的技術(shù)參數(shù)、應(yīng)用及特點(diǎn) 技術(shù)參數(shù)測(cè)量參數(shù):土壤容積含水率 單 位:%( m3/m3) 量 程:0100% 探針長(zhǎng)度:5.3cm 探針直徑:3mm 探針材料:不銹鋼 密封材料:環(huán)氧樹脂 測(cè)量精度:±3% 工作溫度范圍:-4085 工作電壓:512V 工作電流:2126mA,典型值21mA 測(cè)量主頻:100Mhz 輸出信號(hào):01.875V DC 測(cè)量穩(wěn)定時(shí)間:2秒 響應(yīng)時(shí)間:1秒 測(cè)量區(qū)域:以中央探針為中心,圍繞中央探針的直徑為7cm、高為7cm的圓柱體 功能及特點(diǎn):本傳感器體積小

8、巧化設(shè)計(jì),攜帶方便,安裝、操作及維護(hù)簡(jiǎn)單。 結(jié)構(gòu)設(shè)計(jì)合理,不繡鋼探針保證使用壽命。 外部以環(huán)氧樹脂純膠體封裝,密封性好,可直接埋入土壤中使用,且不受腐蝕。 土質(zhì)影響較小,應(yīng)用地區(qū)廣泛。 測(cè)量精度高,性能可靠,確保正常工作。 響應(yīng)速度快,數(shù)據(jù)傳輸效率高。 廣泛應(yīng)用于節(jié)水農(nóng)業(yè)灌溉、溫室大棚、花卉蔬菜、草地牧場(chǎng)、土壤速測(cè)、植物培養(yǎng)、科學(xué)試驗(yàn)等場(chǎng)領(lǐng)域。2.1.2 AT89C51單片機(jī)AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低電壓、高性能CMOS8位微處理器,俗稱單片機(jī)。單片

9、機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除100次。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的89C51是一種高效微控制器,89C2051是它的一種精簡(jiǎn)版本。89C單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。·與MCS-51 兼容 ·4K字節(jié)可編程閃爍存儲(chǔ)器 壽命:1000寫/擦循環(huán) ·全靜態(tài)工作:0Hz-24MHz ·三級(jí)程序存儲(chǔ)器鎖定 ·128*8位內(nèi)部RAM ·32可編程I/O線 ·兩個(gè)16位定

10、時(shí)器/計(jì)數(shù)器 ·5個(gè)中斷源 ·可編程串行通道 ·低功耗的閑置和掉電模式 ·片內(nèi)振蕩器和時(shí)鐘電路 管腳說明VCC:供電電壓。 GND:接地。 P0口:P0口為一個(gè)8位漏級(jí)開路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P1口的管腳第一次寫1時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)。地址的低八位。在FIASH編程時(shí),P0 口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部必須被拉高。 P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高

11、,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收。 P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門電流,當(dāng)P2口被寫“1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫時(shí),P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗(yàn)時(shí)接收高

12、八位地址信號(hào)和控制信號(hào)。 P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。 P3口也可作為AT89C51的一些特殊功能口,如下表所示: P3.0 RXD(串行輸入口) P3.1 TXD(串行輸出口) P3.2 /INT0(外部中斷0) P3.3 /INT1(外部中斷1) P3.4 T0(記時(shí)器0外部輸入) P3.5 T1(記時(shí)器1外部輸入) P3.6 /WR(外部數(shù)據(jù)存儲(chǔ)器寫選通) P3.7 /RD(外部數(shù)據(jù)存儲(chǔ)器讀選通) P

13、3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。 RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。 ALE/PROG:當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí), ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行

14、狀態(tài)ALE禁止,置位無效。 /PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。 /EA/VPP:當(dāng)/EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H-FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。 XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。 XTAL2:來自反向振蕩器的輸出。2.2 系統(tǒng)總體設(shè)計(jì)(1)該系統(tǒng)是一種高效

15、率、低成本的灌溉優(yōu)化控制系統(tǒng)。系統(tǒng)布線簡(jiǎn)單易行,而且系統(tǒng)性能穩(wěn)定、工作可靠、經(jīng)濟(jì)實(shí)用。(2)硬件電路以AT89C51單片機(jī)為核心,系統(tǒng)輸入由采集土壤濕度傳感器、及傳感器信號(hào)處理電路組成,輸出控制由繼電器、執(zhí)行器構(gòu)成。(3)軟件用C語言作為編程語言,采用模塊式結(jié)構(gòu)設(shè)計(jì)。 第3章 系統(tǒng)硬件電路設(shè)計(jì)3.1單片機(jī)控制原理顯示部分濕度傳感器89C51單片機(jī) 輸入部分農(nóng)作物噴霧系統(tǒng)系統(tǒng)時(shí)間輸入部分驅(qū)動(dòng)控制電路圖3.1控制系統(tǒng)邏輯原理框圖3.2單片機(jī)主機(jī)控制電路時(shí)鐘電路單片機(jī)的時(shí)鐘信號(hào)用來提供單片機(jī)片內(nèi)各種微操作的時(shí)間基準(zhǔn),時(shí)鐘信號(hào)通常用兩種電路形式得到:內(nèi)部振蕩和外部振蕩。MCS-51單片機(jī)內(nèi)部有一個(gè)用于

16、構(gòu)成振蕩器的高增益反向放大器,引腳XTALl和XTAL2分別是此放大電器的輸入端和輸出端,由于采用內(nèi)部方式時(shí),電路簡(jiǎn)單,所得的時(shí)鐘信號(hào)比較穩(wěn)定,實(shí)際使用中常采用這種方式,如圖3所示在其外接晶體振蕩器(簡(jiǎn)稱晶振)或陶瓷諧振器就構(gòu)成了內(nèi)部振蕩方式,片內(nèi)高增益反向放大器與作為反饋元件的片外石英晶體或陶瓷諧振器一起可構(gòu)成一個(gè)自激振蕩器并產(chǎn)生振蕩時(shí)鐘脈沖。圖3中外接晶體以及電容C2和C1構(gòu)成并聯(lián)諧振電路,它們起穩(wěn)定振蕩頻率、快速起振的作用,其值均為30P左右,晶振頻率選6MHz。復(fù)位電路為了初始化單片機(jī)內(nèi)部的某些特殊功能寄存器,必須采用復(fù)位的方式,復(fù)位后可使CPU及系統(tǒng)各部件處于確定的初始狀態(tài),并從初始

17、狀態(tài)開始正常工作。單片機(jī)的復(fù)位是靠外電路來實(shí)現(xiàn)的,在正常運(yùn)行情況下,只要RST引腳上出現(xiàn)兩個(gè)機(jī)器周期時(shí)間以上的高電平,即可引起系統(tǒng)復(fù)位,但如果RST引腳上持續(xù)為高電平,單片機(jī)就處于循環(huán)復(fù)位狀態(tài)。復(fù)位后系統(tǒng)將輸入/輸出(1/0)端口寄存器置為FFH,堆棧指針SP置為07H, SBUF內(nèi)置為不定值,其余的寄存器全部清0,內(nèi)部RAM的狀態(tài)不受復(fù)位的影響,在系統(tǒng)上電時(shí)RAM的內(nèi)容是不定的。復(fù)位操作有兩種情況,即上電復(fù)位和手動(dòng)(開關(guān))復(fù)位。本系統(tǒng)采用上電復(fù)位方式。數(shù)據(jù)存儲(chǔ)器的擴(kuò)展電路AT89C51單片機(jī)外接數(shù)據(jù)RAM時(shí),P2口輸出存儲(chǔ)器地址的高8位,PO口分時(shí)輸出地址的低8位和傳送指令字節(jié)或數(shù)據(jù)。PO口

18、先輸出低8位地址信號(hào),在ALE有效時(shí)將它鎖存到外部地址鎖存器中,然后PO口作為數(shù)據(jù)總線使用,此處地址鎖存器選用74LS373,實(shí)際電路圖連接如圖3.2所示。圖3.2數(shù)據(jù)存儲(chǔ)器的擴(kuò)展電路。3.3數(shù)據(jù)采集處理電路ADC0809是一種8位逐次逼近式A/D轉(zhuǎn)換器,內(nèi)部具有鎖存控制的8路模擬開關(guān),外接8路模擬輸入端,可同時(shí)對(duì)8路0-5V的輸入模擬電壓信號(hào)分時(shí)進(jìn)行采集轉(zhuǎn)換,本系統(tǒng)只用到INO和INl兩路輸入通道。ADC0809轉(zhuǎn)換器的分辨率為8位,最大不可調(diào)誤差小于士1LSB,采用單一+5V供電,功耗為15mW,不必進(jìn)行零點(diǎn)和滿度調(diào)整。由于ADC0809轉(zhuǎn)換器的輸出數(shù)據(jù)寄存器具有可控的三態(tài)輸出功能,輸出具

19、有TTL三態(tài)鎖存緩沖器,故其8位數(shù)據(jù)輸出引腳可直接與數(shù)據(jù)總線相連。A/D轉(zhuǎn)換器需外部控制啟動(dòng)轉(zhuǎn)換信號(hào)方能進(jìn)行轉(zhuǎn)換,這一啟動(dòng)轉(zhuǎn)換信號(hào)可由CPU提供,不同型號(hào)的A/D轉(zhuǎn)換器,對(duì)啟動(dòng)轉(zhuǎn)換信號(hào)的要求也不同,分脈沖啟動(dòng)和電平啟動(dòng)兩種,ADC0809采用脈沖啟動(dòng)轉(zhuǎn)換,只需給A/D轉(zhuǎn)換器的啟動(dòng)控制轉(zhuǎn)換的輸入引腳(START)上,加入正脈沖信號(hào),即啟動(dòng)A/D轉(zhuǎn)換器進(jìn)行轉(zhuǎn)換,轉(zhuǎn)換開始后,轉(zhuǎn)換結(jié)束信號(hào)輸出端(EOC)信號(hào)變低,轉(zhuǎn)換結(jié)束時(shí),EOC返回高電平,以通知主機(jī)讀取轉(zhuǎn)換結(jié)果的數(shù)字量,這個(gè)信號(hào)可以作為A/D轉(zhuǎn)換器的狀態(tài)信號(hào)供查詢,也可以用作中斷請(qǐng)求信號(hào)。圖3.3數(shù)據(jù)采集處理電路本系統(tǒng)中ADC0809與AT89C

20、51單片機(jī)的接口如圖5所示,采用等待延時(shí)方式。ADC0809的時(shí)鐘頻率范圍要求在101280kHz,AT89C51單片機(jī)的ALE腳的頻率是單片機(jī)時(shí)鐘頻率的1/6,因此當(dāng)單片機(jī)的時(shí)鐘頻率采用6MHz,ADC0809輸入時(shí)鐘頻率即為CLK=1MHz,發(fā)生啟動(dòng)脈沖后需要延時(shí)100us才可以讀取A/D轉(zhuǎn)換數(shù)據(jù)。如圖5連接方式,ADC0809的8位數(shù)據(jù)輸出引腳可直接與數(shù)據(jù)總線相連,地址譯碼引腳A, B, C分別與74LS373的A, B, C相連,以選通INO- IN7中的一個(gè)通道。AT89C51的p 2.6作為片選信號(hào),在啟動(dòng)AM轉(zhuǎn)換時(shí),由單片機(jī)的寫信號(hào)WR和p2.??刂艫DC的地址鎖存和轉(zhuǎn)換啟動(dòng)。由

21、于ALE與START連在一起,因此ADC0809在鎖存通道地址的同時(shí)也啟動(dòng)轉(zhuǎn)換,在讀取轉(zhuǎn)換結(jié)果時(shí),用單片機(jī)的讀信號(hào)RD和p2.。引腳一級(jí)或非門產(chǎn)生的正脈沖作為OE信號(hào),用以打開三態(tài)輸出鎖存器。3.4 LED顯示電路微機(jī)化測(cè)控系統(tǒng)中常用的測(cè)量數(shù)據(jù)的顯示器有發(fā)光二極管顯示器(簡(jiǎn)稱LED或數(shù)碼管)和液晶顯示器(簡(jiǎn)稱LCD)。這兩種顯示器都具有線路簡(jiǎn)單、耗電少、成本低、壽命長(zhǎng)等優(yōu)點(diǎn),本系統(tǒng)輸出結(jié)果選用4個(gè)LED顯示。數(shù)碼管有共陰共陽之分,本系統(tǒng)采用8段共陰型LED,其原理圖如圖6所示,每位數(shù)碼管內(nèi)部有8個(gè)發(fā)光二極管,公共端由8個(gè)發(fā)光二極管的陰極并接而成,正常顯示時(shí)公共端接低電平(GND),各發(fā)光二極管

22、是否點(diǎn)亮取決于a-dp各引腳上是否是高電平。LED數(shù)碼管的外形結(jié)構(gòu)如圖6,外部有10個(gè)引腳,其中3, 8腳為公共端也稱位選端,其余8個(gè)引腳稱為段選端,當(dāng)要使某一位數(shù)碼管顯示某一數(shù)字(0-9中的一個(gè))必須在這個(gè)數(shù)碼管的段選端加上與數(shù)字顯示數(shù)字對(duì)應(yīng)的8位段選碼(也稱字形碼),在位選端加上低電平即可。由于系統(tǒng)要顯示的內(nèi)容比較簡(jiǎn)單,顯示量不多,所以選用數(shù)碼管既方便又經(jīng)濟(jì)。LED有共陰極和共陽極兩種。如圖6所示。二極管的陰極連接在一起,通常此公共陰極接地,而共陽極則將發(fā)光二極管的陽極連接在一起,接入+5V的電壓。一位顯示器由8個(gè)發(fā)光二極管組成,其中7個(gè)發(fā)光二極管構(gòu)成字型“8”的各個(gè)筆劃(段)ag,另一個(gè)

23、小數(shù)點(diǎn)為dp發(fā)光二極管。當(dāng)在某段發(fā)光二極管施加一定的正向電壓時(shí),該段筆劃即亮;不加電壓則暗。為了保護(hù)各段LED不被損壞,需外加限流電阻。 圖3.4 圖3.4LED數(shù)碼管結(jié)構(gòu)圖數(shù)碼管顯示器有兩種工作方式,即靜態(tài)顯示方式和動(dòng)態(tài)掃描顯示方式。為節(jié)省端口及降低功耗,本系統(tǒng)采用動(dòng)態(tài)掃描顯示方式。動(dòng)態(tài)掃描顯示方式需要解決多位LED數(shù)碼管的“段控”和“位控”問題,本電路的通過P1口實(shí)現(xiàn):而每一位的公共端,即LED數(shù)碼管的“位控”,則由P3口控制。這種連接方式由于多位字段線連在一起,因此,要想顯示不同的內(nèi)容,必然要采取輪流顯示的方式,即在某一瞬間,只讓其中的某一位的字位線處于選通狀態(tài),其它各位的字位線處于斷開

24、狀態(tài),同時(shí)字段線上輸出這一位相應(yīng)要顯示字符的字段碼。在這一瞬時(shí),只有這一位在顯示,其他幾位則暗。在本系統(tǒng)中,字位線的選通與否是通過PNP三極管的導(dǎo)通與截止來控制,即三極管處于“開頭”狀態(tài)。因AT89C51單片機(jī)I/O口資源有限,必須對(duì)其Il0口進(jìn)行擴(kuò)展才能滿足實(shí)現(xiàn)系統(tǒng)功能,如圖7所示為用8155擴(kuò)展1/0口的4個(gè)8位LED動(dòng)態(tài)顯示器,顯示掃描由程控實(shí)現(xiàn),其中PA口輸出字型碼,PC口輸出位選信號(hào)即掃描信號(hào),圖中片選線CE和AT89C51的P2.7口相連,IO/ M選通輸入線與P2.4口相連,該系統(tǒng)中當(dāng)P2.7=0且P2.4 =1時(shí),選中8155芯片內(nèi)三個(gè)I/O口。相應(yīng)的端口地址分配如表3-1:表

25、3-1名稱命令PA口PB口PC口端口地址7FF8H7FF9H7FFAH7FFBH第4章 系統(tǒng)軟件設(shè)計(jì)4.1系統(tǒng)主程序設(shè)計(jì)系統(tǒng)軟件系統(tǒng)軟件程序設(shè)計(jì)主要包括:主程序設(shè)計(jì),采樣子程序設(shè)計(jì),數(shù)據(jù)處理程序,顯示子程序,串口通信程序等。各芯片地址編碼為:RAM6116: OFOOOH-OF7FFH 81551/0口:7FF8H - 7FFDHADC0809: OBFF8H-OBFFFHADTURNO EQU 21H ;INO通道A/D轉(zhuǎn)換數(shù)據(jù)存放首址ADTURN1 EQU 2CH ;IN1通道A/D轉(zhuǎn)換數(shù)據(jù)存放首址LINEADRO EQU 37H ;1N0采集數(shù)據(jù)經(jīng)濾波處理數(shù)據(jù)存放地址LINEADR1 E

26、QU 38H ;INl采集數(shù)據(jù)經(jīng)濾波處理數(shù)據(jù)存放地址 LINEADR EQU 39H ;平均值存放地址 HUMID EQU 3BH ;標(biāo)度變換后的濕度值存放地址 BCDADR EQU 3CH ;BCD轉(zhuǎn)換后的濕度值存放地址 HUMADR EQU 3DH ;上位機(jī)傳來的濕度值存放地址 TIMEADR EQU 3EH ;上位機(jī)傳來的時(shí)間值存放地址 T100US EQU 256-50 ;延時(shí)參 Cl00US EQU 3FH SHOWADR EQU 40H ;顯示區(qū)數(shù)據(jù)存放首址 ORG OOOOH SJMP START ORG OOOBH ;定時(shí)器0中斷服務(wù)程序入口 LIMP TOINT ORG 00

27、23H ;串行I/O中斷服務(wù)程序入口 LIMP SERVE ORG 0050HSTART: MOV SP, #50H ;設(shè)置堆棧 MOV HUMADR, #OFFH SETB OD3H ;選中寄存器3 SETS OD4H MOV R0, #HUMADR CLR OD3H ;選中寄存器0 CLR OD4HMOV TMOD, #22H ;主程序初始化MOV TH1, #OF3HMOV TLl, #OF3HMOV SCON, #50HMOV PCON, #80HMOV DPTR, #7FF8HMOV A, #4DHMOVX DPTR, ASETB TR1SETB EASETB ESRUN: LCAL

28、L AD ;調(diào)用A/D轉(zhuǎn)換子程序LCALL MAOPAO ;調(diào)用濾波子程序LCALL TURN ;調(diào)用濕度轉(zhuǎn)換子程序MOV A, HUMID ;將濕度值送往上位機(jī)MOV SBUF, ALCALL TWOSEC ;延時(shí)等待兩妙鐘LCALL BCDTURN ;調(diào)用BCD轉(zhuǎn)換子程序LCALL SHOW ;調(diào)用顯示子程序MOV A, HUMIDCJNE A, HUMADR, COMP ;檢測(cè)到的濕度值大于上位機(jī)送來的濕度值時(shí),則循環(huán)采樣,否則報(bào)警灌溉DONE: CLR P1.1LCALL ALARM ;調(diào)用報(bào)警延時(shí)子程序進(jìn)行灌溉動(dòng)作LCALL TIMEORL P1, #02HLCALL TENMIN

29、;灌水結(jié)束等待10分鐘Limp RUN ;回到主程序COMP:JC DONELJMP RUNEND4.2采樣子程序設(shè)計(jì)根據(jù)電路圖5,因EOC未接入單片機(jī),故只能采用延時(shí)等待的方法來讀取A/D轉(zhuǎn)換結(jié)果,ADC0809的INO和INl兩個(gè)地址分別是OBFF8H, OBFF9H, INO通道采集到的11個(gè)數(shù)據(jù)放入以ADTURNO(片內(nèi)21H)為首址的一片數(shù)據(jù)區(qū)內(nèi),IN1通道采集到的11個(gè)數(shù)據(jù)放入以ADTURN1(片內(nèi)2CH)為首址的另一片數(shù)據(jù)區(qū)內(nèi)。 程序清單:AD: MOV R0, #ADTURNO MOV R6, #OBHADLOOP: MOV DPTR, #OBFF8H; 啟動(dòng)INO通道A/D轉(zhuǎn)

30、換GOON: MOVX DPTR, A MOV R7, #OAOH; 延時(shí)等待轉(zhuǎn)換結(jié)束DLAY: NOP NOP NOP NOP NOP DJNZ R7, DLAY MOVX A, DPTR MOV R0, A; 將轉(zhuǎn)換后的數(shù)據(jù)送入以ADTURNO 為首址的一片RAM內(nèi)INC RODJNZ R6, ADLOOPSJMP ADRET4.3數(shù)據(jù)處理數(shù)字濾波技術(shù)在單片機(jī)進(jìn)行數(shù)據(jù)采集時(shí),輸入信號(hào)總難免受到這樣那樣的隨機(jī)干擾,它們來自被測(cè)信號(hào)源、傳感器、外界干擾等,從而使A/D送入單片機(jī)的數(shù)據(jù)中存在誤差,這種因隨機(jī)千擾而引入的誤差為隨機(jī)誤差,其特點(diǎn)是在相同條件下測(cè)量同一量時(shí),其大小和符號(hào)作無規(guī)則變化而無

31、法預(yù)測(cè),但測(cè)量次數(shù)足夠多時(shí),其總體服從統(tǒng)計(jì)規(guī)律,大多數(shù)隨機(jī)誤差服從正態(tài)分布。為了克服隨機(jī)干擾引起的誤差,硬件上可采用濾波技術(shù);軟件上可按照統(tǒng)計(jì)規(guī)律采用數(shù)字濾波方法來抑制有效信號(hào)中的干擾成分,消除誤差。本系統(tǒng)即采用數(shù)字濾波法。數(shù)字濾波無需硬件,它是用軟件算法來實(shí)現(xiàn)的,只要適當(dāng)改變軟件濾波程序的運(yùn)行參數(shù),就能方便的改變其濾波特性,實(shí)時(shí)性很強(qiáng)。常用的數(shù)字濾波算法有:限幅濾波法、中位值濾波法、算術(shù)平均濾波法、去極值平均濾波法、移動(dòng)平均濾波法、加權(quán)平均濾波法、低通濾波法、復(fù)合濾波法等。中位值濾波法能有效的克服偶然因素引起的波動(dòng)或采樣器不穩(wěn)定引起的誤碼等脈沖干擾,對(duì)變化比較緩慢的被測(cè)參數(shù)采用此法能收到良好

32、的濾波效果。因本系統(tǒng)的被測(cè)參數(shù)土壤濕度為緩慢變化參數(shù),故采用中位值濾波算法。中位值濾波算法實(shí)際上是一種排序方法,其具體思路是:對(duì)被測(cè)參數(shù)連續(xù)采樣N次(一般N為奇數(shù)),然后把N次采樣值按大小排列,取其中間值為本次采樣值。 程序每次對(duì)土壤濕度連續(xù)采樣11次,ADTURNO為片內(nèi)RAM的21H地址單元,是采樣值放入內(nèi)存的首地址,濾波結(jié)果放入片內(nèi)RAM的37H地址單元,即LINEADRO地址。程序清單:MAOPAO: MOV Rl, #ADTURNO MOV R5, #OAH CLR OOHFILTER: MOV 3CH, R1 INC Rl MOV A, R1 CLR C SUBB A, 3CH J

33、NC NEXT MOV A, Rl MOV R1, 3CH DEC R1 MOV Rl, A INC Rl SETB OOHNEXT: DJNZ R5, FILTER JB OOH, MAOPAO MOV LINEADRO, 26H RET尺度變換在微機(jī)化測(cè)控系統(tǒng)中,經(jīng)A/D轉(zhuǎn)換器接口送入微機(jī)的數(shù)據(jù),是對(duì)被測(cè)量進(jìn)行測(cè)量得到的原始數(shù)據(jù)。這些原始數(shù)據(jù)送入微機(jī)后通常要先進(jìn)行一定的處理,然后才能輸出作為顯示器的顯示數(shù)據(jù)。例如當(dāng)被測(cè)溫度為1000 C,經(jīng)熱電偶轉(zhuǎn)換成熱電勢(shì),再經(jīng)放大和A/D轉(zhuǎn)換得到的數(shù)字是10,這個(gè)A/D轉(zhuǎn)換結(jié)果10雖然與1000C溫度是對(duì)應(yīng)的,但數(shù)字上并不是相等的。因此,不能當(dāng)作溫度值

34、去顯示或打印,必須把A/D轉(zhuǎn)換結(jié)果10變換成供顯示或打印的溫度值100,這個(gè)變換就是數(shù)字顯示的標(biāo)度變換。在該系統(tǒng)中,濕度傳感器和A/D相連,川D轉(zhuǎn)換器和單片機(jī)相連,其中不包括任何非線性的數(shù)字化測(cè)量通道,因此被測(cè)量的值N與A/D轉(zhuǎn)換結(jié)果D,存在如圖4-1所示線性關(guān)系。圖4-1線性關(guān)系在該系統(tǒng)中,土壤濕度測(cè)量范圍0100%對(duì)應(yīng)的輸出電壓范圍為0-5V,ADC0809為8位A./D轉(zhuǎn)換器,轉(zhuǎn)換輸出的數(shù)碼為0255。即根據(jù)上面公式,DL=0lD H =255,NL=0, NH=100.TURN: SETB OD3H CLR OD4H;選則第一組寄存器 CLR C MOV A, LINEADR MOV

35、B, #20 MUL AB CLR OD2H MOV R7, B MOV R6, A MOV R5, #00H MOV R4, #33HLOOP1: MOV A, R7 JNZ LOOP2 MOV A, R6 JNZ LOOP2 MOV R7, #0 MOV R6, #0 SJMP$LOOP2: CLR A MOV R2, A MOV R3, A MOV Rl, #16ADIN: CLR C MOV A, R6 RLC A MOV R6, A MOV A, R7 RLC A MOV R7, A MOV A, R2 RLC A MOV R2, A MOV A, R3 RLC ALOOP3: DJ

36、NZ R1,ADIN MOV A,R3 JB ACC.7, LOOP4 MOV A, R2RLC AMOV R2,AMOV A, R3RLC ASUBB A,R5JC DONE1JNZ LOOP4MOV A,R2SUBB A,R4JC DONE1LOOP4: MOV A,R6 ADD A,#1 MOV R6,A MOV A,R7 ADDC A,#0 MOV R7,ADONE1: MOV HUMID,R6 CLR 0D3HRET4.3.3 BCD轉(zhuǎn)換計(jì)算機(jī)所能識(shí)別和處理的是二進(jìn)制數(shù),在進(jìn)行標(biāo)度變換后的結(jié)果都是用二進(jìn)制數(shù)進(jìn)行計(jì)算和存儲(chǔ)的,而在輸入/輸出系統(tǒng)中,按照人們的習(xí)慣均采用十進(jìn)制數(shù)比較直觀一

37、些。在計(jì)算機(jī)中十進(jìn)制數(shù)常采用BCD碼(即用四位二進(jìn)制數(shù)代表單片機(jī)控制的節(jié)水灌溉系統(tǒng)的研究一位十進(jìn)制數(shù))表示,這樣采樣得到的數(shù)據(jù)才可以以十進(jìn)制的形式輸出顯示。本系統(tǒng)將二進(jìn)制數(shù)轉(zhuǎn)換成BCD數(shù)的方法是將其除以10”次冪,即得相應(yīng)位數(shù),最后的余數(shù)為個(gè)位數(shù)。程序如下:BCDTURN: MOV SHOWADR+3, #00H因濕度值只能小于100,故千位數(shù)為0 MOV B, #100 MOV A, HUMID DIV AB MOV SHOWADR+2,A將百位數(shù)送SHOWADR+2顯示地址 MOV A, #10 XCH A, B DIV AB MOV SHOWADR+1,A將十位數(shù)送SHOWADR+1顯示

38、地址 MOV SHOWADR, B 將個(gè)位數(shù)送SHOWADR顯示地址 RETLED動(dòng)態(tài)顯示程序根據(jù)LED動(dòng)態(tài)顯示系統(tǒng)電路圖4-8, 8155控制口的地址為7FF8H, POA口地址為7FF9H,PC口地址為7FF,片內(nèi)顯示緩沖區(qū)為SHOWADR-SHOWADR+3 (40H-43H),共4個(gè)單元對(duì)應(yīng)4個(gè)數(shù)碼管。程序中先取SHOWADR-I-3中的數(shù),對(duì)應(yīng)選中最左邊的數(shù)碼管,其余類推。由于LED為共陰極接法,并有反相驅(qū)動(dòng),字型表TAB中有效的字型碼為:表4-1 LED顯示段碼字型共陽極段共陰極段字型共陽極段共陰極段0C0H3FH990H6FH1F9H06HA88H77H2A4H5BHB83H7C

39、H3B0H4FHCC6H39H499H66HDA1H5EH592H6DHE86H79H682H7DHF84H71H7F8H07H空白FFH00H880H7FHP8CH73H程序清單如下:MOV DPTR, #7FF8H ;指向8155控制口MOV A, #4DH ;設(shè)置8155工作方式字MOVX DPTR, A ;設(shè)A口、C口均為輸出SHOW: CLR OD3HSETB OD4H ;選中寄存器2組MOV R4, #OFFHSHOWSTART: MOV R0, SHOWADR+3 ;指向緩沖區(qū)末單元MOV R1, #4 ;顯示4位LEDSHOWLED:MOV R6, #20HMOV R7, #00HDIR 1:MOV A, #00H MOV DPTR, #7FFBH MOVX DPTR, AMOV A,R0MOV DPTR, #TABMOV A, A+DPTRMOV DPTR, #7FF9HMOVX DPTR,AMOV A,R6MOV DPTR,# 7FFBHMOVX DPTR,AHERE:DJNZ R7,HERE

溫馨提示

  • 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. 人人文庫(kù)網(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)論