基于單片機的水位控制器畢業(yè)設(shè)計_第1頁
基于單片機的水位控制器畢業(yè)設(shè)計_第2頁
基于單片機的水位控制器畢業(yè)設(shè)計_第3頁
基于單片機的水位控制器畢業(yè)設(shè)計_第4頁
基于單片機的水位控制器畢業(yè)設(shè)計_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

單片機課程設(shè)計題目基于單片機的水位控制器姓名學(xué)號指導(dǎo)教師___成績摘要本設(shè)計是利用AT89C51單片機設(shè)計的一種水位控制器。主要是基于單片機的硬件設(shè)計以及程序設(shè)計。該系統(tǒng)實現(xiàn)了實時水位監(jiān)測,水位控制,水位顯示。在設(shè)計中主要采用了傳感技術(shù)、單片機技術(shù)、模數(shù)轉(zhuǎn)換、C語言編程等技術(shù)。本文還講述了水位控制器工作的基本原理,介紹了電路接口原理圖,給出了相應(yīng)的設(shè)計流程圖和C語言程序。本文主要是為了使讀者更多的了解單片機,掌握單片機的組成部分和控制原理,了解模數(shù)轉(zhuǎn)換的工作原理,以及單片機控制水位是如何工作的。實驗證明,單片機控制的水位控制器的硬件電路簡單,軟件功能完善,控制系統(tǒng)可靠,充分發(fā)揮了單片機的性能,可以大大的提高單片機的開發(fā)效率。關(guān)鍵詞:AT89C51單片機、模數(shù)轉(zhuǎn)換、水位控制i --目錄摘要目錄第一章系統(tǒng)功能要求1.1課程設(shè)計題目1.2課程設(shè)計用材第二章設(shè)計方案論證2.1設(shè)計方案第三章系統(tǒng)硬件電路的設(shè)計3.1主要芯片簡介1.1AT89C51簡介3.1.2AT89C51的引腳功能ATC89C51基本電路復(fù)位電路晶振電路A/D轉(zhuǎn)換器ADC0809簡介3.3.2ADC0809引腳功能3.3.3ADC0809應(yīng)用說明3.4數(shù)碼管顯示電路3.4.1數(shù)碼管簡介3.4.2數(shù)碼管工作原理3.4.3數(shù)碼管顯示電路第四章系統(tǒng)程序的設(shè)計4.1程序設(shè)計方案第五章調(diào)試及性能分析5.1軟件調(diào)試5.2仿真結(jié)果5.3性能分析參考文獻附件附件一設(shè)計總電路圖和仿真結(jié)果附件二程序第一章系統(tǒng)功能要求1.1課程設(shè)計題目設(shè)計出一個用單片機控制的水位控制器。1.2課程設(shè)計用材電烙鐵,錫絲,,PCB板,AT89C51單片機,ADC0809,晶振,數(shù)碼管,發(fā)光LED(紅綠各一個),繼電器,水位傳感器,電機,各種不同阻值電阻,各種型號電容,導(dǎo)線,杜邦線等等。第二章設(shè)計方案論證2.1設(shè)計方案硬件選擇:選擇AT89C51作為單片機芯片、ADC0809實現(xiàn)模數(shù)轉(zhuǎn)換、WaterSensorforArduino水位傳感器實現(xiàn)信號采集。軟件開發(fā)環(huán)境:用Proteus7Professional軟件畫電路圖、KeiluVision4軟件進行程序編寫。第三章系統(tǒng)硬件電路的設(shè)計3.1主要芯片簡介3.1.1AT89C51簡介單片機是將微處理器、一定容量的ROM和RAM以及I/O口、定時器等電路集成在一塊芯片上,構(gòu)成的單片微型計算機。AT89C51是一種帶4K字節(jié)FLASH存儲器(FPEROM—FlashProgrammableandErasableReadOnlyMemory)的低電壓、高性能CMOS8位微處理器,俗稱單片機。AT89C2051是一種帶2K字節(jié)閃存可編程可擦除只讀存儲器的單片機。AT89C51提供以下標(biāo)準(zhǔn)功能:4k字節(jié)Flash閃速存儲器,128字節(jié)內(nèi)部RAM,32個I/O口線,兩個16位定時/計數(shù)器,一個5向量兩級中斷結(jié)構(gòu),一個全雙工串行通信口,片內(nèi)振蕩器及時鐘電路。同時,AT89C51可降至0Hz的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式。空閑方式停止CPU的工作,但允許RAM,定時/計數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存RAM中的內(nèi)容,但振蕩器停止工作并禁止其它所有部件工作直到下一個硬件復(fù)位。3.1.2AT89C51的引腳功能AT89C51有40個引腳,32個外部雙向輸入/輸出(I/O端)口,同時內(nèi)含2個外中斷口,3個16位可編程定時計數(shù)器,2個全雙工串行通信口,2個讀寫口線,AT89C51可以按照常規(guī)方法進行編程,也可以在線編程。其將通用的微處理器和Flash存儲器結(jié)合在一起,特別是可反復(fù)擦寫的Flash存儲器可有效地降低開發(fā)成本。引腳配置如圖1.1所示。圖3.1AT89C51引腳圖VSS:接地端。VCC:電源端。P0.0-P0.7:通道0,雙向I/O口。第二功能是在訪問外部存儲器時可分時用作低8位地址線和8位數(shù)據(jù)線,在編程和檢驗時,用于數(shù)據(jù)的輸入和輸出。P1.0-P1.7:通道1,雙向I/O口,在編程和檢驗是,用于接收地址字節(jié)。P2.0-P2.7:通道2,雙向I/O口,在第二功能是在訪問外部存儲器時,輸出高8位地址,在編程和檢驗時,用做高位地址字節(jié)和控制信號。P3.0-3.7:雙向I/O口,每條線都有自己的功能,如表3.1所示。表3.1P3口各位的第二功能P3P3口各位第二功能P3.0RTD(串行口輸出)P3.1TXD(串行口輸入)P3.20INT(外部中斷0輸入)P3.31INT(外部中斷1輸入)P3.4T0(定時器/計數(shù)器0的外部輸入)P3.5T1(定時器/計數(shù)器1的外部輸入)P3.6WR(片外數(shù)據(jù)存儲器寫信號)P3.7RD(片外數(shù)據(jù)存儲器讀信號)ALE:地址鎖存允許線,在訪問外部存儲器是,用來鎖存P0口送出的低8位地址信號。在不訪問外部存儲器是,ALE也震蕩頻率的六分之一的固定速率輸出,此時,它可用做外部時鐘和外不定時。但若要訪問外部存儲器,則ALE不是連續(xù)周期脈沖,無法用做時鐘信號。EA:片外存儲器訪問選擇線,可以控制89C52使用片內(nèi)ROM或使用片外ROM,若是EA=1,則允許使用片內(nèi)ROM;若是EA=0,則只使用片外ROM。PSEN:片外ROM的選通線,在訪問片外ROM時,89C52自動在PSEN線上產(chǎn)生一個負(fù)脈沖,作為片外ROM芯片的讀選通信號。RST:復(fù)位線,可以使89C52處于復(fù)位(即初始化)工作狀態(tài)。通常89C51復(fù)位有自動上電復(fù)位和人工按鍵復(fù)位兩種。XTAL1和XTAL2:片內(nèi)震蕩電路輸入線,這兩個端口用來外接石英晶體和微調(diào)電容,即用來連接89C52片內(nèi)OSC(震蕩器)的定時反饋回路。AT89C52中有一個用于構(gòu)成內(nèi)部振蕩器的高增益反相放大器,引腳XTAL1和XTAL2分別是該放大器的輸入端和輸出端。這個放大器與作為反饋元件的片外石英晶體或陶瓷諧振器一起構(gòu)成自激振蕩器。3.2ATC89C51基本電路3.2.1復(fù)位電路復(fù)位是使單片機處于某種確定的初始狀態(tài)。單片機工作從復(fù)位開始。在單片機RST引腳引入高電平并保持2個機器周期,單片機就執(zhí)行復(fù)位操作。復(fù)位操作有兩種基本方式:一種是上電復(fù)位,另一種是上電與按鍵均有效的復(fù)位。復(fù)位電路如圖3.2所示。開機瞬間RST獲得高電平,隨著電解電容C3的充電,RST引腳的高電平將逐漸下降。若該高電平能保持足夠2個機器周期,就可以實現(xiàn)復(fù)位操作。根據(jù)經(jīng)典電路選擇參數(shù),選取C3=10μF,R1=10KΩ。圖3.2復(fù)位電路圖3.2.2晶振電路單片機的時鐘信號通常有兩種產(chǎn)生方式:一是內(nèi)部時鐘方式,二是外部時鐘方式。內(nèi)部時鐘方式是利用單片機內(nèi)部的振蕩電路產(chǎn)生時鐘信號。外部時鐘方式是把外部已有的時鐘信號引入到單片機內(nèi)。本次設(shè)計中,采用的是12MHz晶振,配上30pF的電容,構(gòu)成諧振,這樣有助于輸出穩(wěn)定的波形。如圖3.3所示。圖3.3晶振電路圖ADC0809是ADC0809是8位逐次逼近型A/D轉(zhuǎn)換器。它由一個8路模擬開關(guān)、一個地址鎖存譯碼器、一個A/D轉(zhuǎn)換器和一個三態(tài)輸出鎖存器組成。多路開關(guān)可選通8個模擬通道,允許8路模擬量分時輸入,共用A/D轉(zhuǎn)換器進行轉(zhuǎn)換。三態(tài)輸出鎖存器用于鎖存A/D轉(zhuǎn)換完的數(shù)字量,當(dāng)OE端為高電平時,才可以從三態(tài)輸出鎖存器取走轉(zhuǎn)換完的數(shù)據(jù)。3.3.2ADC0809引腳功能圖3.4ADC0809引腳C1=C2=30PF。其中晶振周期(或外部時鐘信號周期)為最小的時序單位。3.3A/D轉(zhuǎn)換器3.3.1ADC0809簡介

