基于單片機(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è),還剩39頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、佳木斯大學(xué)畢業(yè)論文基于單片機(jī)的水塔水位控制系統(tǒng)設(shè)計(jì)及仿真學(xué) 院 信息電子技術(shù)專 業(yè) 通信工程班 級(jí) 12級(jí)2班學(xué) 籍 號(hào) 12100640108姓 名 李方鵬指導(dǎo)教師 周經(jīng)國(guó)佳 木 斯 大 學(xué)2016年6月10日佳木斯大學(xué)學(xué)士學(xué)位論文摘 要 隨著社會(huì)的進(jìn)步,生產(chǎn)工藝和生產(chǎn)技術(shù)的發(fā)展,人們對(duì)液位檢測(cè)提出了更高的要求。由于新型電子技術(shù)、微電子技術(shù)和微型計(jì)算機(jī)被廣泛的應(yīng)用,單片機(jī)控制系統(tǒng)以其控制精度高,性能穩(wěn)定可靠,設(shè)置操作方便,造價(jià)低等諸多特點(diǎn),被應(yīng)用到液位系統(tǒng)的控制中來(lái)。 單片微機(jī)在許多過程控制設(shè)備和產(chǎn)品中都得到廣泛的應(yīng)用。由于其體積小,價(jià)格低,具有邏輯判斷、定時(shí)計(jì)數(shù)、程序控制等多種功能,在各個(gè)

2、領(lǐng)域、各個(gè)行業(yè)都得到了廣泛應(yīng)用。本文介紹了以LM型液位傳感器,A/D轉(zhuǎn)換芯片ADC0809,以及AT89C51單片機(jī)作為主控元件的液位檢測(cè)系統(tǒng)的設(shè)計(jì)方法。通過軟件和硬件的聯(lián)合調(diào)試,實(shí)現(xiàn)了在一定范圍內(nèi)對(duì)水位的調(diào)節(jié),動(dòng)態(tài)顯示出水位結(jié)果,實(shí)現(xiàn)報(bào)警,完全實(shí)現(xiàn)了任務(wù)書上的要求。關(guān)鍵詞:液位檢測(cè);A/D轉(zhuǎn)換;LM型液位傳感器;超限報(bào)警Abstract As society advances, the development of production processes and production technologies,the detection of the level control syste

3、m have a higher demand. New electronic technology of microelectronics technology and miniature computers is widely used. Single chip control system to set up operations with high control accuracy, reliable performance, convenient,low cost, is applied to the level contral.This article describes the L

4、M-type liquid level sensor and A / D conversion chip ADC0809, and AT89C51 microcontroller as the main control component of the liquid level detection system design methods. This article respectively from the liquid level detection, A/D converter, Digital display, Limit alarm and several aspects of t

5、he hardware circuit have conduct a more detailed description. Then the A/D conversion process, Digital tube display program, Limit alarm procedures have a fairly detailed, and using a flow chart for further explanation.Through joint debugging of software and hardware, The basic realization of the re

6、gulation on the level within a certain range of liquid level regulation, Dynamically shows the level results, Achieve alarm, Entirely Achieve the requirements of the mission statement.Keywords: the liquid level detection, A/D converter, lm-type liquid level sensor, limit alarm i佳木斯大學(xué)信息電子技術(shù)學(xué)學(xué)院i目 錄摘要.

7、iAbstract.ii第1章 緒論.11.1 液位檢測(cè)系統(tǒng)的概況.11.2 國(guó)內(nèi)外研究動(dòng)態(tài).11.3 本次畢業(yè)設(shè)計(jì)的意義.21.4 本次畢業(yè)設(shè)計(jì)的任務(wù).2第2章 硬件電路設(shè)計(jì).42.1 硬件電路工作原.42.2 硬件電路設(shè)計(jì).42.2.1 系統(tǒng)總體設(shè)計(jì)框圖.42.2.2 核心芯片的介紹.52.3 硬件電路各模塊設(shè).102.3.1 電源電路設(shè)計(jì).102.3.2 單片機(jī)最小系統(tǒng)電路設(shè)計(jì).102.3.3 顯示電路設(shè)計(jì).112.3.4 液位傳感器的接口電路設(shè)計(jì).132.3.5 AT89C51與ADC0809的接口電路設(shè)計(jì).132.3.6 報(bào)警電路設(shè)計(jì).152.4 硬件電路總結(jié).15第3章 軟件設(shè)計(jì).

8、173.1 AT89C51的I/O口應(yīng)用.173.1.1 P0口的信號(hào)輸入.173.1.2 P1口的信號(hào)輸入.173.1.3 P2口的信號(hào)輸入.173.1.4 P3口的信號(hào)輸入.183.2 軟件模塊設(shè)計(jì).193.2.1 主程序的設(shè)計(jì).193.2.2 A/D轉(zhuǎn)換的設(shè)計(jì).203.2.3 顯示子程序的設(shè)計(jì).213.2.4 報(bào)警子程序的設(shè)計(jì).243.3 軟件設(shè)計(jì)總結(jié).25第4章 聯(lián)機(jī)調(diào)試.264.1 仿真電路調(diào)試.264.2 硬件電路調(diào)試.274.3 硬件電路調(diào)試出現(xiàn)的問題及解決方法.284.4 軟件程序調(diào)試.284.5 軟件程序調(diào)試出現(xiàn)的問題及解決方法.294.6 聯(lián)機(jī)調(diào)試總結(jié).29第5章 結(jié)論.2

