畢業(yè)設(shè)計-基于單片機(jī)的數(shù)字電壓表設(shè)計_第1頁
畢業(yè)設(shè)計-基于單片機(jī)的數(shù)字電壓表設(shè)計_第2頁
畢業(yè)設(shè)計-基于單片機(jī)的數(shù)字電壓表設(shè)計_第3頁
畢業(yè)設(shè)計-基于單片機(jī)的數(shù)字電壓表設(shè)計_第4頁
畢業(yè)設(shè)計-基于單片機(jī)的數(shù)字電壓表設(shè)計_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

目錄第一章引言……………………21.1內(nèi)容摘要………………21.2設(shè)計目的………………21.3設(shè)計任務(wù)……………21.4課程設(shè)計過程…………2第二章數(shù)字電壓表簡介……………32.1數(shù)字電壓表的介紹………………32.2數(shù)字電壓表工作原理……………3第三章總體方案設(shè)計…………………3第四章硬件局部的設(shè)計…………44.1AT89C51內(nèi)部結(jié)構(gòu)概述……………………44.2P0-P3口結(jié)構(gòu)……………44.3時鐘電路和復(fù)位電路……………………64.4顯示電路…………………74.5模數(shù)〔A/D〕轉(zhuǎn)換電路……………………8第五章系統(tǒng)軟件的設(shè)計………85.1主程序………………………95.2顯示子程序…………………95.3.模/數(shù)據(jù)轉(zhuǎn)換測量子程序…………………11第六章系統(tǒng)的調(diào)試……………136.1硬件調(diào)試……………………136.2軟件調(diào)試……………………14七心得體會……………………14八參考文獻(xiàn)………………15九附錄……………16整體電路圖…………………16源程序清單………………17中斷延時程序清單……………………23產(chǎn)品圖……………………30元器件清單………………31基于單片機(jī)的數(shù)字電壓表的設(shè)計第一章引言摘要:單片機(jī)是一種集成電路芯片,采用超大規(guī)模技術(shù)把具有數(shù)據(jù)處理能力〔如算術(shù)運(yùn)算,邏輯運(yùn)算,數(shù)據(jù)傳送,中斷處理〕的微處理器〔CPU〕。隨著單片機(jī)技術(shù)的飛速開展,各種單片機(jī)蜂擁而至,單片機(jī)技術(shù)已成為一個國家現(xiàn)代化科技水平的重要標(biāo)志。單片機(jī)可單獨(dú)地完成現(xiàn)代工業(yè)控制所要求的智能化控制功能,這是單片機(jī)最大的特征。本次設(shè)計主要解決A/D轉(zhuǎn)換、數(shù)據(jù)處理及顯示鍵盤控制等模塊??刂葡到y(tǒng)采用AT89S52單片機(jī),A/D轉(zhuǎn)換采用ADC0809。顯示采用4位LED顯示數(shù)碼管的具有電壓測量功能的具有一定精度的數(shù)字電壓表。簡易數(shù)字電壓表可以測量0~5V的3路輸入電壓值,并在四位LED數(shù)碼管上輪流顯示或單路選擇顯示。測量最小分辨為0.020V,測量誤差約為±0.02V。關(guān)鍵字:A/D轉(zhuǎn)換顯示電路AT89S52單片機(jī)鍵盤電路abstractsinglechipisaroundofintegratedcircuitchip,usingthetechnologyhasseverallargescaleaccordingtoprocessingpower(suchasarithmeticoperations,logicoperations,datatransfer,interrupthandling)ofthemicroprocessor(CPU).Withtherapiddevelopmentofthesinglechipmicrocomputer,allkindsofsinglechipingreatNumbers,microcontrollertechnologyhasbecomeanationalmodernizationlevelofscienceandtechnology.SCMcancompletemodernindustrialcontrolalonefortheintelligentcontrolfunction,itisthegreatestfeatureofsinglechipmicrocomputer.ThisdesignmainlytosolveA/Dconversion,dataprocessinganddisplaythekeyboardcontrolmodule.AT89S52SCMcontrolsystemadopts,A/DconversionusingADC0809.ShowsthefourLEDdisplaydigitaltubewithvoltagemeasurementofthefunctionhassomeprecisionofthedigitalvoltmeter.Simpledigitalvoltmetercanmeasure0~5V3roadinputvoltagevalues,andinthefourLEDdigitaldisplayortakingturnsonthesingleoptiontoshow.Leastdistinguishableformeasuring0.020V,measurementerrorabout+/-0.02V.Keywords:A/DconversiondisplaycircuitAT89S52SCMkeyboardcircuit1、設(shè)計目的本課程的任務(wù)是使學(xué)生通過“簡易數(shù)字電壓表的設(shè)計〞的設(shè)計過程,綜合所學(xué)課程,掌握目前自動化儀表的一般設(shè)計要求,工程設(shè)計方法,開發(fā)及設(shè)計工具的使用方法,通過這一設(shè)計實(shí)踐過程,鍛煉學(xué)生的動手能力和分析,解決問題的能力;積累經(jīng)驗(yàn),培養(yǎng)按部就班,一絲不茍的工作個對所學(xué)知識的綜合應(yīng)用能力。2、設(shè)計任務(wù)及要求設(shè)計一個簡易數(shù)字電壓表,檢測電壓0—5V,檢測精度0.02V。擴(kuò)展到3路巡檢。有鍵盤電路。有適當(dāng)?shù)目垢蓴_措施。3、課程設(shè)計過程獨(dú)立完成系統(tǒng)設(shè)計,經(jīng)指導(dǎo)老師同意進(jìn)行具體方案實(shí)施。用DXP畫出PCB圖。做出PCB板。獨(dú)立完成軟硬件系統(tǒng)調(diào)試。軟硬件仿真。焊接電路。