ADC0809各腳功能如下:D7-D0:8位數(shù)字量輸出引腳。IN0-IN7:8位模擬量輸入引腳。VCC:+5V工作電壓。GND:地。REF(+):參考電壓正端。REF(-):參考電壓負(fù)端。START:A/D轉(zhuǎn)換啟動信號輸入端。ALE:地址鎖存允許信號輸入端。(以上兩種信號用于啟動A/D轉(zhuǎn)換)。EOC:轉(zhuǎn)換結(jié)束信號輸出引腳,開始轉(zhuǎn)換時為低電平,當(dāng)轉(zhuǎn)換結(jié)束時為高電平。OE:輸出允許控制端,用以打開三態(tài)數(shù)據(jù)輸出鎖存器。CLK:時鐘信號輸入端(一般為500KHz)。B、C:地址輸入線。如圖3.5選擇信號輸入通道。圖3.5ADC0809通道選擇ADC0809對輸入模擬量要求:信號單極性,電壓范圍是0-5V,若信號太小,必須進行放大;輸入的模擬量在轉(zhuǎn)換過程中應(yīng)該保持不變,如若模擬量變化太快,則需在輸入前增加采樣保持電路。地址輸入和控制線:4條ALE為地址鎖存允許輸入線,高電平有效。當(dāng)ALE線為高電平時,地址鎖存與譯碼器將A,B,C三條地址線的地址信號進行鎖存,經(jīng)譯碼后被選中的通道的模擬量進入轉(zhuǎn)換器進行轉(zhuǎn)換。A,B和C為地址輸入線,用于選通IN0-IN7上的一路模擬量輸入。通道選擇表如下表所示。3.3.3ADC0809應(yīng)用說明ADC0809內(nèi)部帶有輸出鎖存器,可以與AT89S51單片機直接相連。初始化時,使ST和OE信號全為低電平。送要轉(zhuǎn)換的哪一通道的地址到A,B,C端口上。在ST端給出一個至少有100ns寬的正脈沖信號。是否轉(zhuǎn)換完畢,我們根據(jù)EOC信號來判斷。當(dāng)EOC變?yōu)楦唠娖綍r,這時給OE為高電平,轉(zhuǎn)換的數(shù)據(jù)就輸出給單片機了。圖3.63.4.1數(shù)碼管簡介led數(shù)碼管(LEDSegmentDisplays)是由多個發(fā)光二極管封裝在一起組成“8”字型的器件,引線已在內(nèi)部連接完成,只需引出它們的各個筆劃,公共電極。按發(fā)光二極管單元連接方式可分為共陽極數(shù)碼管和共陰極數(shù)碼管。共陽數(shù)碼管是指將所有發(fā)光二極管的陽極接到一起形成公共陽極(COM)的數(shù)碼管,共陽數(shù)碼管在應(yīng)用時應(yīng)將公共極COM接到+5V,當(dāng)某一字段發(fā)光二極管的陰極為低電平時,相應(yīng)字段就點亮,當(dāng)某一字段的陰極為高電平時,相應(yīng)字段就不亮。共陰數(shù)碼管是指將所有發(fā)光二極管的陰極接到一起形成公共陰極(COM)的數(shù)碼管,共陰數(shù)碼管在應(yīng)用時應(yīng)將公共極COM接到地線GND上,當(dāng)某一字段發(fā)光二極管的陽極為高電平時,相應(yīng)字段就點亮,當(dāng)某一字段的陽極為低電平時,相應(yīng)字段就不亮。3.4.2數(shù)碼管工作原理根據(jù)其引腳接線,點亮相應(yīng)的LED,即可得到想要的顯示。3.4.3數(shù)碼管顯示電路此數(shù)碼管為共陰極接法,接一個上拉電阻后,接入單片機的P0端口,由P0口控制輸出,高電平點亮相應(yīng)的二極管。圖3.7數(shù)碼管顯示電路第四章系統(tǒng)程序的設(shè)計4.1程序設(shè)計方案對端口賦初值啟動定時器模擬信號采集轉(zhuǎn)換判斷按鍵按下情況顯示實時數(shù)據(jù)控制電機啟停控制指示燈亮滅程序準(zhǔn)備,定義端口4.2程序見附件二第五章調(diào)試及性能分析5.1軟件調(diào)試本設(shè)計的調(diào)試主要用到keil和protues軟件。其中,系統(tǒng)電路圖的繪制和仿真采用的是Proteus軟件,而C語言程序用Keil軟件調(diào)試并把程序?qū)懭雴纹瑱C。軟件調(diào)試結(jié)果如圖5.1所示。圖5.1軟件調(diào)試5.2仿真結(jié)果仿真結(jié)果見附件一。5.3性能分析本次課程設(shè)計所應(yīng)用到的軟件有:KEIL,PROTEUS這兩個軟件,兩個軟件結(jié)合起來用對這個設(shè)計有著至關(guān)重要的作用。軟件調(diào)試是通過s進行的,此軟件不多介紹了,功能強大,是學(xué)習(xí)電路的好幫手。但進行軟件仿真的時候,卻一直沒有出現(xiàn)結(jié)果。這就要我們進行錯誤的排查,這就包括各個端口的檢查和分析。由于網(wǎng)上下載了中文補丁,因此對于我們初學(xué)者來說難度降低了不少,仿真軟件proteus仿真時按鍵數(shù)碼管老是加二,最后發(fā)現(xiàn)是個按鍵的延時太短了,增加延時后才實現(xiàn)加一,不僅要看電路是否有問題,c語言編程也要檢查。在實物的制作過程中遇到的麻煩更大,其中鍛煉動手能力還是很好的,首先對于那些硬件都不怎么熟悉,這得就需要我們?nèi)ゲ殚啎Y料,一個元器件的接口有什么功能、在哪里,平常我們在書本上只能想象一下,現(xiàn)在拿到硬件了又該如何是好,大部分的硬件只有一個名字,其余的引腳全部要查閱相關(guān)資料。還有在焊接的過程中對于東西的使用也是很有講究和技巧的。了解助焊劑與焊錫絲的關(guān)系,如何使用,怎么用得安全對于我們動手少的人來說是很有難度的。因此在第一次做的時候,線路極其混亂,出現(xiàn)了很多錯誤,沒辦法只有一次次的檢查,重新排版、焊接,找到錯誤的地方。參考文獻李朝青.單片機原理及接口技術(shù)[M].4版.北京:北京航空航天大學(xué)出版社,2013.7郭天祥.新概念51單片機C語言教程[M].北京:電子工業(yè)出版社,2009.1康光華.數(shù)字電路基礎(chǔ)數(shù)字部分[M].5版.北京:高等教育出版社,2006.1附件附件一設(shè)計總電路圖和仿真結(jié)果附件二程序#include<reg52.h>//頭文件#defineucharunsignedchar//宏定義無符號字符型#defineuintunsignedint//宏定義無符號整型sbitST=P3^1;//A/D啟動轉(zhuǎn)換信號sbitOE=P3^3;//數(shù)據(jù)輸出允許信號sbitEOC=P3^2;//A/D轉(zhuǎn)換結(jié)束信號sbitCLK=P3^0;//時鐘脈沖sbitb1=P3^4;sbitb2=P3^5;sbitb3=P3^6;sbitb4=P3^7;sbitkey1=P1^0;sbitkey2=P1^1;sbitkey3=P1^2;sbitkey4=P1^3;sbitkey5=P1^4;sbitkey6=P1^5;sbitkey7=P1^6;sbitOUT=P1^7;sbitzsd1=P3^6;sbitzsd2=P3^7;uintz,x,c,v,AD0809,date,sw,reng;//定義數(shù)據(jù)類型unsignedcharleddata[]={0x3F,//"0"0x06,//"1"0x5B,//"2"0x4F,//"3"0x66,//"4"0x6D,//"5"0x7D,//"6"0x07,//"7"0x7F,//"8"0x6F,//"9"0x77,//"A"0x7C,//"B"0x39,//"C"0x5E,//"D"0x79,//"E"0x71,//"F"0x76,//"H"0x38,//"L"0x37,//"n"0x3E,//"u"0x73,//"P"0x5C,//"o"0x40,//"-"0x00,//熄滅0x00//自定義};/*************************************************************************CLK振蕩信號**************************************************************************/voidtimer0()interrupt1//定時器0工作方式1{TH0=(65536-2)/256;//重裝計數(shù)初值TL0=(65536-2)%256;//重裝計數(shù)初值CLK=!CLK;//取反}voidanniu(){if(key1==0){sw=8;reng=0;}if(key2==0){sw=5;reng=0;}if(key3==0){sw=4;reng=0;}if(key4==0){sw=3;reng=0;}if(key5==0){sw=2;reng=0;}if(key6==0){sw=1;reng=0;}if(key7==0){reng=1;}if(reng==1){OUT=key7;zsd2=key7;}}voidxianshi(){P0=leddata[date];if(date>=sw&&reng==0){OUT=1;zsd2=1;}elseif(d

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論