9、5致謝.26參考文獻(xiàn).27附錄1.28附錄2.30附錄3.31附錄4.32附錄5.3337佳木斯大學(xué)信息電子技術(shù)學(xué)學(xué)院第1章 緒論 隨著人們生活水平和工業(yè)標(biāo)準(zhǔn)的提高,液位的檢測(cè)越來(lái)越受到人們重視,檢測(cè)的精度和實(shí)時(shí)性要求也越來(lái)越高,另外還要求系統(tǒng)能提供對(duì)液位的自動(dòng)控制功能。今后液位的監(jiān)測(cè)和控制系統(tǒng)的研究將是一個(gè)重要的課題。1.1 液位檢測(cè)系統(tǒng)的概況在日常生產(chǎn)和生活中經(jīng)常遇到液位的檢測(cè)和控制問題。尤其在許多工業(yè)生產(chǎn)系統(tǒng)中,需要對(duì)系統(tǒng)的液位或物料位進(jìn)行檢測(cè)和控制,特別是對(duì)具有腐蝕性的液體液位的測(cè)量,傳統(tǒng)的電極法是采用差位分布電極,通過給電脈沖來(lái)檢測(cè)液面,電極長(zhǎng)期浸泡在液體中,極易被腐蝕、電解、失去靈

10、敏性,因而對(duì)測(cè)試設(shè)備的抗腐蝕性要求較高。LM型液壓傳感器采用316L不銹鋼膜片及PVC塑料螺紋頭相結(jié)合,可測(cè)量水、其它液體及氣體液位。LM型液壓傳感器采用擁有專利技術(shù)的低成本不銹鋼傳感器,其安裝在PVC塑料過程接頭內(nèi)。監(jiān)控工程實(shí)施方便、迅速、易做到實(shí)時(shí)控制,而且測(cè)量精度又能達(dá)到工業(yè)實(shí)用的要求,所以有廣泛的應(yīng)用前景。為了降低工人的勞動(dòng)強(qiáng)度,改善工人的工作環(huán)境,節(jié)省財(cái)力、物力,避免資源的浪費(fèi),特別是對(duì)一些具有高溫、高壓、低溫、低壓、有輻射性、毒性、易揮發(fā)易爆等液體,就要對(duì)液位進(jìn)行檢測(cè),而且液位的檢測(cè)顯得尤為重要。今后液位的監(jiān)測(cè)和控制系統(tǒng)的研究將是一個(gè)重要的課題。1.2 國(guó)內(nèi)外研究動(dòng)態(tài) 在當(dāng)今社會(huì)經(jīng)

11、濟(jì)高速增長(zhǎng)的同時(shí),水在人們的生活、生產(chǎn)中起著重要的作用。一旦出現(xiàn)缺水,輕則給人們生活帶來(lái)極大的不便,重則出現(xiàn)造成嚴(yán)重的生產(chǎn)事故并造成不可挽救的經(jīng)濟(jì)損失。液面檢測(cè)和控制技術(shù)的要求也越來(lái)越嚴(yán)格。為了解決生產(chǎn)中的測(cè)量問題,一方面是新測(cè)量原理的采用,新的儀器儀表水平的發(fā)展,擴(kuò)大了檢測(cè)方法,而另一方面需要對(duì)電腦化和智能化方向發(fā)展。近年來(lái),微電子技術(shù)的發(fā)展使得水塔液位檢測(cè)技術(shù)已經(jīng)徹底改變。新的應(yīng)用程序級(jí)的檢測(cè)原理和電子元件,這樣可以更好地判斷正變得越來(lái)越小型化,尤其是小場(chǎng)液位開關(guān)光纖液位計(jì)的快速發(fā)展,沒有移動(dòng)部件,因此,精確的測(cè)量,可以控制。同時(shí),液位檢測(cè)和控制也正朝著智能化的方向發(fā)展,在衡量微處理技術(shù)水

12、平的領(lǐng)域被廣泛應(yīng)用,實(shí)現(xiàn)故障診斷和報(bào)警等功能,提高了測(cè)量精度,可靠性,安全性,性別和多功能。在應(yīng)用設(shè)計(jì)水平和定時(shí)應(yīng)盡量達(dá)到液位檢測(cè)系統(tǒng)的精確測(cè)量,以改善惡劣環(huán)境性下的精確和可靠地在惡劣的環(huán)境中。1.3 本次畢業(yè)設(shè)計(jì)的意義目前,市面上進(jìn)行液位測(cè)量的儀表種類繁多,但是同時(shí)具有測(cè)量、監(jiān)控、數(shù)據(jù)記錄及處理的液位測(cè)量裝置并不多。在某些工業(yè)控制系統(tǒng)中,數(shù)據(jù)的測(cè)量這一基本功能已不能滿足現(xiàn)代工業(yè)的要求,往往需要對(duì)大批數(shù)據(jù)進(jìn)行記錄,對(duì)其進(jìn)行后期處理分析,實(shí)現(xiàn)差錯(cuò)控制、工藝改善、資源優(yōu)化等一系列工作。在液位測(cè)量這一領(lǐng)域中,如江河湖海、城市用水等方面,大量數(shù)據(jù)長(zhǎng)時(shí)間,多網(wǎng)點(diǎn)的采集記錄分析具有普遍的意義。液位的變化分