數(shù)字電壓表簡介2.1數(shù)字電壓表的介紹數(shù)字電壓表簡稱DVM,是采用數(shù)字化測量技術(shù),把連續(xù)的模擬量轉(zhuǎn)換成不連續(xù)的,離散的的數(shù)字形式并加以顯示的儀表。與傳統(tǒng)的模擬儀表比擬,具有顯示直觀,讀數(shù)準(zhǔn)確,測量范圍寬,擴(kuò)展功能強(qiáng)等優(yōu)點(diǎn)。適合于數(shù)學(xué)實(shí)驗(yàn)演示及測控設(shè)備儀表等多種場合。數(shù)字電壓表是諸多數(shù)字化儀表的核心與根底,電壓表的數(shù)字化是將連續(xù)的模擬量如直流電壓轉(zhuǎn)換成不連續(xù)的離散數(shù)字形式并加以顯示這有別于傳統(tǒng)的以指針加刻度盤進(jìn)行讀數(shù)的方法,防止了讀數(shù)的視差和視覺疲勞。目前數(shù)字萬用表的內(nèi)部核心部件是A/D轉(zhuǎn)換器,轉(zhuǎn)換器的精度很大程度上影響著數(shù)字萬用表的準(zhǔn)確度。

2.2數(shù)字電壓表的根本結(jié)構(gòu)及工作原理數(shù)字電壓表是諸多數(shù)字化儀表的核心與根底,電壓表的數(shù)字化是將連續(xù)的模擬量如直流電壓轉(zhuǎn)換成不連續(xù)的離散的數(shù)字形式并加以顯示,這有別于傳統(tǒng)的以指針加刻度盤進(jìn)行讀數(shù)的方法,防止了讀數(shù)的視差和視覺疲勞。目前數(shù)字電壓表的內(nèi)部核心部件是A/D轉(zhuǎn)換器,轉(zhuǎn)換器的精度很大程度上影響著數(shù)字電壓表的準(zhǔn)確度,數(shù)字式電壓表是由高阻抗電壓表頭與分壓電路組成的。1.各局部的功能位A/D轉(zhuǎn)換器:將輸入的模擬信號轉(zhuǎn)換成數(shù)字信號?;鶞?zhǔn)電源:提供精密電壓,供A/D轉(zhuǎn)換器作參考電壓。譯碼器:將二-十進(jìn)制〔BCD〕碼轉(zhuǎn)換成七段信號。驅(qū)動器:驅(qū)動顯示器的a、b、c、d、e、f、g七個發(fā)光段,驅(qū)動發(fā)光數(shù)碼管〔LED〕進(jìn)行顯示。顯示器:將譯碼輸出的七段信號進(jìn)行數(shù)字顯示,讀出A/D轉(zhuǎn)換結(jié)果。

第三章總體方案設(shè)計按系統(tǒng)功能實(shí)現(xiàn)要求,決定控制系統(tǒng)采用AT89S52單片機(jī),A/D轉(zhuǎn)換采用ADC0809,顯示采用LED七段共陽極數(shù)碼管。系統(tǒng)除能確保實(shí)現(xiàn)單/多路選擇,通道號選擇,復(fù)位控制的功能外,還可以方便地進(jìn)行其它8路模擬量的測量。簡易數(shù)字電壓表設(shè)計方案框圖如圖1圖1簡易數(shù)字電壓表設(shè)計方案

