【電氣工程及其自動化】水位測量儀的液晶顯示電路設(shè)計(jì)_第1頁
【電氣工程及其自動化】水位測量儀的液晶顯示電路設(shè)計(jì)_第2頁
【電氣工程及其自動化】水位測量儀的液晶顯示電路設(shè)計(jì)_第3頁
【電氣工程及其自動化】水位測量儀的液晶顯示電路設(shè)計(jì)_第4頁
【電氣工程及其自動化】水位測量儀的液晶顯示電路設(shè)計(jì)_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

本科生畢業(yè)設(shè)計(jì)(設(shè)計(jì))水位測量儀的液晶顯示電路設(shè)計(jì)二級學(xué)院信息科學(xué)與技術(shù)學(xué)院專業(yè)電氣工程及其自動化完成日期2015年5月24日A基礎(chǔ)理論B應(yīng)用研究C調(diào)查報(bào)告D其他目錄1引言12系統(tǒng)的整體方案設(shè)計(jì)121功能要求122設(shè)計(jì)要求123系統(tǒng)基本方案選擇和論證224單片機(jī)芯片的選擇方案論證23系統(tǒng)的硬件設(shè)計(jì)331電路設(shè)計(jì)框圖3311主控制器芯片AT89C52概述332液晶屏1602的簡單介紹4321液晶屏1602的簡要概述4322液晶屏1602的使用具體533系統(tǒng)功能電路9331最小工作系統(tǒng)原理9332蜂鳴器報(bào)警電路原理10333電機(jī)驅(qū)動電路原理11334按鍵功能電路原理12335液晶1602顯示功能電路圖13336系統(tǒng)總體原理圖設(shè)計(jì)144系統(tǒng)的軟件設(shè)計(jì)1441PWM調(diào)速控制概述14411PWM脈寬調(diào)制簡介14412PWM調(diào)節(jié)的具體過程1442系統(tǒng)程序的設(shè)計(jì)15421程序設(shè)計(jì)步驟15422程序流程圖1643程序源代碼185調(diào)試186總結(jié)18參考文獻(xiàn)19附錄21致謝水位測量儀的液晶顯示電路設(shè)計(jì)摘要液晶屏可以顯示所要顯示的內(nèi)容,使儀器的操作更加方便,在目前新型的儀器中得到了廣泛的應(yīng)用。在對壓力容器液位的顯示電路中,采用液晶屏作為它的顯示器。本設(shè)計(jì)首先介紹了PHILIPS公司生產(chǎn)的單片機(jī)AT89C52和LCD1602顯示的內(nèi)部結(jié)構(gòu)和工作原理,并對單片機(jī)和液晶顯示器之間的接口電路進(jìn)行了設(shè)計(jì)。對于液晶顯示器的控制,采用匯編語言對液晶顯示程序進(jìn)行了設(shè)計(jì)和編制,實(shí)現(xiàn)對其的控制。由試驗(yàn)可知,該液晶顯示器通過單片機(jī)的控制能夠進(jìn)行可靠的工作,同時具有操作簡單、顯示內(nèi)容豐富等特點(diǎn)。關(guān)鍵詞單片機(jī)控制;水位檢測;LCD1602顯示;PWM電機(jī)調(diào)速DESIGNOFLIQUIDCRYSTALDISPLAYCIRCUITFORWATERLEVELMETERABSTRACTTOUCHSCREENLCDCANSHOWTHECONTENTSINDETAILSTHEREFORE,THESCREENLCDISWIDELYUSEDINMANYEQUIPMENTSATPRESENTTHEPAPERINTRODUCETHATTHESCREENLCDISUSEDINWATERLEVELMEASUREMENTSYSTEMTOSHOWTHEMEASUREMENTRESULTSTHEPAPERDESCRIBETHEPRINCIPLESOFMCUAT89C52ANDLCD1602ATFIRST,THENINTRODUCETHEINTERFACECIRCUITBETWEENMCUAT89C52ANDLCDBESIDESTHECIRCUITDESIGN,THEPROGRAMISCOMPILEDTOCONTROLTHELCDFROMTHERESULTSOFTEST,ITCANBESHOWNTHATTHEMCUCANCONTROLTHESCREENLCDRELIABLYTHEWHOLESYSTEMHASMANYGOODCHARACTERS,SUCHASOPERATINGCONVENIENTLYANDSHOWINGMOREMEASUREMENTINFORMATIONKEYWORDSSCMCONTROLWATERDETECTIONLCD1602DISPLAYPWMMOTORSPEED1引言水塔是在日常生活和工業(yè)應(yīng)用中經(jīng)常見到的蓄水裝置,通過對其水位的控制對外供水以滿足需要,其水位控制具有普遍性。在工業(yè)和我們的日常生活中,對水位的監(jiān)測是非常必要的。大到對江河,水庫等的水位,特別在洪災(zāi)或者旱災(zāi)的時候,需要及時得到第一手?jǐn)?shù)據(jù);小到對水箱,熱水器水位等家用貯水容器的監(jiān)測,可以減少很多危險和不必要的損。因此不僅應(yīng)控制水倉水位在一定的范圍之內(nèi),同時要保持一定的上下限,超過了限度則報(bào)警,從而給其排水。目前,控制水塔水位方法較多,其中較為常用的是由單片機(jī)控制實(shí)現(xiàn)自動運(yùn)行,使水塔內(nèi)水位保持恒定,以保證連續(xù)正常地供水。實(shí)際供水過程中要確保水位在允許的范圍內(nèi)浮動,應(yīng)采用水位傳感器測量水位變化,從而控制電動機(jī),保證水位正常。因此,這里給出以AT89C52單片機(jī)為核心器件的水塔水位檢測控制系統(tǒng),該系統(tǒng)能實(shí)現(xiàn)水塔水位檢測、LCD1602顯示當(dāng)前水位功能以及蜂鳴器鳴笛報(bào)警,手動按鍵調(diào)整PWM電機(jī)調(diào)速功能,實(shí)現(xiàn)過低警戒水位報(bào)警、過低警戒水位處理的系統(tǒng)要求。2系統(tǒng)的整體方案設(shè)計(jì)21功能要求實(shí)際供水過程中要確保水位在允許的范圍內(nèi)浮動,應(yīng)采用水位傳感器測量水位變化,從而控制電動機(jī),保證水位正常。因此,這里給出以AT89C52單片機(jī)為核心器件的水塔水位檢測控制系統(tǒng),該系統(tǒng)能實(shí)現(xiàn)水塔水位檢測、LCD1602顯示當(dāng)前水位功能以及蜂鳴器鳴笛報(bào)警,手動按鍵調(diào)整PWM電機(jī)調(diào)速功能,實(shí)現(xiàn)過低和正常警戒水位報(bào)警、過低和正常警戒水位處理的系統(tǒng)要求。22設(shè)計(jì)要求按下電源按鈕后,燈會閃爍幾下,然后是常亮狀態(tài),蜂鳴器會響。電機(jī)不會轉(zhuǎn)的,此時系統(tǒng)在待機(jī)狀態(tài),且為正常狀態(tài)。要先選擇好電機(jī)的抽水速度是哪個檔位,共有4個檔位。檔位越高,速度越快。在電機(jī)轉(zhuǎn)的時候,按下選擇檔位,電機(jī)立馬會停止的,這個是一個軟件安全冗余的設(shè)計(jì)理念。電機(jī)在水位模擬傳感器端口(低水位)按下后,說明水位太低,電機(jī)轉(zhuǎn)動,此時蜂鳴器會響一下,燈會閃爍幾下,以此表示報(bào)警,并且液晶也會顯示水位太低。當(dāng)水位模擬傳感器端口(正常水位)按下后,說明水位已經(jīng)到正常狀態(tài),電機(jī)停轉(zhuǎn),此時蜂鳴器也會響一下,燈一樣會閃爍,以此表示報(bào)警,且液晶屏也會顯示水位正常。而PWM速度調(diào)整就是檔位的選擇,必須在電機(jī)停止的狀態(tài)下去選擇電機(jī)輸出的速度。23系統(tǒng)基本方案選擇和論證此系統(tǒng)可以采用多種的方式設(shè)計(jì),能采用液罐液壓檢測的方式來做,這樣的設(shè)計(jì)理念的前提必須是一個液壓的封閉系統(tǒng),這樣才能有精確的壓力值傳送,保證系統(tǒng)的穩(wěn)定性。但是目前很多用到的水塔水位控制系統(tǒng)都不是封閉的水罐,所以這個方案有一定局限性。而采用特殊的水位傳感器,就可以克服上述的困難。因?yàn)橐何粰z測器可以很精確的檢測到液位系統(tǒng),同樣達(dá)到預(yù)期的目的,且系統(tǒng)的應(yīng)用面很廣,而且系統(tǒng)的安全性能很好,因此我們采取檢測液位作為系統(tǒng)的設(shè)計(jì)思想。24單片機(jī)芯片的選擇方案論證目前市場上的單片機(jī)的種類有很多種,最多的51單片機(jī)、AVR單片機(jī),和MSP430,以及PIC單片機(jī),但是由于單片機(jī)的種類很多,功能各不一樣,我們不需要多先進(jìn),功能多強(qiáng)大的單片機(jī),我們設(shè)計(jì)的要求就是夠用即可,因此我們選用目前市場上用到比較多的、且可以滿足系統(tǒng)設(shè)計(jì)要求的51單片機(jī)。而AT89C52是一個低電壓,高性能CMOS8位單片機(jī),片內(nèi)含8KBYTES的可反復(fù)擦寫的FLASH只讀程序存儲器和256BYTES的隨機(jī)存取數(shù)據(jù)存儲器(RAM),器件采用ATMEL公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS51指令系統(tǒng),片內(nèi)置通用8位中央處理器和FLASH存儲單元,AT89C52單片機(jī)在電子行業(yè)中有著廣泛的應(yīng)用。因此采用AT89C52。顯示模塊是系統(tǒng)的人機(jī)交互模塊,增加了顯示模塊增加了系統(tǒng)的交互性。目前市場上用到的顯示模塊有很多種,有數(shù)碼管顯示,還有液晶顯示,因?yàn)閿?shù)碼管只是顯示數(shù)字,不能顯示字符,而此系統(tǒng)需要用到顯示當(dāng)前的水位狀態(tài)。這樣就必須要用到字符顯示的液晶顯示器,液晶顯示器也有很多種,但根據(jù)系統(tǒng)的需要我們選用的是LCD1602,很大程度上增加了系統(tǒng)的人機(jī)交互功能,讓使用者可以得到更多系統(tǒng)工作的信息,更方便的使用此系統(tǒng)。3系統(tǒng)的硬件設(shè)計(jì)31電路設(shè)計(jì)框圖系統(tǒng)的總體框圖主要由主控芯片基本電路、按鍵電路、電動機(jī)和蜂鳴器驅(qū)動電路、液晶顯示電路組成。除主控芯片電路外,其他的都是外圍功能性電路。蜂鳴器和電動機(jī)電路驅(qū)動原理基本相同,都為三極管驅(qū)動電路,按鍵電路為平常的獨(dú)立按鍵電路,液晶電路參考設(shè)計(jì)手冊既可。電路設(shè)計(jì)框圖如圖31所示圖1電路設(shè)計(jì)框圖311主控制器芯片AT89C52概述AT89C52有40個引腳,32個外部雙向輸入/輸出I/O端口,同時內(nèi)含2個外中斷口,3個16位可編程定時計(jì)數(shù)器,2個全雙工串行通信口,2個讀寫口線,AT89C52可以按照常規(guī)方法進(jìn)行編程,也可以在線編程。其將通用的微處理器和FLASH存儲器結(jié)合在一起,特別是可反復(fù)擦寫的FLASH存儲器可有效地降低開發(fā)成本。1、兼容MCS51指令系統(tǒng)2、8KB可反復(fù)擦寫大于1000次)FLASHROM;3、32個雙向I/O口;4、256X8BIT內(nèi)部RAM;5、3個16位可編程定時/計(jì)數(shù)器中斷;6、時鐘頻率024MHZ;7、2個串行中斷,可編程UART串行通道;8、2個外部中斷源,共8個中斷源;9、2個讀寫中斷口線,3級加密位;10、低功耗空閑和掉電模式,軟件設(shè)置睡眠和喚醒功能;11、有PDIP、PQFP、TQFP及PLCC等幾種封裝形式,以適應(yīng)不同產(chǎn)品的需求。圖2AT89C52的引腳圖說明32液晶屏1602的簡單介紹321液晶屏1602的簡要概述液晶顯示器以其微功耗、體積小、顯示內(nèi)容豐富、超薄輕巧的諸多優(yōu)點(diǎn),在袖珍式儀表和低功耗應(yīng)用系統(tǒng)中得到越來越廣泛的應(yīng)用。字符型液晶顯示模塊是一類專用于顯示字母、數(shù)字、符號等的點(diǎn)陣型液晶顯示模塊。AA字符型液晶顯示驅(qū)動控制器廣泛應(yīng)用于字符型液晶顯示模塊上。目前最常用的字符型液晶顯示驅(qū)動控制器是HD44780U,也出現(xiàn)使用HD667O1或HD66702等字符型液晶顯示驅(qū)動控制器單片控制的字符型液晶顯示模塊。液晶顯示驅(qū)動器為HD44100及其替代品。字符型液晶顯示模塊在世界上是比較通用的,而且接口格式也是比較統(tǒng)一的,其主要原因可能是各制造商所采用的模塊控制器都是HD44780U及其兼容品,不管它的顯示屏的尺寸如何,它的操作指令及其形成的模塊接口信號定義都是兼容的。所以會使用一種字符型液晶顯示模塊,就會通曉所有的字符型液晶顯示模塊。322液晶屏1602的使用具體一指令詳細(xì)解釋如下1清屏(CLEARDISPLAY)格式0000000101H該指令完成下列功能將空碼(20H)寫入DDRAM的全部80個單元內(nèi);將地址指針計(jì)數(shù)器AC清零,光標(biāo)或閃爍歸HOME位;2歸HOME位(RETURNHOME)格式0000001002H該指令將地址指針計(jì)數(shù)器AC清零如果畫面已滾動,則撤消滾動效果,將畫面拉回到HOME位。3輸入方式設(shè)置(ENTERMODESET)格式000001I/DS04H07H該指令的功能在于設(shè)置了顯示字符的輸入方式,即在計(jì)算機(jī)讀寫DDRAM或CGRAM后,地址指針計(jì)數(shù)器AC的修改方式,反映在顯示效果上,當(dāng)寫入一個字符后畫面或光標(biāo)的移動。該指令的兩個參數(shù)位1D和S確定了字符的輸入方式。ID表示當(dāng)計(jì)算機(jī)讀寫DDRAM或CGRAM的數(shù)據(jù)后,地址指針計(jì)數(shù)器AC的修改方式,由于光標(biāo)位置也是由AC值確定,所以也是光標(biāo)移動的方式。ID0AC為減1計(jì)數(shù)器,光標(biāo)左移一個字符位。ID1AC為加1計(jì)數(shù)器,光標(biāo)右移一個字符位。S表示在寫入字符時,是否允許顯示畫面的滾動。S0禁止?jié)L動。S1允許滾動。S1且IDO顯示畫面向右滾動一個字符位。S1且ID1顯示畫面向左滾動一個字符位。4顯示狀態(tài)設(shè)置(DISPLAYON/OFFCONTROL)格式00001DCB08H0FH該指令控制著畫面,光標(biāo)及閃爍的開關(guān)。該指令有三個狀態(tài)位D、C、B,這三個狀態(tài)位分別控著畫面,光標(biāo)和閃爍的顯示狀態(tài)。D畫面顯示狀態(tài)位C光標(biāo)顯示狀態(tài)位。B閃爍顯示狀態(tài)位。當(dāng)BL時為閃爍啟用,B0時為閃爍禁止。5光標(biāo)或畫面滾動(CURSORORPICTURESHIFT)格式0001S/CR/L00執(zhí)行該指令將產(chǎn)生畫面或光標(biāo)向左或向右滾動一個字符位。光標(biāo)的滾動功能可以用于搜尋需要修改的顯示字符。該指令有兩個參數(shù)位1SC滾動對象的選擇SCL畫面滾動SC0光標(biāo)滾動2RL滾動方向的選擇RLL向右滾動RL0向左滾動該指令與輸入方式設(shè)置指令都可以產(chǎn)生光標(biāo)或畫面的滾動,區(qū)別在于該指令專用于滾動功能,執(zhí)行一次,顯示呈現(xiàn)一次滾動效果;而輸入方式設(shè)置指令僅是完成了一種字符輸入方式的設(shè)置,僅在計(jì)算機(jī)對DDRAM等進(jìn)行操作時才能產(chǎn)生滾動的效果。6工作方式設(shè)置(FUNCTIONSET)格式001DLNF00該指令設(shè)置了控制器的工作方式,包括有控制器與計(jì)算機(jī)的接口形式和控制器顯示驅(qū)動的占空比系數(shù)等。該指令有三個參數(shù)DL,N和F它們的作用是DL設(shè)置控制器與計(jì)算機(jī)的接口形式。接口形式體現(xiàn)在數(shù)據(jù)總線長度上。DL1設(shè)置數(shù)據(jù)總線為8位長度,即DB7DBO有效。DL0設(shè)置數(shù)據(jù)總線為4位長度,即DB7DB4有效。在該方式下8位指令代碼和數(shù)據(jù)將按先高4位后低4位的順序分兩次傳輸。N設(shè)置顯示的字符行數(shù)。N0為一行字符行。N1為兩行字符行。F設(shè)置顯示字符的字體。F0為57點(diǎn)陣字符體。F1為510點(diǎn)陣字符體。7CGRAM地址設(shè)置(SETCGRAMADDRESS)格式01A5A4A3A2A1A0該指令將6位的CGRAM地址寫入地址指針計(jì)數(shù)器AC內(nèi),隨后計(jì)算機(jī)對數(shù)據(jù)的操作是對CGRAM的讀寫操作。8DDRAM地址設(shè)置(SETDDRAMADDRESS)格式1A6A5A4A3A2A1A0該指令將7位的DDRAM地址寫入地址指針計(jì)數(shù)器AC內(nèi),隨后計(jì)算機(jī)對數(shù)據(jù)的操作是對DDRAM的讀寫操作。9讀“忙”標(biāo)志和地址指針值(READBUSYFLAGANDADDRESS)格式BFAC6AC5AC4AC3AC2AC1AC0計(jì)算機(jī)對指令寄存器通道讀操作(RS0,RWL)時,將讀出此格式的“忙”標(biāo)志BF值和7位地址指針計(jì)數(shù)器AC的當(dāng)前值。計(jì)算機(jī)隨時都可以對HD44780U讀“忙”操作。BP值反映HD4478OU的接口狀態(tài)。計(jì)算機(jī)在對HD44780U每次操作時首先都要讀BF值判斷HD44780U的當(dāng)前接口狀態(tài),僅有在BF01時計(jì)算機(jī)才可以向HD44780U寫指令代碼或顯示數(shù)據(jù)和從HD44780U讀出顯示數(shù)據(jù)。計(jì)算機(jī)讀出的地址指針計(jì)數(shù)器AC當(dāng)前值可能是DDRAM地址也可能是CGRAM的地址,這取決于最近一次計(jì)算機(jī)向AC寫入的是哪類地址17。10寫數(shù)據(jù)(WRITEDATATOCGORDDRAM)計(jì)算機(jī)向數(shù)據(jù)寄存器通道寫入數(shù)據(jù),HD44780U根據(jù)當(dāng)前地址指針計(jì)數(shù)器AC值的屬性及數(shù)值將該數(shù)據(jù)送入相應(yīng)的存儲器內(nèi)的AC所指的單元里。在寫人數(shù)據(jù)后地址指針計(jì)數(shù)器AC將根據(jù)最近設(shè)置的輸入方式自動修改。由此可知,計(jì)算機(jī)在寫數(shù)據(jù)操作之前要作兩項(xiàng)工作,其一是設(shè)置或確認(rèn)地址計(jì)數(shù)器AC值的屬性及數(shù)值,以保證所寫數(shù)據(jù)能夠正確到位;其二是設(shè)置或確認(rèn)輸入方式,以保證連續(xù)寫入數(shù)據(jù)時AC值的修改方式符合要求。11讀數(shù)據(jù)(READDATAFROMCGORDDRAM)在HD44780U的內(nèi)部運(yùn)行時序的操作下,地址指針計(jì)數(shù)器AC的每一次修改,包括新的AC值的寫入,光標(biāo)滾動位移所引起的AC值的修改或由計(jì)算機(jī)讀寫數(shù)據(jù)操作后所產(chǎn)生的AC值的修改,HD44780U都會把當(dāng)前AC所指單元的內(nèi)容送到接口部數(shù)據(jù)輸出寄存器內(nèi),供計(jì)算機(jī)讀取19。計(jì)算機(jī)的讀數(shù)據(jù)是從數(shù)據(jù)寄存器通道中數(shù)據(jù)輸出寄存器讀取當(dāng)前所存放的數(shù)據(jù)。所以計(jì)算機(jī)在首次讀數(shù)據(jù)操作之前需要重新設(shè)置一次地址指針AC值,或用光標(biāo)滾動指令將地址指針計(jì)數(shù)器AC值修改到所需的地址上,然后進(jìn)行的讀數(shù)據(jù)操作將能獲得所需的數(shù)據(jù)。在讀取數(shù)據(jù)后地址指針計(jì)數(shù)器AC將根據(jù)最近設(shè)置的輸入方式自動修改。由此可知,計(jì)算機(jī)在讀數(shù)據(jù)操作之前要作兩項(xiàng)工作,其一是設(shè)立或確認(rèn)地址計(jì)數(shù)器AC值的屬性及數(shù)值,以保證所讀數(shù)據(jù)的正確性。33系統(tǒng)功能電路331最小工作系統(tǒng)原理圖3最小系統(tǒng)原理圖此圖是單片機(jī)工作的最小系統(tǒng)原理圖,在這個電路中又可以分為復(fù)位電路和晶振電路,如圖3和圖4所示圖4復(fù)位電路復(fù)位電路可以分為上電復(fù)位和手動按鍵復(fù)位兩種。手動按鍵復(fù)位的原理是,在系統(tǒng)正常工作的過程中可以手動觸動按鍵使單片機(jī)復(fù)位。具體原理是,按下S1按鍵,因此5V電壓經(jīng)過一個200歐姆的電阻分壓后加到系統(tǒng)的RST上,手動按鍵按下到抬起的過程足以使系統(tǒng)復(fù)位。圖5晶振電路在設(shè)計(jì)單片機(jī)系統(tǒng)電路時,晶振電路時不可缺失的,在計(jì)算機(jī)系統(tǒng)中,所有的工作都是一個節(jié)拍下同步工作,這是才不會出現(xiàn)沖突。時鐘的快慢決定了系統(tǒng)的工作效率,我們所說的計(jì)算機(jī)的主頻就是指系統(tǒng)時鐘的頻率,而在計(jì)算機(jī)系統(tǒng)中,系統(tǒng)的時鐘是有晶振電路來提供的??梢哉f晶振電路時單片機(jī)的心臟,18,19號引腳接的是110592M的晶振。332蜂鳴器報(bào)警電路原理圖6蜂鳴器報(bào)警功能電路蜂鳴器是一種一體化結(jié)構(gòu)的電子訊響器,采用直流電壓供電,廣泛應(yīng)用于計(jì)算機(jī)、打印機(jī)、復(fù)印機(jī)、報(bào)警器、電子玩具、汽車電子設(shè)備、電話機(jī)、定時器等電子產(chǎn)品中作發(fā)聲器件。蜂鳴器主要分為壓電式蜂鳴器和電磁式蜂鳴器兩種類型。壓電式蜂鳴器需要比較高的電壓才能有足夠的音壓,一般建議為9V以上。電磁式蜂鳴器用15V就可以發(fā)出85DB以上的音壓了,唯消耗電流會大大的高于壓電式蜂鳴器,電路中的電壓低,而采用壓電式蜂鳴器。1蜂鳴器發(fā)聲元件,在其兩端施加直流電壓或者方波就可以發(fā)聲。2續(xù)流二極管蜂鳴器本質(zhì)上是一個感性元件,其電流不能瞬變,因此必須有一個續(xù)流二極管提供續(xù)流。否則,在蜂鳴器兩端會產(chǎn)生幾十伏的尖峰電壓,可能損壞驅(qū)動三極管,并干擾整個電路系統(tǒng)的其它部分。3三極管濾波電容C1的作用是濾波,濾除蜂鳴器電流對其它部分的影響,也可改善電源的交流阻抗。蜂鳴器報(bào)警功能電路使用的是三極管8550驅(qū)動,三極管8550是PNP三極管,射極接電源5V,基極通過一個電阻連接到P10口,集電極接蜂鳴器,三極管Q1起開關(guān)作用,,當(dāng)P10為高電平時,三極管截止,蜂鳴器沒有不響,當(dāng)P10為低電平時,而三極管導(dǎo)通,蜂鳴器發(fā)出響聲。333電機(jī)驅(qū)動電路原理圖7電機(jī)驅(qū)動電路對于單向的電機(jī)驅(qū)動,只要用一個大功率三極管或場效應(yīng)管或繼電器直接帶動電機(jī)即可,而這次電路中電機(jī)驅(qū)動電路和蜂鳴器的電路基本相同,同樣使用8550三極管驅(qū)動,三極管的基極接P11,當(dāng)P11為高電平時,電機(jī)不轉(zhuǎn)動,當(dāng)P11為低電平時,電機(jī)轉(zhuǎn)動。需要調(diào)速,可以使用三極管,場效應(yīng)管等開關(guān)元件實(shí)現(xiàn)PWM(脈沖寬度調(diào)制)調(diào)速。(41PWM介紹)334按鍵功能電路原理圖8按鍵功能電路按鍵功能電路里面有兩種按鍵,一種按鍵是模仿水塔水位開關(guān)的功能按鈕,一種是電機(jī)PWM輸出的調(diào)整按鈕。原理是通過一個10K的電阻接到5V電源線上,當(dāng)按鍵沒有按下時,按鍵沒有導(dǎo)通,所以沒有電流,但對于連到引腳上的那一端來講是高電平。當(dāng)按鍵按下時,因?yàn)殡娐穼?dǎo)通,有電流流過,和單片機(jī)引腳接觸的那一端接地,所以是低電平。因此能檢測到信號的變化,交給程序處理后做出相關(guān)的動作。335液晶1602顯示功能電路圖圖9液晶1602顯示電路圖液晶顯示的原理是利用液晶的物理特性,通過電壓對其顯示區(qū)域進(jìn)行控制,有電就有顯示,這樣即可以顯示出圖形。液晶顯示器具有厚度薄、適用于大規(guī)模集成電路直接驅(qū)動、易于實(shí)現(xiàn)全彩色顯示的特點(diǎn),目前已經(jīng)被廣泛應(yīng)用在便攜式電腦、數(shù)字?jǐn)z像機(jī)、PDA移動通信工具等眾多領(lǐng)域。液晶1602從左到右依次有16根引腳,每個引腳定義不同。第1腳VSS為地電源。第2腳VDD接5V正電源。第3腳VL為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地時對比度最高,對比度過高時會產(chǎn)生“鬼影”,使用時可以通過一個10K的電位器調(diào)整對比度。第4腳RS為寄存器選擇,高電平時選擇數(shù)據(jù)寄存器、低電平時選擇指令寄存器。第5腳R/W為讀寫信號線,高電平時進(jìn)行讀操作,低電平時進(jìn)行寫操作。當(dāng)RS和R/W共同為低電平時可以寫入指令或者顯示地址,當(dāng)RS為低電平R/W為高電平時可以讀忙信號,當(dāng)RS為高電平R/W為低電平時可以寫入數(shù)據(jù)。第6腳E端為使能端,當(dāng)E端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。第714腳D0D7為8位雙向數(shù)據(jù)線。第15腳背光源正極。第16腳背光源負(fù)極。有三根控制引線和八根信號線,必須注意的一點(diǎn)是3號引腳是背光電源指示端。背光電阻選擇的不同有不同的結(jié)果。我們這里選擇27K電阻做為背光電阻。336系統(tǒng)總體原理圖設(shè)計(jì)系統(tǒng)總體原理圖即是這些功能電路的組合,主要包括最小系統(tǒng)電路、按鍵電路、電機(jī)和蜂鳴器驅(qū)動電路、液晶電路組成,還包括一個按鍵指示燈。詳細(xì)電路見附錄一。4系統(tǒng)的軟件設(shè)計(jì)C語言是一種結(jié)構(gòu)化語言。它層次清晰,便于按模塊化方式組織程序,易于調(diào)試和維護(hù)。C語言的表現(xiàn)能力和處理能力極強(qiáng)。它不僅具有豐富的運(yùn)算符和數(shù)據(jù)類型,便于實(shí)現(xiàn)各類復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。它還可以直接訪問內(nèi)存的物理地址,進(jìn)行位BIT一級的操作。由于C語言實(shí)現(xiàn)了對硬件的編程操作,因此C語言集高級語言和低級語言的功能于一體。既可用于系統(tǒng)軟件的開發(fā),也適合于應(yīng)用軟件的開發(fā)。此外,C語言還具有效率高,可移植性強(qiáng)等特點(diǎn)。因此廣泛地移植到了各類各型計(jì)算機(jī)上,形成了多種版本的C語言。41PWM調(diào)速控制概述411PWM脈寬調(diào)制簡介脈寬調(diào)制PWM是利用微處理器的數(shù)字輸出來對模擬電路進(jìn)行控制的一種非常有效的技術(shù),廣泛應(yīng)用在從測量、通信到功率控制與變換的許多領(lǐng)域中。而言之,PWM是一種對模擬信號電平進(jìn)行數(shù)字編碼的方法。只要帶寬足夠,任何模擬值都可以使用PWM進(jìn)行編碼。412PWM調(diào)節(jié)的具體過程脈沖寬度調(diào)制(PWM)是一種對模擬信號電平進(jìn)行數(shù)字編碼的方法。通過高分辨率計(jì)數(shù)器的使用,方波的占空比被調(diào)制用來對一個具體模擬信號的電平進(jìn)行編碼。這種微處理器要求在軟件中完成以下工作1、設(shè)置提供調(diào)制方波的片上定時器/計(jì)數(shù)器的周期。2、在PWM控制寄存器中設(shè)置接通時間。3、設(shè)置PWM輸出的方向,這個輸出是一個通用I/O管腳。4、啟動定時器。5、使能PWM控制器。42系統(tǒng)程序的設(shè)計(jì)421程序設(shè)計(jì)步驟程序設(shè)計(jì)就是用計(jì)算機(jī)所能接受的語言把所需解決問題的步驟逐一描述出來,也就是編制計(jì)算機(jī)的程序,在設(shè)計(jì)應(yīng)用系統(tǒng)時,軟件的編制是重要環(huán)節(jié)。軟件的質(zhì)量直接影響整個系統(tǒng)功能的實(shí)現(xiàn)。應(yīng)用程序的設(shè)計(jì)因系統(tǒng)而異,但程序設(shè)計(jì)總是有共同特點(diǎn)及其規(guī)律的。在編寫程序時,采取如下幾個步驟(1)分析問題,明確所要解決問題的要求。(2)定程序框圖。(3)合理分配系統(tǒng)資源。(4)根據(jù)程序的流程圖和指令系統(tǒng)編寫出程序。(5)程序調(diào)試。(6)程序優(yōu)化。422程序流程圖PWM調(diào)速按鍵調(diào)整子程序檢測是否有按鍵按下YN延時15MS,確定有按鍵按下N檢測哪一個按鍵按下先停止電機(jī),PWM速度增加液晶屏顯示速度值增加先停止電機(jī),PWM速度減少液晶屏顯示速度值減少減按鍵加按鍵圖10PWM按鍵調(diào)整子程序流程圖停止電機(jī),燈閃爍幾下,蜂鳴器響幾聲,液晶顯示正常檢測模擬水塔水位正常按鍵開始系統(tǒng)初始化,燈閃爍,蜂鳴器響一聲,液晶顯示進(jìn)入主程序等待狀態(tài)顯示速度啟動電機(jī),燈閃爍幾下,蜂鳴器響,液晶顯示低水位檢測模擬水塔水位按鍵檢測模擬水塔水位低按鍵NYNYPWM按鍵調(diào)制子程序NYPWM調(diào)速按鍵選擇電機(jī)的轉(zhuǎn)速圖11程序總體流程圖在進(jìn)入PWM按鍵子程序后,首先要做的事是先檢測是否確定有按鍵按下,這個過程延時15MS,在確認(rèn)有按鍵按下后,判斷是哪一個按鍵按下,如果是速度加按鍵按下,電機(jī)不管在什么狀態(tài),都是首先停止,然后是調(diào)整PWM調(diào)制時間,液晶屏顯示速度增加,按下減按鍵,也是先停止電機(jī),調(diào)整PWM調(diào)制時間,液晶屏顯示速度減少。具體流程圖如圖11所示。當(dāng)系統(tǒng)按下電源開關(guān),且確定有電源存在時候,系統(tǒng)進(jìn)入初始化狀態(tài),燈會閃爍、蜂鳴器響一聲、液晶初始化,初始化完以后,進(jìn)入PWM按鍵調(diào)速選擇,如有按鍵按下,進(jìn)入PWM按鍵調(diào)整子程序,若沒有,進(jìn)入主程序等待狀態(tài),檢測水塔水位的液位狀態(tài),當(dāng)模擬液位低水位按鍵按下后,電機(jī)以顯示速度啟動,模擬抽水過程,此時蜂鳴器報(bào)警,燈閃爍,且液晶會顯示水位過低狀態(tài)。當(dāng)模擬水位正常按鍵按下后,電機(jī)停止轉(zhuǎn)動,蜂鳴器報(bào)警、液晶顯示當(dāng)前正常狀態(tài),然后程序進(jìn)入循環(huán),繼續(xù)檢測模擬水位狀態(tài)按鍵。具體流程圖的如圖42所示。43程序源代碼程序源代碼使用C語言編寫,使用C語言編寫程序效率高,調(diào)用方便。程序主要由LCD1602液晶驅(qū)動子程序,電機(jī)PWM調(diào)速功能子程序、按鍵掃描子程序等功能程序組成,詳細(xì)源代碼見附錄二。5調(diào)試本系統(tǒng)的調(diào)試主要分為程序調(diào)試、電路調(diào)試等兩大部分。兩個部分交替聯(lián)合進(jìn)行,這樣有利于問題的分析和解決,不會造成問題的積累,而且不會因?yàn)橐粋€小問題而進(jìn)行整體電路的檢查,從而可以節(jié)約大量的調(diào)試時間。軟件編程中,首先編寫單元模塊的程序,并且在電路上調(diào)試成功問題,即可以做系統(tǒng)整體程序的調(diào)試。聯(lián)機(jī)調(diào)試是最重要的一部分,同時也是本設(shè)計(jì)成功的關(guān)鍵。6總結(jié)根據(jù)設(shè)計(jì)的結(jié)果和實(shí)驗(yàn)的分析可知1利用液晶顯示器不僅可以顯示內(nèi)容。2對單片機(jī)和液晶顯示器的連接,能對液晶顯示內(nèi)容進(jìn)行可靠直觀。3液晶水位測量顯示功能強(qiáng)大,能實(shí)時監(jiān)測水位,提供可靠數(shù)據(jù)。4液晶水位測量顯示操作簡單,顯示內(nèi)容豐富。參考文獻(xiàn)1陳學(xué)煌,馬俊電子自旋共振儀中嵌入單片機(jī)測控系統(tǒng)的設(shè)計(jì)J傳感器技術(shù),2005,24(12)61632王建新,楊世鳳,史永江系統(tǒng)測試中的軟件抗干擾技術(shù)J國外電子測量技術(shù),2005,24(10)18203李剛民,曹巧媛單片機(jī)原理及使用技術(shù)M北京高等教育出版社,2005,242262634徐愛鈞8051單片機(jī)實(shí)踐教程M北京電子工業(yè)出版社,2006,24(10)21235胡漢才單片機(jī)原理及其接口技術(shù)M2版北京清華大學(xué)出版社,2004,22(11)17206周潤景PROTEUS入門實(shí)用教程M北京機(jī)械工業(yè)出版社,2007,24(10)24267徐模輝PROTUES單片機(jī)仿真中的UC/OSII移植J單片機(jī)與嵌入式系,2007(10)74768丁元杰單片微機(jī)原理及應(yīng)用機(jī)械工業(yè)出版社,200081889騰召勝,羅隆福智能檢測系統(tǒng)與數(shù)據(jù)融合機(jī)械工業(yè)出版社,2009(11)687010孫虎章自動控制原理中央廣播電視大學(xué)出版社,1999(10)346611劉國榮單片微型計(jì)算機(jī)技術(shù)機(jī)械工業(yè)出版社,2003(24)702612張迎新單片微型計(jì)算機(jī)原理應(yīng)用及接口技術(shù)國防工業(yè)出版社,2006(50)717613房小翠單片機(jī)實(shí)用系統(tǒng)設(shè)計(jì)技術(shù)國防工業(yè)出版社,2009(14)444614何立民單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)北航出版社,2010(33)242615曹琳琳單片機(jī)原理及接口技術(shù)國防科技大學(xué)出版社,2006(55)848616INTELMICROCONTROLLERHANDBOOK,2008(12)242617ATMELCORPORATIONAT90S8515REV72001,2009(22)363918JOECAMPBELL串行通信C程序指南M北京清華大學(xué)出版社1995,313219德克勞斯貝伊特電子元件M北京北京科技出版設(shè),2008(12)444620超星數(shù)字圖書館HTTP/WWWSSREADERCOMCN21中國電子網(wǎng)HTTP/WWW21ICCOM22軟件世界雜志HTTP/WWWSOFTWAREWORLDCOMCN附錄附圖A仿真準(zhǔn)備附錄B仿真成功附錄C程序源代碼INCLUDEDEFINEUINTUNSIGNEDINTDEFINEUCHARUNSIGNEDCHARSBITLEDP01/LED燈顯示,低電平亮SBITSPEAKERP10/蜂鳴器,低電平報(bào)警SBITLCD_RSP07/1602數(shù)據(jù)選擇命令端SBITLCD_RWP06/1602讀寫選擇端SBITLCD_ENABLEP05/1602使能端定義SBITKEY_UPP30/PWM速度調(diào)整端口,電機(jī)速度加一SBITKEY_DOWNP31/PWM速度調(diào)整端口,電機(jī)速度減一SBITMONTERP11/電機(jī)驅(qū)動端口,PWM控制輸出SBITWATER_NORMALP16/水位過高傳感器模擬按鍵端口,低電平報(bào)警SBITWATER_LOWP17/水位過低傳感器模擬按鍵端口,低電平報(bào)警UCHARCODEPWM_T45,90,100,130/模式下的PWM值,人為已經(jīng)設(shè)定的時間是100,可以調(diào)整上限值UINTMODEL1,PWMT150,TIME_COUNT0VOIDKEY_SCAN/按鍵掃描函數(shù)VOIDCHECK_WATER_LEVEL/檢測水位是否正常函數(shù)VOIDDELAYUINTZ/延時函數(shù)UINTX,YFORXZX0XFORY110Y0Y/1602液晶顯示函數(shù)/VOIDLCD_WRITE_COMDUCHARCOMD/1602寫指令函數(shù)LCD_RS0/選擇指令LCD_RW0/選擇寫DELAY5P2COMD/取命令DELAY8LCD_ENABLE1/使能有效DELAY8LCD_ENABLE0VOIDLCD_WRITE_DATAUCHARDATE/1602寫數(shù)據(jù)函數(shù)LCD_RS1/選擇數(shù)據(jù)LCD_RW0/選擇寫操作DELAY5P2DATE/取數(shù)據(jù)操作DELAY8LCD_ENABLE1/使能有效DELAY8LCD_ENABLE0VOIDLCD_SET_XYUCHARX,UCHARY/定位具體位置UINTADDRESSIFY1ADDRESS0X80X/第一行的位置ELSEADDRESS0XC0X/第二行的位置LCD_WRITE_COMDADDRESSVOIDLCD_WRITE_CHARUCHARX,UCHARY,UCHARDATE/寫一個字符函數(shù)LCD_SET_XYX,Y/設(shè)定位置LCD_WRITE_DATADATE/寫入數(shù)據(jù)VOIDLCD_WRITE_STRINGUCHARX,UCHARY,UCHARS/寫一個字符串函數(shù)LCD_SET_XYX,Y/設(shè)定位置WHILES/循環(huán)寫入數(shù)據(jù)LCD_WRITE_DATASS/電機(jī)PWM調(diào)速函數(shù)及程序主函數(shù)/VOIDINIT/初始化函數(shù)UCHARI,COUNT25LED1/開機(jī)LED燈閃爍FORI0I15ILEDLEDDELAYCOUNTCOUNTCOUNT5LED0LCD_WRITE_COMD0X38/設(shè)置162行顯示,57點(diǎn)陣,8位數(shù)據(jù)接口LCD_WRITE_COMD0X0C/開顯示LCD_WRITE_COMD0X01/清屏LCD_WRITE_COMD0X80

溫馨提示

  • 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

提交評論