13、析,有助于人們進(jìn)一步對(duì)自然環(huán)境、天氣變化甚至是災(zāi)害預(yù)警提供可靠的支持。單片機(jī)在許多過程控制設(shè)備和產(chǎn)品中都得到廣泛的應(yīng)用。由于其體積小,價(jià)格低,具有邏輯判斷、定時(shí)計(jì)數(shù)、程序控制等多種功能,在各個(gè)領(lǐng)域、各個(gè)行業(yè)都得到了廣泛應(yīng)用。不僅有常用的8位機(jī),而且4位單片機(jī)和16位單片機(jī)也得到了普及,隨著過程控制精度要求的增加和運(yùn)算速度的增快,單片機(jī)得到了進(jìn)一步的應(yīng)用。1.4 本次畢業(yè)設(shè)計(jì)的任務(wù)本文的主要任務(wù)是以單片機(jī)為主控制器,開發(fā)一個(gè)基于液位傳感器的液位監(jiān)控系統(tǒng),可測(cè)量并顯示液位高度。設(shè)定最高液位和最低液位,當(dāng)液位高于最高液位或低于最低液位時(shí)發(fā)出報(bào)警信號(hào),提醒工作人員液位信息。研究設(shè)計(jì)內(nèi)容包括:(1)液位

14、檢測(cè)的基本原理與方法;(2)液位檢測(cè)系統(tǒng)的整體方案設(shè)計(jì);(3)模數(shù)轉(zhuǎn)換電路的設(shè)計(jì);(4)顯示電路設(shè)計(jì);(5)系統(tǒng)軟件流程設(shè)計(jì);(6)電源電路的設(shè)計(jì);(7)PCB布線及硬件抗干擾設(shè)計(jì)。設(shè)計(jì)完成之后提供一個(gè)可以應(yīng)用于一般工業(yè)的液位檢測(cè)及顯示系統(tǒng)的設(shè)計(jì)方案,測(cè)量范圍和測(cè)量精度滿足一般工業(yè)應(yīng)用需要。通過畢業(yè)設(shè)計(jì)的整個(gè)過程,可以綜合運(yùn)用傳感器、單片機(jī)、電子電路和程序設(shè)計(jì)等方面的知識(shí),鍛煉和提高科研的能力。第2章 硬件電路設(shè)計(jì)2.1 硬件電路工作原理該系統(tǒng)以AT89C51作為核心控制部件,外加傳感器,一片A/D轉(zhuǎn)換芯片和數(shù)碼管來(lái)完成系統(tǒng)的預(yù)期任務(wù),即液位的檢測(cè)、顯示和超限報(bào)警。傳感器實(shí)現(xiàn)液位信號(hào)到電壓信號(hào)

15、的轉(zhuǎn)換,再由8位A/D轉(zhuǎn)換芯片ADC0809將模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào),實(shí)現(xiàn)液位信息的輸入,AT89C51從ADC0809讀取液位信息后進(jìn)行數(shù)據(jù)處理和超限判斷,隨后將處理過的數(shù)據(jù)輸出到數(shù)碼管顯示,設(shè)置最高液位和最低液位,若液位超限則由單片機(jī)報(bào)警1。2.2 硬件電路設(shè)計(jì)2.2.1 系統(tǒng)總體設(shè)計(jì)框圖 電源傳感器A/D轉(zhuǎn)換AT89C51報(bào)警LED驅(qū)動(dòng)數(shù)碼管圖21 系統(tǒng)總體設(shè)計(jì)框圖圖2-1各部分功能:(1) 電源部分提供+5V電壓供系統(tǒng)各部分使用。(2) LM傳感器實(shí)現(xiàn)液位信息到電壓信號(hào)的轉(zhuǎn)換。(3)ADC0809將傳感器輸出的電壓信號(hào)經(jīng)A/D轉(zhuǎn)換后送到單片機(jī)。(4)AT89C51為處理器,實(shí)現(xiàn)液位信息

16、的接收、數(shù)據(jù)處理、和輸出到數(shù)碼管。(5)蜂鳴器部分在單片機(jī)檢測(cè)到液位超限是由單片機(jī)驅(qū)動(dòng)LED燈亮滅報(bào)警。(6)單片機(jī)對(duì)液位數(shù)據(jù)處理后輸出,數(shù)碼管顯示。2.2.2 核心芯片的介紹(1)單片機(jī)AT89C51單片機(jī)應(yīng)用系統(tǒng)的基本構(gòu)成:EPROMRAMI/O擴(kuò)展ROMRAMI/O圖22 單片機(jī)應(yīng)用系統(tǒng)的基本構(gòu)成AT89C51主要參數(shù):表21 AT89C51主要參數(shù) 型號(hào)存儲(chǔ)器定時(shí)器I/O串行口中斷速度(MH)其他特點(diǎn)E2PROMROMRAM89C514K1282321624低電壓 AT89C51含 E2PROM電可編閃速存儲(chǔ)器。有兩級(jí)或三級(jí)程序存儲(chǔ)器保密系統(tǒng),防止E2PROM中的程序被非法復(fù)制。不用紫

17、外線擦除,提高了編程效率。程序存儲(chǔ)器E2PROM容量可達(dá)20K字節(jié)。AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器的低電壓,高性能CMOS8位微處理器,俗稱單片機(jī)。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的AT89C51是一種高效微控制器,為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案2。 AT89C51主要特性:與MCS-51兼容,4K字節(jié)可編程閃爍存儲(chǔ)器,壽命:1000寫/擦循環(huán),全靜態(tài)工作:0HZ-24HZ,三級(jí)程序存儲(chǔ)器鎖定8位CPU;振蕩頻率1.2-1