第四章硬件局部的設(shè)計簡易數(shù)字電壓測量電路由A/D轉(zhuǎn)換、數(shù)據(jù)處理及顯示控制等組成,電路原理圖如下圖〔見附錄圖一〕。A/D轉(zhuǎn)換由集成電路0809完成。0809具有8路模擬輸入端口,地址線〔23~-25腳〕可決定對哪一路模擬輸入作A/D轉(zhuǎn)換。22腳為地址鎖存控制,當(dāng)輸入為高電平時,對地址信號進(jìn)行鎖存。6腳為測試控制,當(dāng)輸入一個2uS寬高電平脈沖時,就開始A/D轉(zhuǎn)換。7腳為A/D轉(zhuǎn)換結(jié)束標(biāo)志,當(dāng)A/D轉(zhuǎn)換結(jié)束時,7腳輸出高電平。9腳為A/D轉(zhuǎn)換數(shù)據(jù)輸出允許控制,當(dāng)OE腳為高電平時,A/D轉(zhuǎn)換數(shù)據(jù)從該端口輸出。10腳為0809的時鐘輸入端,利用單片機(jī)30腳的六分頻晶振頻率再通過14024二分頻得到1MHz時鐘。單片機(jī)的P1、P3.0~P3.3端口作為四位LED數(shù)碼管顯示控制。P3.5端口用作單路顯示/循環(huán)顯示轉(zhuǎn)換按鈕,P3.6端口用作單路顯示時選擇通道。P0端口作A/D轉(zhuǎn)換數(shù)據(jù)讀入用,P2端口用作0809的A/D轉(zhuǎn)換控制。 4.1AT89S52內(nèi)部結(jié)構(gòu)概述概述:AT89S52是低電壓高性能的8位CMOS微控制器,8K字節(jié)可在線編程〔ISP〕的flash存儲區(qū)。AT89S52采用Atmel高密度非易失性存儲技術(shù),兼容80C51指令集和管腳。片上flash支持ISP和傳統(tǒng)的flash編程器進(jìn)行重新編程。通用的8位CPU外加在線編程,Atemel借此提供了一個靈活、高效的嵌入式應(yīng)用解決方案。AT89S52有以下優(yōu)點(diǎn):8Kflash,256BRAM,32個I/O接口,看門狗,三個十六位定時器/計數(shù)器,六個中斷矢量、兩級優(yōu)先權(quán),一個全雙工的串行口,片上的振蕩器和時鐘電路〔不懂,好似沒有這些東西〕。另外,AT89S52設(shè)計了靜態(tài)邏輯〔不懂〕,可以將時鐘頻率降低到0Hz.用軟件可以設(shè)置兩種省電模式:1.低電壓空閑模式〔Theidlemodel〕,cpu不在工作,但是RAM、定時器/計數(shù)器、串行口、中斷系統(tǒng)一直工作;2.電源睡眠模式〔Thepower-downmodel〕只保存RAM中的內(nèi)容,但是停止振蕩器,其他片上功能失效直到中斷喚醒或硬件重啟。