18、2MHz;128個(gè)字節(jié)的片內(nèi)數(shù)據(jù)存儲(chǔ)器(片內(nèi)RAM);21個(gè)專用寄存器;4KB的片內(nèi)程序存儲(chǔ)器;8位并行I/O口P0,P1,P2,P3;一個(gè)全雙工串行I/O口;2個(gè)16位定時(shí)器/計(jì)數(shù)器;5個(gè)中斷源,分為2個(gè)優(yōu)先級(jí)。 I/O口引腳:P0口,雙向8位三態(tài)I/O口,此口為地址總線(低8位)及數(shù)據(jù)總線分時(shí)復(fù)用;P1口,8位準(zhǔn)雙向I/O口P2口,8位準(zhǔn)雙向I/O口,與地址總線(高8位)復(fù)用;P3口,8位準(zhǔn)雙向I/O口,雙功能復(fù)用。(2)A/D轉(zhuǎn)換器ADC0809ADC0809是美國(guó)國(guó)家半導(dǎo)體公司生產(chǎn)的CMOS工藝8通道,8位逐次逼近式A/D模數(shù)轉(zhuǎn)換器。其內(nèi)部有一個(gè)8通道多路開關(guān),它可以根據(jù)地址碼鎖存譯碼

19、后的信號(hào),只選通8路模擬輸入信號(hào)中的一個(gè)進(jìn)行A/D轉(zhuǎn)換。A/D轉(zhuǎn)換芯片ADC0809為8路模擬信號(hào)的分時(shí)采集,片內(nèi)有8路模擬選通開關(guān),以及相應(yīng)的通道抵制鎖存用譯碼電路,其轉(zhuǎn)換時(shí)間為100s左右。ADC0809的內(nèi)部結(jié)構(gòu):圖23 ADC0809的內(nèi)部邏輯結(jié)構(gòu)圖圖2-3中多路開關(guān)可選通8個(gè)模擬通道,允許8路模擬量分時(shí)輸入,共用一個(gè)A/D轉(zhuǎn)換器進(jìn)行轉(zhuǎn)換,這是一種經(jīng)濟(jì)的多路數(shù)據(jù)采集方法。地址鎖存與譯碼電路完成對(duì)A、B、C 3個(gè)地址位進(jìn)行鎖存和譯碼,其譯碼輸出用于通道選擇,其轉(zhuǎn)換結(jié)果通過三態(tài)輸出鎖存器存放、輸出,因此可以直接與系統(tǒng)數(shù)據(jù)總線相連, 圖24 ADC0809的通道選擇表 圖25ADC0809引

20、腳圖ADC0809功能介紹:分辨率為8位;最大不可調(diào)誤差小于1LSB;單一+5V供電,模擬輸入范圍05V;具有鎖存控制的8路模擬開關(guān);可鎖存三態(tài)輸出,輸出與TTL兼容;功耗為15mw;不必進(jìn)行零點(diǎn)和滿度調(diào)整;轉(zhuǎn)換速度取決芯片的始終頻率,它的時(shí)鐘為10kHZ1.2MHZ.當(dāng)時(shí)鐘為500KHZ,轉(zhuǎn)換速度為100us。ADC0809的原理ADC0809是一款8位AD轉(zhuǎn)換器,數(shù)據(jù)獲取的關(guān)鍵部分是它的8位模/數(shù)轉(zhuǎn)換器。這個(gè)部分主要由N位逐次逼近寄存器SAR,D/A轉(zhuǎn)換器,比較器,置數(shù)選擇電路組成。轉(zhuǎn)換過程如下:選選置數(shù)電路置SAR的最高位為“1”,其余位為“0”,經(jīng)D/A轉(zhuǎn)換器轉(zhuǎn)換成的模擬電壓Uo與輸入

21、模擬電壓Ui在電壓比較器進(jìn)行比較,若Ui大于等于Uo,則保留最高位“1”,若Ui小于Uo,則最高位為“0”。置次高位為“1”,低位全為“0”,按上述步驟進(jìn)行轉(zhuǎn)換,比較,判斷。重復(fù)此過程,直到確定SAR的最低位的值取“1”,還是“0”為止。此時(shí),SAR內(nèi)容就是對(duì)應(yīng)的輸入模擬電壓轉(zhuǎn)換后的數(shù)字量。(3)LM型液壓傳感器LM系列液壓傳感器采用316L不銹鋼膜片及PVC塑料螺紋頭相結(jié)合,可測(cè)量水、其它液體及氣體液位。LM系列液壓傳感器采用擁有專利技術(shù)的低成本不銹鋼傳感器安裝在PVC塑料過程接頭內(nèi)。該設(shè)計(jì)可使傳感器具有多種外形,方便客戶應(yīng)用于需要高性能、小尺寸的壓力和真空系統(tǒng)。傳感器標(biāo)準(zhǔn)輸出為0.54.5

22、V,供電為5V。特點(diǎn):螺紋接口式,-2085工作溫度范圍,±0.1%非線性,±3.0%總誤差,固態(tài)結(jié)構(gòu)應(yīng)用: 灌溉系統(tǒng),RV和船舶水位保持,蓄水和水循環(huán)系統(tǒng),小型罐體液位,冷卻器&蒸氣冷凝設(shè)備類型: 表壓量程: 01,2,5,15,30,50,150(psi)精確度: ±5%(<5Psi);±3%(>5Psi)輸出: 0.54.5V電氣連接: 電纜 工作溫度: -3585供電電源: 5VDC 圖27 LM系列液壓傳感器特點(diǎn): 低成本,微量程(最佳量程1Psi15Psi),適于OEM客戶批量應(yīng)用。典型應(yīng)用: 灌溉,RV和船用郵箱液位,水

23、存儲(chǔ)和水回收系統(tǒng),小罐體液位,冷凝器,蒸發(fā)冷卻塔 圖28 LM傳感器尺寸外形圖 圖29 LM傳感器電氣連接圖2.3 硬件電路各模塊設(shè)計(jì)2.3.1 電源電路設(shè)計(jì) 系統(tǒng)供電為市電AC220v,經(jīng)變壓器TR1降為交流6v,經(jīng)整流橋堆BR1整流后得到脈動(dòng)直流電壓6v,再經(jīng)三端穩(wěn)壓器LM7805得到VCC(+5v) ,圖210 電源電路圖2-10系統(tǒng)供電為市電AC220v,經(jīng)變壓器TR1降為交流6v,經(jīng)整流橋堆BR1整流后得到脈動(dòng)直流電壓6v,再經(jīng)三端穩(wěn)壓器LM7805得到VCC(+5v) ,其中電解電容C4、C6、起濾波作用,C5、C7是旁路電容,起抑制干擾的作用3。2.3.2 單片機(jī)最小系統(tǒng)電路設(shè)計(jì)

24、復(fù)位電路,就是 利用它把電路恢復(fù)到起始狀態(tài)。就像計(jì)算器的清零按鈕的作用一樣,當(dāng)你進(jìn)行完了一個(gè)題目的計(jì)算后肯定是要清零的是吧!或者你輸入錯(cuò)誤,計(jì)算失誤時(shí)都 要進(jìn)行清零操作。以便回到原始狀態(tài),重新進(jìn)行計(jì)算。和計(jì)算器清零按鈕有所不同的是,復(fù)位電路啟動(dòng)的手段有所不同。一是在給電路通電時(shí)馬上進(jìn)行復(fù)位操作;二是在必要時(shí)可以由手動(dòng)操作;三是根據(jù)程序或者電路運(yùn)行的需要自動(dòng)地進(jìn)行。篡位電路都 是比較簡(jiǎn)單的大都是只有電阻和電容組合就可以辦到了。再?gòu)?fù)雜點(diǎn)就有三極管等等配合程序來(lái)進(jìn)行了。RST:復(fù)位輸入。在單片機(jī)工作期間,當(dāng)此引腳上出現(xiàn)連接2個(gè)機(jī)器周期的高電平時(shí)可實(shí)現(xiàn)復(fù)位操作。復(fù)位電路除了具有上電復(fù)位功能外,還可通過

25、復(fù)位鍵迫使RESET為高電平。當(dāng)系統(tǒng)通電時(shí),RESET引腳獲得高電平,隨著電容的充電,RESET引腳的高電平將逐漸下降。RESET的高電平只有保持足夠的時(shí)間(2個(gè)機(jī)械周期),單片機(jī)才可以進(jìn)行復(fù)位操作 。時(shí)鐘電路采用12MHz的晶振,因?yàn)锳DC0809的工作時(shí)鐘最高允許值為12MHz,單片機(jī)ALE管腳2分頻后為500KHz,可以作為ADC0809轉(zhuǎn)換器的時(shí)鐘信號(hào)CLK。XTAL1:反向放大振蕩器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。XTAL2:來(lái)自反向振蕩器的輸出。XTAL1腳是內(nèi)部反相放大器的輸入端,而XTAL2腳是該放大器的輸出端。在晶體振蕩中,晶體工作于基本響應(yīng)模式,它作為一個(gè)感抗與外部電容形成

26、并聯(lián)諧振,使正反饋放大器維持震蕩。所選電容為瓷片電容22PF,因?yàn)?2PF對(duì)于工作于1MHZ以上的晶振都能獲得良好的效果4。圖211 單片機(jī)最小系統(tǒng)電路2.3.3 顯示電路設(shè)計(jì)圖212 顯示電路本設(shè)計(jì)圖2-12由P1口控制七段發(fā)光二極管亮或滅,使用共陰極8段數(shù)碼管,由圖2.9可知,要使七段顯示器的某一段亮,則應(yīng)該是與該段相連的段選寄存器即P1口的某位線輸出為1。若使某段熄滅,則必須輸出0。例如要顯示數(shù)字4。則應(yīng)使P1口的P1.7-P1.0輸出為11100110B,若用一個(gè)字節(jié)表示該輸出值,即字形代碼為66H,依此類推,可以得到09一共10個(gè)十進(jìn)制數(shù)的字形代碼依次為3FH,06H,5BH,4FH

27、,66H,6DH,7DH,07H,7FH,6FH。本設(shè)計(jì)由P2.0,P2.1,P2.2,P2.3做位選,以控制哪一位七段數(shù)碼管顯示,例如,要求第一位數(shù)碼管顯示,則應(yīng)設(shè)置P2.0為“1”,P2.1,P2.2,P2.3為“0”。PNP型三極管9012起到增加驅(qū)動(dòng)電流的目的。電阻R12R19控制通過數(shù)碼管的電流,R20R23控制通過三極管9012的電流,R4R11為單片機(jī)P1口的上拉電阻5。圖213 電位器RV1與ADC0809接口2.3.4 液位傳感器的接口電路設(shè)計(jì)設(shè)計(jì)圖2-13所選LM型液位傳感器能夠根據(jù)不同的液位產(chǎn)生不同的電壓,電壓值大小范圍為0.54.5V,且能夠便于遠(yuǎn)距離傳輸。由于芯片AD