根本參數(shù):類別:集成電路(IC)家庭:嵌入式-微控制器系列:89S核心處理器:8051芯體尺寸:8-位速度:24MHz連通性:UART/USART外圍設(shè)備:WDT輸入/輸出數(shù):32程序存儲器容量:8KB(8Kx8程序存儲器類型:FLASHRAM容量:256x8電壓-電源(Vcc/Vdd):4V~5.5V振蕩器型:內(nèi)部工作溫度:-40°C~85°C封裝/外殼:40-DIP包裝:管件主要特征:1.兼容MCS-51指令2.8K字節(jié)支持在線編程的flash存儲區(qū),可以進(jìn)行1000次擦寫工作電壓4.0v-5.5v(有待驗(yàn)證,呵呵)4.256x8bit片內(nèi)RAM5.三個16Bit定時器/計數(shù)器6.8個中斷源7.全雙工UART串行通道8.低電壓空閑模式和電源睡眠模式9.電源睡眠模式下,中斷觸發(fā)返回原狀態(tài)10.兩個數(shù)據(jù)指針DP11.電源關(guān)閉標(biāo)志12.fastProgrammingTime快速編程13.綠色包裝〔無鉛及鹵化物〕

P0-P3口結(jié)構(gòu)P0口功能:P0口具有兩種功能:第一,P0口可以作為通用I/O接口使用,P0.7—P0.0用于傳送CPU的輸入/輸出數(shù)據(jù)。輸出數(shù)據(jù)時可以得到鎖存,不需外接專用鎖存器,輸入數(shù)據(jù)可以得到緩沖。第二,P0.7—P0.0在CPU訪問片外存儲器時用于傳送片外存儲器de低8位地址,然后傳送CPU對片外存儲器的讀寫P1口功能

:P1口的功能和P0口de第一功能相同,僅用于傳遞I/O輸入/輸出數(shù)據(jù)。P2口的功能:P2口的第一功能和上述兩組引腳的第一功能相同,即它可以作為通用I/O使用。它的第二功能和P0口引腳的第二功能相配合,作為地址總線用于輸出片外存儲器的高8位地址。P3口功能:P3口有兩個功能:第一功能與其余三個端口的第一功能相同;第二功能作控制用,每個引腳都不同。表2.1P3口第二功能引腳名稱功能P3.0RXD串行數(shù)據(jù)接收口P3.1TXD串行數(shù)據(jù)發(fā)送口P3.2INT0外中斷0輸入P3.3INT1外中斷1輸入P3.4T0計數(shù)器0計數(shù)輸入P3.5T1計數(shù)器1計數(shù)輸入P3.6WR外部RAM寫選通信號P3.7RD外部RAM讀選通信號如下圖4.2時鐘電路和復(fù)位電路單片機(jī)的時鐘信號用來提供單片機(jī)內(nèi)各種微操作的時間基準(zhǔn);復(fù)位操作那么使單片機(jī)的片內(nèi)電路初始化,使單片機(jī)從一種確定的狀態(tài)開始運(yùn)行。1.時鐘電路單片機(jī)的時鐘信號通常用兩種電路形式得到:內(nèi)部振蕩和外部振蕩方式。圖2內(nèi)部振蕩電路圖2.1外部振蕩電路2復(fù)位電路當(dāng)MCS-5l系列單片機(jī)的復(fù)位引腳RST(全稱RESET)出現(xiàn)2個機(jī)器周期以上的高電平時,根據(jù)應(yīng)用的要求,復(fù)位操作通常有兩種根本形式:上電復(fù)位和上電或開關(guān)復(fù)位。上電復(fù)位要求接通電源后,自動實(shí)現(xiàn)復(fù)位操作。圖2.2上電復(fù)位圖2.3開關(guān)復(fù)位上電或開關(guān)復(fù)位要求電源接通后,單片機(jī)自動復(fù)位,并且在單片機(jī)運(yùn)行期間,用開關(guān)操作也能使單片機(jī)復(fù)位。上電后,由于電容C3的充電和反相門的作用,使RST持續(xù)一段時間的高電平。當(dāng)單片機(jī)已在運(yùn)行當(dāng)中時,按下復(fù)位鍵K后松開,也能使RST為一段時間的高電平,從而實(shí)現(xiàn)上電或開關(guān)復(fù)位的操作。

4.3顯示電路led數(shù)碼管〔LEDSegmentDisplays〕是由多個發(fā)光二極管封裝在一起組成“8〞字型的器件,引線已在內(nèi)部連接完成,只需引出它們的各個筆劃,公共電極。led數(shù)碼管常用段數(shù)一般為7段有的另加一個小數(shù)點(diǎn),還有一種是類似于3位“+1〞型。位數(shù)有半位,1,2,3,4,5,6,8,10位等等....,led數(shù)碼管根據(jù)LED的接法不同分為共陰和共陽兩類,了解LED的這些特性,對編程是很重要的,因?yàn)椴煌愋偷臄?shù)碼管,除了它們的硬件電路有差異外,編程方法也是不同的。圖2是共陰和共陽極數(shù)碼管的內(nèi)部電路,它們的發(fā)光原理是一樣的,只是它們的電源極性不同而已。顏色有紅,綠,藍(lán),黃等幾種。led數(shù)碼管廣泛用于儀表,時鐘,車站,家電等場合。選用時要注意產(chǎn)品尺寸顏色,功耗,亮度,波長等。下面將介紹常用LED數(shù)碼管內(nèi)部引腳圖片圖1這是一個7段兩位帶小數(shù)點(diǎn)10引腳的LED數(shù)碼管圖2引腳定義每一筆劃都是對應(yīng)一個字母表示DP是小數(shù)點(diǎn)每一筆劃都是對應(yīng)一個字母表示DP是小數(shù)點(diǎn).LED數(shù)碼管引腳定義10引腳的LED數(shù)碼管驅(qū)動方式概述數(shù)碼管要正常顯示,就要用驅(qū)動電路來驅(qū)動數(shù)碼管的各個段碼,從而顯示出我們要的數(shù)字,因此根據(jù)數(shù)碼管的驅(qū)動方式的不同,可以分為靜態(tài)式和動態(tài)式兩類。靜態(tài)顯示驅(qū)動靜態(tài)驅(qū)動也稱直流驅(qū)動。靜態(tài)驅(qū)動是指每個數(shù)碼管的每一個段碼都由一個單片機(jī)的I/O端口進(jìn)行驅(qū)動,或者使用如BCD碼二-十進(jìn)制譯碼器譯碼進(jìn)行驅(qū)動。靜態(tài)驅(qū)動的優(yōu)點(diǎn)是編程簡單,顯示亮度高,缺點(diǎn)是占用I/O端口多,如驅(qū)動5個數(shù)碼管靜態(tài)顯示那么需要5×8=40根I/O端口來驅(qū)動,要知道一個89S51單片機(jī)可用的I/O端口才32個呢:〕,實(shí)際應(yīng)用時必須增加譯碼驅(qū)動器進(jìn)行驅(qū)動,增加了硬件電路的復(fù)雜性。

動態(tài)顯示驅(qū)動數(shù)碼管動態(tài)顯示接口是單片機(jī)中應(yīng)用最為廣泛的一種顯示方式之一,動態(tài)驅(qū)動是將所有數(shù)碼管的8個顯示筆劃"a,b,c,d,e,f,g,dp"的同名端連在一起,另外為每個數(shù)碼管的公共極COM增加位選通控制電路,位選通由各自獨(dú)立的I/O線控制,當(dāng)單片機(jī)輸出字形碼時,所有數(shù)碼管都接收到相同的字形碼,但究竟是那個數(shù)碼管會顯示出字形,取決于單片機(jī)對位選通COM端電路的控制,所以我們只要將需要顯示的數(shù)碼管的選通控制翻開,該位就顯示出字形,沒有選通的數(shù)碼管就不會亮。通過分時輪流控制各個數(shù)碼管的的COM端,就使各個數(shù)碼管輪流受控顯示,這就是動態(tài)驅(qū)動。在輪流顯示過程中,每位數(shù)碼管的點(diǎn)亮?xí)r間為1~2ms,由于人的視覺暫留現(xiàn)象及發(fā)光二極管的余輝效應(yīng),盡管實(shí)際上各位數(shù)碼管并非同時點(diǎn)亮,但只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù),不會有閃爍感,動態(tài)顯示的效果和靜態(tài)顯示是一樣的,能夠節(jié)省大量的I/O端口,而且功耗更低。主要參數(shù)8字高度8字上沿與下沿的距離。比外型高度小。通常用英寸來表示。范圍一般為0.25-20英寸。長*寬*高長——數(shù)碼管正放時,水平方向的長度;寬——數(shù)碼管正放時,垂直方向上的長度;高——數(shù)碼管的厚度。時鐘點(diǎn)四位數(shù)碼管中,第二位8與第三位8字中間的二個點(diǎn)。一般用于顯示時鐘中的秒。數(shù)碼管使用的電流與電壓電流靜態(tài)時,推薦使用10-15mA;動態(tài)時,16/1動態(tài)掃描時,平均電流為4-5mA,峰值電流50-60mA。電壓數(shù)量是多少?當(dāng)紅色與黃綠色時,使用1.9V乘以每段的芯片串聯(lián)的個數(shù);當(dāng)綠色/藍(lán)色時,使用3.1V乘以每段的芯片串聯(lián)的個數(shù)。