28、C0809的輸入為05V的電壓,仿真時(shí)需要將輸入信號(hào)轉(zhuǎn)換為電壓信號(hào),為此外接一電位器R=1k,把電壓轉(zhuǎn)換成05V電壓。在設(shè)計(jì)中,把電位器的1,3腳接+5V電壓和地線,調(diào)節(jié)滑鈕2能夠很好的得到05V電壓,因此可以用電位器模擬液位傳感器。2.3.5 AT89C51與ADC0809的接口電路設(shè)計(jì)如圖2-14 ADC0809與AT89C51相連接,ADC0809中的START與ALE相連通,ALE地址鎖存允許信號(hào),對(duì)應(yīng)ALE上跳沿,A、B、C地址狀態(tài)送入地址鎖存器中。START轉(zhuǎn)換啟動(dòng)信號(hào)。START上升沿時(shí),復(fù)位ADC0809;START下降沿時(shí)啟動(dòng)芯片,開始進(jìn)行A/D轉(zhuǎn)換;在A/D轉(zhuǎn)換期間,STA

29、RT應(yīng)保持 低電平。當(dāng)ALE上升沿時(shí),ALE鎖存數(shù)據(jù),A/D轉(zhuǎn)換截止,當(dāng)ALE下降沿時(shí),START低電平,ALE低電平,不鎖存,A/D轉(zhuǎn)換開始。P2.4,P2.5,P2.6,P2.7分別控制CLK,START和ALE,EOC,OE信號(hào),其控制A/D轉(zhuǎn)換的開始和截止。CLK使用AT89C51內(nèi)部時(shí)鐘信號(hào)。ADDA,ADDB,ADDC相連通接地,信號(hào)輸入為000,表示輸入通道選擇為IN0口。8位數(shù)據(jù)信號(hào)線2-12-8與單片機(jī)的P1.0P1.7相連,實(shí)現(xiàn)ADC0809與AT89C51的數(shù)據(jù)傳輸。Vref參考電源參考電壓用來(lái)與輸入的模擬信號(hào)進(jìn)行比較,作為逐次逼近的基準(zhǔn)。其典型值為+5V(Vref(+)

30、=+5V, Vref(-)=0V)。圖214 AT89C51與ADC0809的接口電路2.3.6 報(bào)警電路設(shè)計(jì) 圖215 報(bào)警電路圖2-15電路的P3.0,P3.1作為高位和低位的報(bào)警控制線,通過設(shè)置高低液位報(bào)警線來(lái)實(shí)現(xiàn)報(bào)警功能。如果當(dāng)前液位高于設(shè)置的高位報(bào)警線時(shí),P3.0置低電平,高位報(bào)警燈亮。如果當(dāng)前液位低于于設(shè)置的低位報(bào)警線時(shí),P3.1置低電平,低位報(bào)警燈亮。如果當(dāng)前液位低于設(shè)置的高位液位且高于低位液位時(shí),高位報(bào)警燈和低位報(bào)警燈滅6。2.4 硬件電路總結(jié)在本章中主要講述了硬件電路的結(jié)構(gòu),電路原理和部分芯片的功能,要想確定與單片機(jī)相連的芯片,首先要看你想拿它來(lái)做什么,如果是采集信號(hào)的話,還

31、要看你采集的是那種信號(hào),如果是音頻信號(hào),那么可以選擇一些音頻解碼芯片,如AD1836;如果是采集視頻信號(hào),就要選擇視頻解碼芯片,如ADV7171??傊鶕?jù)前端的信號(hào)類型選擇相應(yīng)的芯片,許多傳感器的作用就是采集外部的各種信號(hào)。 芯片確定好后,進(jìn)行引腳相連主要看兩大方面的:一是控制接口,即單片機(jī)通過此接口實(shí)現(xiàn)對(duì)芯片的寄存器設(shè)置,實(shí)現(xiàn)芯片的各種功能。常見的控制接口是串行控制接口,有的支持SPI,有的支持I2C;二是數(shù)據(jù)通信接口,即用于單片機(jī)和芯片之間的數(shù)據(jù)傳輸,把采集的數(shù)據(jù)通過這個(gè)接口發(fā)給單片機(jī),這個(gè)接口有串行的也有并行。一般引腳連接在芯片手冊(cè)中會(huì)有一個(gè)推薦電路,可以去參考根據(jù)電路組成情況分成六個(gè)

32、電路模塊,分別介紹了各個(gè)電路模塊的工作原理和功能,掌握了更多的基本硬件電路設(shè)計(jì)原理如圖2-16及其工作特點(diǎn)。圖2-17PCB封裝圖,為做PCB板做準(zhǔn)備。下面是電路的圖片7。圖216 電路原理圖圖217 PCB封裝圖第3章 軟件設(shè)計(jì)3.1 AT89C51的I/O口應(yīng)用AT89C51共有P0,P1,P2,P3,4個(gè)8位的并行雙向I/O口。各個(gè)I/O口實(shí)現(xiàn)不同的功能,詳細(xì)情況如下。3.1.1 P0口的信號(hào)輸入在程序中將P0口做為段選口使用,顯示十位數(shù)字的段選信號(hào),下例為顯示十位數(shù)字的指令:MOV DPTR,#TABLE ;取段碼表首址。MOV A,LED_2 ;取顯示的十位數(shù)字。MOVC A,A+D