74ls24474LS244為3態(tài)8位緩沖器,一般用作總線驅(qū)動器。74LS244沒有鎖存的功能。地址鎖存器就是一個暫存器,它根據(jù)控制信號的狀態(tài),將總線上地址代碼暫存起來。8086/8088數(shù)據(jù)和地址總線采用分時復(fù)用操作方法,即用同一總線既傳輸數(shù)據(jù)又傳輸?shù)刂?。簡介?dāng)微處理器與存儲器交換信號時,首先由CPU發(fā)出存儲器地址,同時發(fā)出允許鎖存信號ALE給鎖存器,當(dāng)鎖存器接到該信號后將地址/數(shù)據(jù)總線上的地址鎖存在總線上,隨后才能傳輸數(shù)據(jù)。74ls244圖例鎖存器是一個很普通的時序電路。一般的,它在時鐘上升沿或者下降沿來的時候鎖存輸入,然后產(chǎn)生輸出,在其他的時候輸出都不跟隨輸入變化,這就是所謂邊緣觸發(fā)的D觸發(fā)器。通常用作單片機(jī)的地址鎖存器的芯片有74LS373、8282、74LS273、74HC373等。74ls24474LS244、74LS273、74LS373、74LS377等芯片都能組成輸入、輸出接口。用途它主要用于三態(tài)輸出,作為地址驅(qū)動器、時鐘驅(qū)動器、總線驅(qū)動器和定向發(fā)送器等。其真值表如下:74Ls244真值表74LS244真值表[1]L表示低電平H表示高電平X表示不定狀態(tài)Z表示高阻態(tài)技術(shù)參數(shù)74Ls244技術(shù)參數(shù)最小典型最大VCC4.25V5V5.25V高電平輸出電流-15mA低電平輸出電流24mA工作溫度0℃70℃本次設(shè)計采用數(shù)碼管,數(shù)碼管是最常用的一種顯示器件,它是由幾個發(fā)光二極管組成的8字段顯示器件,其特點(diǎn)是價格非常的廉價,使用也非常的方便,顯示效果非常的清楚。小電流下可以驅(qū)動每光,發(fā)光響應(yīng)時間極短,體積小,重量輕,抗沖擊性能好,壽命長。但數(shù)碼管只能是顯示0——9的數(shù)據(jù)。不能夠顯示字符。這也是數(shù)碼管的缺乏之處?!惨妶D3〕圖3共陽數(shù)碼管這次設(shè)計中,采用的是74LS244中的1Y1到2Y4的輸出信號驅(qū)動數(shù)碼管的a.b.c.d.e.f.g七段顯示?!踩鐖D4〕圖4顯示電路4.4模數(shù)〔A/D〕轉(zhuǎn)換電路ADC0809概述ADC0809是美國國家半導(dǎo)體公司生產(chǎn)的CMOS工藝8通道,8位逐次逼近式A/D模數(shù)轉(zhuǎn)換器。其內(nèi)部有一個8通道多路開關(guān),它可以根據(jù)地址碼鎖存譯碼后的信號,只選通8路模擬輸入信號中的一個進(jìn)行A/D轉(zhuǎn)換。是目前國內(nèi)應(yīng)用最廣泛的8位通用A/D芯片1.主要特性1〕8路輸入通道,8位A/D轉(zhuǎn)換器,即分辨率為8位。具有轉(zhuǎn)換起停控制端。3〕轉(zhuǎn)換時間為100μs(時鐘為640kHz時),130μs〔時鐘為500kHz時〕4〕單個+5V電源供電5〕模擬輸入電壓范圍0~+5V,不需零點(diǎn)和滿刻度校準(zhǔn)。6〕工作溫度范圍為-40~+85攝氏度7〕低功耗,約15mW。2.內(nèi)部結(jié)構(gòu)ADC0809是CMOS單片型逐次逼近式A/D轉(zhuǎn)換器,內(nèi)部結(jié)構(gòu)如下圖,它由8路模擬開關(guān)、地址鎖存與譯碼器、比擬器、8位開關(guān)樹型A/D轉(zhuǎn)換器、逐次逼近存放器、邏輯控制和定時電路組成。3.外部特性〔引腳功能〕ADC0809芯片有28條引腳,采用雙列直插式封裝,如下圖。下面說明各引腳功能。IN0~I(xiàn)N7:8路模擬量輸入端。2-1~2-8:8位數(shù)字量輸出端。ADDA、ADDB、ADDC:3位地址輸入線,用于選通8路模擬輸入中的一路ALE:地址鎖存允許信號,輸入,高電平有效。START:A/D轉(zhuǎn)換啟動脈沖輸入端,輸入一個正脈沖〔至少100ns寬〕使其啟動〔脈沖上升沿使0809復(fù)位,下降沿啟動A/D轉(zhuǎn)換〕。EOC:A/D轉(zhuǎn)換結(jié)束信號,輸出,當(dāng)A/D轉(zhuǎn)換結(jié)束時,此端輸出一個高電平〔轉(zhuǎn)換期間一直為低電平〕。OE:數(shù)據(jù)輸出允許信號,輸入,高電平有效。當(dāng)A/D轉(zhuǎn)換結(jié)束時,此端輸入一個高電平,才能翻開輸出三態(tài)門,輸出數(shù)字量。CLK:時鐘脈沖輸入端。要求時鐘頻率不高于640KHZ。REF〔+〕、REF〔-〕:基準(zhǔn)電壓。Vcc:電源,單一+5V。GND:地。ADC0809的工作過程首先輸入3位地址,并使ALE=1,將地址存入地址鎖存器中。此地址經(jīng)譯碼選通8路模擬輸入之一到比擬器。START上升沿將逐次逼近存放器復(fù)位。下降沿啟動A/D轉(zhuǎn)換,之后EOC輸出信號變低,指示轉(zhuǎn)換正在進(jìn)行。直到A/D轉(zhuǎn)換完成,EOC變?yōu)楦唠娖?,指示A/D轉(zhuǎn)換結(jié)束,結(jié)果數(shù)據(jù)已存入鎖存器,這個信號可用作中斷申請。當(dāng)OE輸入高電平時,輸出三態(tài)門翻開,轉(zhuǎn)換結(jié)果的數(shù)字量輸出到數(shù)據(jù)總線上。轉(zhuǎn)換數(shù)據(jù)的傳送A/D轉(zhuǎn)換后得到的數(shù)據(jù)應(yīng)及時傳送給單片機(jī)進(jìn)行處理。數(shù)據(jù)傳送的關(guān)鍵問題是如何確認(rèn)A/D轉(zhuǎn)換的完成,因?yàn)橹挥写_認(rèn)完成后,才能進(jìn)行傳送。為此可采用下述三種方式。定時傳送方式對于一種A/D轉(zhuǎn)換器來說,轉(zhuǎn)換時間作為一項技術(shù)指標(biāo)是的和固定的。例如ADC0809轉(zhuǎn)換時間為128μs,相當(dāng)于6MHz的MCS-51單片機(jī)共64個機(jī)器周期??蓳?jù)此設(shè)計一個延時子程序,A/D轉(zhuǎn)換啟動后即調(diào)用此子程序,延遲時間一到,轉(zhuǎn)換肯定已經(jīng)完成了,接著就可進(jìn)行數(shù)據(jù)傳送。(2)查詢方式A/D轉(zhuǎn)換芯片由說明轉(zhuǎn)換完成的狀態(tài)信號,例如ADC0809的EOC端。因此可以用查詢方式,測試EOC的狀態(tài),即可確認(rèn)轉(zhuǎn)換是否完成,并接著進(jìn)行數(shù)據(jù)傳送。中斷方式把說明轉(zhuǎn)換完成的狀態(tài)信號〔EOC〕作為中斷請求信號,以中斷方式進(jìn)行數(shù)據(jù)傳送。不管使用上述哪種方式,只要一旦確定轉(zhuǎn)換完成,即可通過指令進(jìn)行數(shù)據(jù)傳送。首先送出口地址并以信號有效時,OE信號即有效,把轉(zhuǎn)換數(shù)據(jù)送上數(shù)據(jù)總線,供單片機(jī)接受。因?yàn)锳D0809是8位逐次逼近型A/D轉(zhuǎn)換器,它是由一個8路的模擬開關(guān)、一個地址鎖存譯碼器、一個A/D轉(zhuǎn)換器和一個三態(tài)輸出鎖存器組成。多路開關(guān)可選通8個模擬通道,允許8路模擬量分時輸入,共用A/D轉(zhuǎn)換器進(jìn)行轉(zhuǎn)換。些A/D轉(zhuǎn)換器是的特點(diǎn)是8位精度,屬于并行口,如果輸入的模擬量變化大快,必須在輸入之前增加采樣電路。〔如圖5〕圖5A/D轉(zhuǎn)換電路第五章系統(tǒng)軟件的設(shè)計5.1主程序在剛上電時,系統(tǒng)默認(rèn)為循環(huán)顯示8個通道的電壓值狀態(tài)。當(dāng)進(jìn)行一次測量后,將顯示每一通道的A/D轉(zhuǎn)換值,每個通道的數(shù)據(jù)顯示時間為1S左右。主程序在調(diào)用顯示子程序和測試之程序之間循環(huán),主程序流程圖見圖?!舱w電路圖見附錄1〕調(diào)用顯示子程序調(diào)用A/D轉(zhuǎn)換子程序初始化開始調(diào)用顯示子程序調(diào)用A/D轉(zhuǎn)換子程序初始化開始主程序流程圖;*