33、PTR ;取段碼。MOV P0,A ;輸出段碼的顯示。TABLE: DB 3FH,06H,5BH,4FH,66H ;共陰極數(shù)碼管表DB 6DH,7DH,07H,7FH,6FH3.1.2 P1口的信號(hào)輸入在程序中將P0口作為輸入口,用來(lái)讀A/D轉(zhuǎn)換值。設(shè)計(jì)中,要求選通通道0,并把轉(zhuǎn)化后得到數(shù)字量存入內(nèi)部RAM的35H單元中,下例為把轉(zhuǎn)化后的數(shù)字量存入內(nèi)部RAM中的指令:CLR P2.5, ;SRART置0,MOV A,P1 ;MOV R7,AMOV 35H,R73.1.3 P2口的信號(hào)輸入P2.0,P2.1,P2.2,P2.3做數(shù)碼管的位選信號(hào)用,要哪個(gè)數(shù)碼管亮,則置相應(yīng)位高電平,就可將其選中。

34、例如要求顯示第一個(gè)數(shù)碼管,端口設(shè)置指令為:CLR P2.0CLR P2.1CLR P2.2CLR P2.3 P2.4,P2.5,P2.6,P2.7作為通用I/O口使用,與ADC0809連接。P2.4作為A/D轉(zhuǎn)換的CLK信號(hào),P2.5作為開始A/D轉(zhuǎn)換的啟動(dòng)信號(hào),P2.6作為查詢A/D轉(zhuǎn)換是否完成的判斷信號(hào),P2.7作為輸出A/D轉(zhuǎn)換的數(shù)字量允許信號(hào)。下例為P2.4,P2.5,P2.6,P2.7作為通用I/O口使用的指令:CLOCK BIT P2.4ST BIT P2.5EOC BIT P2.6OE BIT P2.73.1.4 P3口的信號(hào)輸入P3.0、P3.1、P3.7作為通用I/O口使用,

35、與LED燈和蜂鳴器相連,輸出報(bào)警信號(hào),如果當(dāng)前液位高于設(shè)置的高位報(bào)警線時(shí),P3.0置低電平,高位報(bào)警燈亮。如果當(dāng)前液位低于于設(shè)置的低位報(bào)警線時(shí),P3.1置低電平,低位報(bào)警燈亮。如果當(dāng)前液位低于設(shè)置的高位液位且高于低位液位時(shí),高位報(bào)警燈和低位報(bào)警燈滅。H_ALM BIT P3.0L_ALM BIT P3.1LALM: CLR L_ALM ;低位報(bào)警 SETB TR1 CLR FLAG LJMP PROCHALM: CLR H_ALM ;高位報(bào)警 SETB TR1 SETB FLAG LJMP PROC3.2 軟件模塊設(shè)計(jì)3.2.1 主程序的設(shè)計(jì)系統(tǒng)分為初始化,A/D轉(zhuǎn)換,十進(jìn)制轉(zhuǎn)換,LED顯示,

36、電機(jī)控制和報(bào)警電路。因此整個(gè)程序需要包含上述六個(gè)子程序。流程圖如圖3-1:圖31 主程序流程圖3.2.2 A/D轉(zhuǎn)換的設(shè)計(jì)ADC0809芯片實(shí)現(xiàn)A/D轉(zhuǎn)換的時(shí)間為0.1ms左右,A/D轉(zhuǎn)換后得到的數(shù)字量應(yīng)及時(shí)傳送到單片機(jī)進(jìn)行處理,流程圖如圖3-2。OE輸出允許信號(hào)。用于控制三態(tài)輸出鎖存器向單片機(jī)輸出轉(zhuǎn)換得到的數(shù)據(jù)。OE=0,輸出數(shù)據(jù)線呈高阻;OE=1,輸出轉(zhuǎn)換得到的數(shù)據(jù)。ALE地址鎖存允許信號(hào)。對(duì)應(yīng)ALE上跳沿,A、B、C地址狀態(tài)送入地址鎖存器中。START轉(zhuǎn)換啟動(dòng)信號(hào)。START上升沿時(shí),復(fù)位ADC0809;START下降沿時(shí)啟動(dòng)芯片,開始進(jìn)行A/D轉(zhuǎn)換;在A/D轉(zhuǎn)換期間,START應(yīng)保持

37、低電平。本信號(hào)有時(shí)簡(jiǎn)寫為ST。CLK時(shí)鐘信號(hào)。ADC0809的內(nèi)部沒有時(shí)鐘電路,所需時(shí)鐘信號(hào)由外界提供,因此有時(shí)鐘信號(hào)引腳。通常使用頻率為500KHz的時(shí)鐘信號(hào)。EOC轉(zhuǎn)換結(jié)束信號(hào)。EOC=0,正在進(jìn)行轉(zhuǎn)換;EOC=1,轉(zhuǎn)換結(jié)束。使用中該狀態(tài)信號(hào)即可作為查詢的狀態(tài)標(biāo)志,又可作為中斷請(qǐng)求信號(hào)使用。CLOCK BIT P2.4ST BIT P2.5EOC BIT P2.6OE BIT P2.7CLR STSETB STCLR ST ;啟動(dòng)轉(zhuǎn)換JNB EOC,$ ;等待輸出結(jié)果SETB OE ;允許輸出MOV ADC,P1 ;讀取A/D轉(zhuǎn)換結(jié)果CLR OE ;關(guān)閉輸出MOV A,ADC ;將A/D轉(zhuǎn)