Y地址數(shù)小于8?A/D轉(zhuǎn)換結(jié)束?P3.7=1?啟動測試〔TESTART〕結(jié)束0809地址加1取數(shù)據(jù)〔P2.5=1〕開始Y地址數(shù)小于8?A/D轉(zhuǎn)換結(jié)束?P3.7=1?啟動測試〔TESTART〕結(jié)束0809地址加1取數(shù)據(jù)〔P2.5=1〕開始。A/D轉(zhuǎn)換流程圖數(shù)字電壓表程序清單〔見附錄2〕#include<reg52.h>#include<intrins.h>#defineucharunsignedchar#defineuintunsignedintsbitST=P2^3;sbitOE=P2^5;sbitEOC=P3^2;sbitclk=P3^3;sbitkey1=P3^6;sbitAT=P2^0;sbitBT=P2^1;sbitCT=P2^2;sbitseg1=P3^0; sbitseg2=P3^1;sbitseg3=P3^7;sbitseg4=P2^4;uintdat;uintdianya;uinta1,a2,a3,a4;codeunsignedchartab[]={0x03,0x9f,0x25,0x0d,0x99,0x49,0x41,0x1f,0x01,0x09};//小數(shù)局部//codeunsignedchartab1[]={0x02,0x9e,0x24,0x0c,0x98,0x48,0x40,0x1e,0x00,0x08};//整數(shù)局部voiddelay(uintz) //延時微妙級函數(shù){while(z--);}voiddelayms(uintn) //延時nms程序{uinti,j;for(i=n;i>0;i--)for(j=110;j>0;j--);}voidclock() //時鐘函數(shù){TMOD=0X20;TH1=0xce;TL1=0xce;EA=1;ET1=1;TR1=1;}voidzhuanhuan() //adc0809轉(zhuǎn)換函數(shù){ AT=0; BT=0; CT=0;OE=0; ST=1; delay(800); ST=0; delayms(5); while(EOC==0); OE=1; dat=P0; dianya=dat*2; a1=dianya%1000/100;a2=dianya%100/10;a3=dianya%10;a4=dianya/1000;}voiddisp(a1,a2,a3,a4)//數(shù)碼管顯示函數(shù){P1=tab[a4];seg1=0;delay(200); seg1=1;P1=tab[a1];seg2=0;delay(200);seg2=1;P1=tab[a2];seg3=0;delay(200);seg3=1;P1=tab[a3];seg4=0;delay(200);seg4=1;}voidmain(){ clock();while(1){zhuanhuan();disp(a1,a2,a3,a4);}}voidtimer1(void)interrupt3 //定時器1{TH1=0xce;TL1=0xce;clk=~clk;}第六章系統(tǒng)的調(diào)試完成了系統(tǒng)的硬件設(shè)計,制作和軟件編程之后,要使系統(tǒng)能夠按設(shè)計意圖正常運(yùn)行,必須進(jìn)行系件和軟件調(diào)統(tǒng)調(diào)試。調(diào)試分了硬試6.1硬件的調(diào)試硬件調(diào)試的主要任務(wù)是排除硬件故障,其中包括設(shè)計的錯誤和工藝性故障等。1.檢查所設(shè)計的硬件電路板所有的器件和引腳是否正確,尤其是電源的連接是否正確;檢查各總線是否有短路的故障。檢查開關(guān)/按鍵是否正常,是否連接正確,為了保護(hù)芯片,應(yīng)先對各IC座電位進(jìn)行檢查,確認(rèn)無誤后再插入芯片。a.第一步,我們用數(shù)字萬用表進(jìn)行了逐一對點(diǎn)的檢查,檢查各導(dǎo)線間是否有短路與開路的故障。〔檢測導(dǎo)線導(dǎo)通-連接無誤〕b.第二步測輸入5V電源〔0V地〕線是否與電路中的對應(yīng)點(diǎn)的電源〔地〕線相連接是否正確;及檢查開關(guān)/按鍵是否正常,是否連接正確。〔檢測導(dǎo)線導(dǎo)通-連接無誤-按鍵正?!砪.測芯片管座與芯片管座之間用導(dǎo)線連接起來的對應(yīng)腳是否導(dǎo)通與截止?!矙z測對應(yīng)腳的導(dǎo)線連接導(dǎo)通-連接正常〕2.將40芯片的仿真插頭插入單片機(jī)插座進(jìn)行調(diào)試,檢查各接口是否滿足設(shè)計的要求,有正常的程序測試硬件電路的好壞。。3.將顯示子程序經(jīng)過keill軟件仿真生成〔.hex〕文件,用編程器將生成的(.hex)文件寫入AT89S52芯片。4.將寫入顯示程序的芯片AT89C51插入硬件電路單片機(jī)管座,觀看顯示電路的4路數(shù)碼管是否正常發(fā)光?!緮?shù)碼管發(fā)光正常-電路能運(yùn)行】5.將整機(jī)程序生成的〔.hex〕文件寫入AT89s52芯片,插入單片機(jī)插座進(jìn)行調(diào)試,檢查各接口是否滿足設(shè)計的要求,有正常的程序測試硬件電路的好壞。當(dāng)我們把前幾步準(zhǔn)備工作都做完以后通電進(jìn)行總調(diào)。a.通道號為0時,測ADC0809的26腳〔IN0〕顯示電路顯示通道號與電壓值為02.95,對可變電位器進(jìn)行調(diào)試,顯示電壓變動,用萬用表檢測ADC0809的28腳對地電壓,與設(shè)計的顯示器上的值相差無幾。b.通道號為1時,測ADC0809的27腳〔IN1〕顯示電路顯示通道號與電壓值為12.45,對可變電位器進(jìn)行調(diào)試,顯示電壓變動,萬用表測試正常。c.通道號為2時,測ADC0809的28腳〔IN2〕顯示電路顯示通道號與電壓值為24.45,對可變電位器進(jìn)行調(diào)試,顯示電壓變動,萬用表測試正常。d.當(dāng)按下【單路/多路巡檢】時,通道號與電壓值同步改變正常,再按一下【單路/多路巡檢】時通道號與電壓固定不再變動。因?yàn)槲覀冏龅氖?路巡檢,所以當(dāng)顯示電路的通道號為2時,下一步顯示電路的通道號將變?yōu)?。e.按下【通道選擇】時,每當(dāng)按一下時變一通道,在按一下時又變一個通道,即完成通道號的選擇。f.按下【復(fù)位】按鍵時,通道號將變成0通道,電壓也為初始值。g.硬件電路調(diào)試與測試均正常?!灿布{(diào)試結(jié)果見附錄4〕