38、換結(jié)果轉(zhuǎn)換成BCD碼圖32 A/D轉(zhuǎn)換程序流程圖3.2.3 顯示子程序的設(shè)計(jì) 設(shè)計(jì)中采用動(dòng)態(tài)掃描法,實(shí)現(xiàn)四位數(shù)碼管的數(shù)值顯示,并顯示小數(shù)點(diǎn)。數(shù)碼管動(dòng)態(tài)顯示接口是單片機(jī)中應(yīng)用最為廣泛的一種顯示方式之一,動(dòng)態(tài)驅(qū)動(dòng)是將所有數(shù)碼管的8個(gè)顯示筆劃"a,b,c,d,e,f,g,dp"的同名端連在一起,另外為每個(gè)數(shù)碼管的公共極COM增加位選通控制電路,位選通由各自獨(dú)立的I/O線控制,當(dāng)單片機(jī)輸出字形碼時(shí),所有數(shù)碼管都接收到相同的字形碼,但究竟是那個(gè)數(shù)碼管會(huì)顯示出字形,取決于單片機(jī)對(duì)位選通COM端電路的控制,只要將需要顯示的數(shù)碼管的選通控制打開,該位就顯示出字形,沒有選通的數(shù)碼管就不會(huì)亮。

39、通過分時(shí)輪流控制各個(gè)數(shù)碼管的的COM端,就使各個(gè)數(shù)碼管輪流受控顯示,這就是動(dòng)態(tài)驅(qū)動(dòng)。在輪流顯示過程中,每位數(shù)碼管的點(diǎn)亮?xí)r間為12ms,由于人的視覺暫留現(xiàn)象及發(fā)光二極管的余輝效應(yīng),盡管實(shí)際上各位數(shù)碼管并非同時(shí)點(diǎn)亮,但只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù),不會(huì)有閃爍感,動(dòng)態(tài)顯示的效果和靜態(tài)顯示是一樣的,能夠節(jié)省大量的I/O端口,而且功耗更低8。通過逐次選通P2.0,P2.1 ,P2.2,P2.3依次送十進(jìn)制的相應(yīng)字段碼給P1口,并延時(shí)5ms完成顯示。流程圖如圖3-3顯示程序:MOV LED_0,#00HMOV LED_1,#00HMOV LED_2,#00HMOV LED_3,#

40、00HMOV DPTR,#TABLE ;送段碼表首地址DISP: MOV A,LED_2 MOVC A,A+DPTRORL A,#80H ;顯示小數(shù)點(diǎn) MOV BUFFER+2,A ;送顯示緩存 CLR P2.1 MOV P0,A LCALL DELAY SETB P2.1SETB P2.0 MOV A,LED_1 MOVC A,A+DPTR CLR P2.0 MOV P0,A LCALL DELAY RETDELAY: MOV R6,#10 ;延時(shí)5ms圖33 顯示子程序流程圖3.2.4 報(bào)警子程序的設(shè)計(jì)本電路的P3.0,P3.1作為高位和低位的報(bào)警控制線,通過設(shè)置高低液位報(bào)警線來(lái)實(shí)現(xiàn)報(bào)警功

41、能。本設(shè)計(jì)要求為:液位在小于1.26米時(shí)低位報(bào)警燈亮進(jìn)行低位報(bào)警,液位在1.53米時(shí)燈都不亮,液位在大于4米時(shí)高位報(bào)警燈亮進(jìn)行高位報(bào)警,流程圖如圖3-4。報(bào)警程序:MOV H_TEMP,#153 ;204/255=0.6 高于80%報(bào)警MOV L_TEMP,#77 ;77/255=0.3 低于30%報(bào)警MOV A,ADC ;將A/D轉(zhuǎn)換結(jié)果轉(zhuǎn)換成BCD碼 SUBB A,L_TEMP ;判斷是否低于下限 JC LALM MOV A,H_TEMP MOV R0,ADC SUBB A,R0 ;判斷是否高于上限 JC HALM CLR TR1 LJMP PROCLALM: CLR L_ALM ;低位報(bào)

42、警 SETB TR1 CLR FLAG LJMP PROCHALM: CLR H_ALM ;高位報(bào)警 SETB TR1 SETB FLAG LJMP PROC 圖3-43.3 軟件設(shè)計(jì)總結(jié)在本章中主要講述了軟件設(shè)計(jì)的一些情況,對(duì)軟件的一些功能進(jìn)行了解釋,根據(jù)程序組成情況分成六個(gè)程序模塊,分別介紹了各個(gè)程序模塊的工作原理和功能,對(duì)部分程序進(jìn)行了簡(jiǎn)單的注釋,通過流程圖直觀的表現(xiàn)出各個(gè)模塊的作用及程序運(yùn)行過程。在本次的軟件設(shè)計(jì)中,運(yùn)用Keil進(jìn)行編程,將編輯好的程序進(jìn)行編譯,查看是否語(yǔ)法錯(cuò)誤,如果沒有錯(cuò)誤,設(shè)置晶振頻率,編譯生成.Hex文件,進(jìn)行仿真。在此過程中,我收益良多,熟悉了單片機(jī)匯編語(yǔ)言的使用,對(duì)單片機(jī)的編程有了進(jìn)一步的理解,通過和同學(xué)的交流,學(xué)會(huì)了很多以前自己不能解決的問

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(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)論