6.2軟件的調(diào)試軟件調(diào)試的任務(wù)是利用開發(fā)工具進(jìn)行在線仿真調(diào)試,發(fā)現(xiàn)和糾正程序的錯誤,同時也能發(fā)現(xiàn)硬件的故障。軟件調(diào)試是一個模塊一個模塊進(jìn)行的。首先單獨(dú)調(diào)試各子程序是否能夠按照預(yù)期的功能,接口電路的控制是否正常。最后調(diào)試整個程序。尤其注意的是各模塊間能否正確的傳遞參數(shù)。1.檢查LED顯示模塊程序。觀察在LED上是否能夠顯示相應(yīng)的字符。2.檢查按鍵模塊程序。3.檢查A/D轉(zhuǎn)換模塊程序??梢栽谟布娐返妮斎攵溯斎氲膸讉€電壓,分別觀察LED上是否顯示相應(yīng)的電壓值。〔軟件調(diào)試結(jié)果見附錄4〕4.所有程序運(yùn)行正常后,在這個程序中參加中斷延時50ms?!曹浖{(diào)試后參加中斷程序清單見附錄3〕

七、心得體會經(jīng)過將近兩周的單片機(jī)設(shè)計實(shí)訓(xùn),終于完成了數(shù)字電壓表的設(shè)計,這次設(shè)計根本到達(dá)設(shè)計要求,這是我們團(tuán)隊合作的結(jié)果,在這次實(shí)訓(xùn)中我們分工合作,發(fā)揮團(tuán)隊精神最后完成了

溫馨提示

  • 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

提交評論