單片機(jī)課程設(shè)計(jì)電壓表剖析_第1頁
單片機(jī)課程設(shè)計(jì)電壓表剖析_第2頁
單片機(jī)課程設(shè)計(jì)電壓表剖析_第3頁
單片機(jī)課程設(shè)計(jì)電壓表剖析_第4頁
單片機(jī)課程設(shè)計(jì)電壓表剖析_第5頁
免費(fèi)預(yù)覽已結(jié)束,剩余12頁可下載查看

下載本文檔

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

文檔簡介

1、數(shù)字電壓表單片機(jī)瘵程段計(jì)fll吿班 級:_姓 名:_學(xué) 號:_指導(dǎo)教師:_2011年3月29日數(shù)字電壓表電路設(shè)計(jì)報(bào)告一、題目及設(shè)計(jì)要求采用51系列單片機(jī)和ADC設(shè)計(jì)一個(gè)數(shù)字電壓表,輸入為05V線性模擬 信號,輸出通過LED顯示,要求顯示兩位小數(shù)。二、主要技術(shù)指標(biāo)1、 數(shù)字芯片A/D轉(zhuǎn)換技術(shù)2、 單片機(jī)控制的數(shù)碼管顯示技術(shù)3、 單片機(jī)的數(shù)據(jù)處理技術(shù)三、方案論證及選擇主要設(shè)計(jì)方框圖如下:U主控芯片方案1:選用專用轉(zhuǎn)化芯片INC7107實(shí)現(xiàn)電壓的測量和實(shí)現(xiàn),用四位數(shù)碼管 顯示出最后的轉(zhuǎn)換電壓結(jié)果。缺點(diǎn)是京都比較低,內(nèi)部電壓轉(zhuǎn)換和控制部分不可 控制。優(yōu)點(diǎn)是價(jià)格低廉。方案2:選用單片機(jī)AT89C51和A

2、/D轉(zhuǎn)換芯片ADC0809實(shí)現(xiàn)電壓的轉(zhuǎn)換和 控制,用四位數(shù)碼管顯示出最后的轉(zhuǎn)換電壓結(jié)果。缺點(diǎn)是價(jià)格稍貴;優(yōu)點(diǎn)是轉(zhuǎn)換 京都高,且轉(zhuǎn)換的過程和控制、顯示部分可以控制?;谡n程設(shè)計(jì)的要求和實(shí)驗(yàn)室能提供的芯片,我選用了:方案2。2、顯示部分方案1:選用4個(gè)單體的共陰極數(shù)碼管。優(yōu)點(diǎn)是價(jià)格比較便宜;缺點(diǎn)是焊接 時(shí)比較麻煩,容易出錯(cuò)。方案2:選用一個(gè)四聯(lián)的共陰極數(shù)碼管,外加四個(gè)三極管驅(qū)動(dòng)。這個(gè)電路兒 乎沒有缺點(diǎn);優(yōu)點(diǎn)是便于控制,價(jià)格低廉,焊接簡單?;谡n程設(shè)汁的要求和實(shí)驗(yàn)室所能提供的儀器,我選用了:方案2。電壓采集模數(shù)轉(zhuǎn)換單片機(jī)處理數(shù)碼管顯示四、電路設(shè)計(jì)原理模擬電壓經(jīng)過檔位切換到不同的分壓電路篩減后,經(jīng)隔離

3、干擾送到A/D轉(zhuǎn) 換器進(jìn)行A/D轉(zhuǎn)換。然后送到單片機(jī)中進(jìn)行數(shù)據(jù)處理。處理后的數(shù)據(jù)送到LED中顯示。同時(shí)通過串行通訊與上位通信。硬件電路及軟件程療:。而碩件電路乂大 體可分為A/D轉(zhuǎn)換電路、LED顯示電路,各部分電路的設(shè)計(jì)及原理將會(huì)在硬件 電路設(shè)訃部分詳細(xì)介紹;程序的設(shè)計(jì)使用匯編語言編程,利用Keil和PROTEUS軟件對其編譯和仿真。一般I/O接口芯片的驅(qū)動(dòng)能力是很有限的,在LED顯示器接口電路中,輸 出口所能提供的驅(qū)動(dòng)電流一般是不夠的尤其是設(shè)計(jì)中需要用到多位LED,此時(shí) 就需要增加LED驅(qū)動(dòng)電路。驅(qū)動(dòng)電路有多種,常用的是TTL或MOS集成電路 驅(qū)動(dòng)器,在本設(shè)計(jì)中采用了74LS244驅(qū)動(dòng)電路。

4、本實(shí)驗(yàn)采用AT89C51單片機(jī)芯片配合ADC0808模/數(shù)轉(zhuǎn)換芯片構(gòu)成一個(gè)簡 易的數(shù)字電壓表,原理電路如圖1所示。該電路通過ADC0808芯片采樣輸入口IN0輸入的05V的模擬量電壓,經(jīng)過模/數(shù)轉(zhuǎn)換后,產(chǎn)生相應(yīng)的數(shù)字量經(jīng)過其 輸出通道DOD7傳送給AT89C51芯片的P0口。AT89C51負(fù)責(zé)把接收到的數(shù)字 量經(jīng)過數(shù)據(jù)處理,產(chǎn)生正確的7段數(shù)碼管的顯示段碼,并通過其P1口傳送給數(shù) 碼管。同時(shí)它還通過其三位I/O口P1.0、Pl、Pl.2、P1.3產(chǎn)生位選信號,控制 數(shù)碼管的亮滅。另外,AT89C51還控制著ADC0808的工作。其ALE管腳為ADC0808提供了1MHz作的時(shí)鐘脈沖;P2.4控制

5、ADC0808的地址鎖存端(ALE); P2.1控制ADC0808的啟動(dòng)端(START); P2.3控制ADC0808的輸出允許 端(OE); P2.0控制ADC0808的轉(zhuǎn)換結(jié)束信號(EOC)。電路原理圖如下所示,三個(gè)地址位ADDAADDB.ADDC均接高電平+5V電壓,因而所需測量的外部電壓可III ADC0808的IN7端口輸入。由于ADC0808gAnal在進(jìn)行A/D轉(zhuǎn)換時(shí)需要有CLK信,本設(shè)計(jì)中利用AT89C51的定時(shí)中斷產(chǎn)生一 個(gè)1OOKHZ的脈沖,山P1.4口送給ADC0808的時(shí)鐘端,通過軟件給其輸入一個(gè) 正脈沖,可立即啟動(dòng)A/D轉(zhuǎn)換。在軟件設(shè)計(jì)中,由于我們對單片機(jī)知識還沒能

6、很熟練的掌握,用中斷方式較復(fù)雜,且這個(gè)程序CPU工作量不大,查詢方式對 速度不會(huì)產(chǎn)生影響,所以我們采用查詢方式,確保仿真的進(jìn)度和準(zhǔn)確度。系統(tǒng)原理圖傳送一次試探值,對應(yīng)輸出U0與U1比較,確左一次逼近值,經(jīng)過8次逼近,即可獲得最 后轉(zhuǎn)換的結(jié)果數(shù)字量。此處,EOC端口的信號顯示ADC0808的狀態(tài),開始A/D轉(zhuǎn)換時(shí),EOC為低電平,轉(zhuǎn)換結(jié)束后,輸岀髙電平。2.數(shù)據(jù)處理及控制A/D轉(zhuǎn)換完畢后,單片機(jī)的P1.6口接收到一高電平,立馬通過P2將OE置1, ADC0808的三態(tài)輸出鎖存器被打開,轉(zhuǎn)換完的數(shù)字信號經(jīng)過與D0D7相連 的P0口進(jìn)入AT89C51 oAT89C51根據(jù)公式1-1將數(shù)字信號轉(zhuǎn)換為模

7、擬量, 然后 利用程序獲取模擬量的每一位, 分別通過P2口輸出到LED上。與此同時(shí),51系列數(shù)據(jù)顯示逐紳近寄存器的SAR的內(nèi)容為0,錨*鬣茫程中,SAR側(cè)梯嗷勒勒邏輯:控制與:時(shí)電路在&ART正淼沖丿小功津匸作,沒聚刖F.該電路就可能告知向SAR中I換丿喙 IAT89C51會(huì)通過P2 OP2 3口選擇用哪一段LED顯示所傳出的數(shù)據(jù)。例如,當(dāng)P2.OP2.3=1110,則LED接收到的數(shù)據(jù)會(huì)在第四段LED上顯示。另外,AT89C51-旦獲得了數(shù)據(jù)后便會(huì)將ST置0,即模數(shù)轉(zhuǎn)換器停止轉(zhuǎn)換,知 道LED獲得新的數(shù)據(jù)并顯示出來,ST才會(huì)重新置1山于AT89C51轉(zhuǎn)換速率很 快(微妙量級),所以不

8、會(huì)影響其接收新的數(shù)據(jù)。四.主要元器件的介紹K AT89C51單片機(jī)簡介U3PO.CVADO P0.VAD1 P0.2/AD2P0.3/AD3P0.4/AWP0.5/AD5P0.6/AD6 P0.7/AD7P2CVA8P2 1/A9 P2 2A10 P2 3/A11 P24S12 P2 5/A13 P2 6A14 P27/A15P30/RXDP3.irXDP3.2/iMT0P3.34HTTP3.4JTO P3.5H-1P3.6WRP3.7/RD80C51AT89C51是51系列單片機(jī)的一個(gè)型號,它是ATMEL公司生產(chǎn)的。AT89C52是一個(gè)低電壓、高性能CMOS 8為單片機(jī)。將通用的微處理器和F

9、lash存儲(chǔ)器結(jié) 合在一起,可反復(fù)擦寫的Flash存儲(chǔ)器可有效地降低開發(fā)成本。AT89C51有PDIP、PQFP/TQFP及PLCC等三種封裝形式,以適應(yīng)不同產(chǎn)品的需求。主要功能特性:1、 低功耗空閑和掉電模式,軟件設(shè)置睡眠和喚醒功能。2、 兼容MCS51指令系統(tǒng),8K可反復(fù)擦寫(1000次)Flash ROMo3、3個(gè)16位可編程定時(shí)/計(jì)數(shù)器中斷,時(shí)鐘頻率0-24MHzo4、32個(gè)雙向I/O口,256B內(nèi)部RAM。5、2個(gè)串行中斷,可編程UART串行通道。6、2個(gè)外部中斷源,共6個(gè)中斷源。7、2個(gè)讀寫中斷口線,3級加密位。XTAL1XTAL2RSTPSEN ALEEA亠-3=1亠2. ADC

10、0808模數(shù)轉(zhuǎn)換芯片簡介ADC0808是釆樣分辨率為8位的、以逐次逼近原理進(jìn)行模/數(shù)轉(zhuǎn)換的器件。 其內(nèi)部有一個(gè)8通道多路開關(guān),它可以根據(jù)地址碼鎖存譯碼后的信號,只選通8路模擬輸入信號中的一個(gè)進(jìn)行A/D轉(zhuǎn)換。ADC0808是ADC0809的簡化版本, 功能基本相同。一般在硬件仿真時(shí)采用ADC0808進(jìn)行A/D轉(zhuǎn)換,實(shí)際使用時(shí)采 用ADC0809進(jìn)行A/D轉(zhuǎn)換。引腳功能(外部特性)ADC0808芯片有28條引腳,釆用雙列直插式封裝,如右圖所示。各引腳功 能如下:15和2628 (IN0IN7): 8路模擬量輸入端。8、14、15和1721: 8位數(shù)字量輸出端。22 (ALE):地址鎖存允許信號,輸

11、入,高電平有效。6(START): A/D轉(zhuǎn)換啟動(dòng)脈沖輸入端,輸入一個(gè)正脈沖(至少100ns寬)使其啟動(dòng)(脈沖上升沿使0809復(fù)位,下降沿啟動(dòng)A/D轉(zhuǎn)換)。7(EOC): A/D轉(zhuǎn)換結(jié)束信號,輸出,當(dāng)A/D轉(zhuǎn)換結(jié)束時(shí),此端輸出 一個(gè)高電平(轉(zhuǎn)換期間一直為低電平)。9(OE):數(shù)據(jù)輸出允許信號,輸入,高電平有效。當(dāng)A/D轉(zhuǎn)換結(jié)束時(shí), 此端輸入一個(gè)高電平,才能打開輸出三態(tài)門,輸出數(shù)字量。10 (CLK):時(shí)鐘脈沖輸入端。要求時(shí)鐘頻率不高于640KH乙12 (VREF ( + )和16 (VREF(-):參考電壓輸入端11 (Vcc):主電源輸入端。13 (GND):地。2325 (ADDA、ADD

12、B、ADDC): 3位地址輸入線,用于選通8路模擬輸U(kuò)42627藥12 3丄5252423221216ADDAADDBADDCALECLOCKSSTART EOCOLTT1OUT2OLT3OLTF4OLTT5OLTTG0UT7VREF(+)VREF(-)OE19入中的一路。3.四位共陰極數(shù)碼管簡介ABCDEFG DP12341 1 1 1 1 1 1 1I I I I .數(shù)碼管有兩種:一種共陰極、另一種為共陽極,本次課程設(shè)計(jì)用的是共陰極。下 面比較詳細(xì)說明共陰極與共陽極的共同點(diǎn)與區(qū)別:圖(b)的左邊為共陰極數(shù)碼管,也就是數(shù)碼管的陰極管接地。那時(shí)某段亮,這段 就必須接高電平。共陰極數(shù)碼管09的C

13、51編碼為:1、uchar code table= 0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x7f50 x6f);2、uchar code table= Oxbf,0 x86,0 xdb,0 xcf,0 xe6,Oxed.Oxfd,0 x87,0 xff,0 xef;其中1不帶小數(shù)點(diǎn),2帶小數(shù)點(diǎn)。+5V(b)亡dONDcdpG4Da0共陽極就是數(shù)碼管的每段都接高電平,這樣要是哪段殼就這段就得接地。四、部分電路介紹便單片機(jī)做好準(zhǔn)備工作。當(dāng)上電時(shí),山于電容的電圧不能突變,會(huì)輸出高電平, 當(dāng)電容充電到一定程度,就會(huì)輸出低電平,單片機(jī)利用輸出高電平的這段

14、時(shí)間復(fù) 位。電阻和電容的值選擇要合適。在這要求R1VVR2,所以選取R1 = UQ, R2=10/:Qo 3.模擬輸入電路接12MHz晶振,根據(jù)芯片手冊,適合并聯(lián)30pf微調(diào)電容,從而構(gòu)成并聯(lián)諧振,幫助和穩(wěn)定輸岀波形。單片機(jī)要求至少兩個(gè)高電平,U晶振電路2.復(fù)位電路 9RSTA: :10uFIkR2PIP1.0務(wù)C3R仆;eJ=LI I0- o-293fPSEN怔EA丄通過可變電阻一端接電源+5v,端接地GND,通過改變電阻的阻值,從而改變所測電壓值,實(shí)現(xiàn)電壓的模擬信號輸入。4. ADC0808芯片與單片機(jī)接口電路:RP1 :ADC0808的輸岀接到P1口,OUT1對應(yīng)的是最髙位,START與

15、ALE可以接在一起。在這里,START接P3.0, OE接P3.1, EOC接P3.2, C1OCK接P3.4。5.顯示電路V?:4.7k T.EXTIJ119JTALnfl 6d.o址o:34MoP43rXTALIPD.0MPOX仙?.ZiWZPD.3必3PD.令 期P05/W5 P0P0 7/W7XTA12Rsroo nuocy 4 grL“ o iZt4l*lPSENALEEALZ 4 2 bQ(Z144L 厶1 1P2.4JA12P2.6皿P2.8?A*WP2DQ A/PYFSDOd/rmr 1 ! P2 P13P仁4P15P1BP17ctjmr q IN IVPOTNHP3.4HO

16、P3.5/T1FG.BfWRP3.7局U2.OE 6.MOR44陽2-P830EVREF()XTREFf*)16JZ242222242528 723Zj3141516-XL . .eric START 8-100UT80UT7OUTOOUTS0UT40UT3OUTZOUT1EOCSTARTCLOCKADC0909PG6P?6PS?240ALEAOD CADD 0AOD A通過P0口控制四位共陰極數(shù)碼管段選,通過P2口的低四位控制位選*值得注意的是P0需 要接上拉電阻,否則P0會(huì)處于髙阻態(tài)??傠娐啡缦?MU%FI nv藥EVT.=3 6TEXT,EOt丁.2飾工-i亠25 6- 4 32一1-.

17、 .根據(jù)上述分析及原理,可設(shè)i|程序流程圖如下:設(shè)計(jì)程序如下:#include #include U4roozcorawsraziztcraMWR3少05raazwraviAB1pzo/eP2.1l*QA.Drzjr/.iiF7.O.CFZXAOKZTAHP2.7.A”dSraiavoP32fTTOrjalTTTnf0MIaMl A謬一屢主M-psTUG#define uchar unsigned char#define uchar unsigned char#define uint unsigned intsbit START二P3P;sbit OE=P3A1;sbit EOC=P3A2;s

18、bit P07=P0A7;sbit CLK=P3A4;uchar data led 4;uint data tvdata;uchar code tv=0 xfe,0 xfd,0 xfb,0 xf7;uchar code a= 0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f;void delay(void)uint i;for(i=0;i5000) tvdata=5000;led0=tvdata%10; led 1 =tvdata/10% 10; led2=tvdata/100% 10; led 3=tvdata/1000;

19、for(k=0;k4;k+)P2=tvk;i=ledk;P0=ai;if(k=3)P07=l;顯示模塊延時(shí)程序delayO;1) void main(void) ETO=1;EA=1; TMOD=0 x02; TH0=216;TL0=216;TRO=1; while(l)START=1;START=0;while(EOC=0);OE=1;tvdata=Pl;tvdata*=20-0.01;OE=0;ledxianshi(); delay();void tO(void) interiupt 1 using 0 CLK=CLK;)六、硬件制作與測試1、主要儀器及使用方法主要儀器:5v直流電源,剝線

20、鉗,數(shù)字萬用表,通用版電路板,電烙鐵,銀子,啟動(dòng)轉(zhuǎn)換USB轉(zhuǎn)吊口線。其中5v電源可以從電腦的USB接口引出, 使用電烙鐵時(shí)注意不要手直接觸摸。調(diào)試電路的方法和技巧:(1)口測(2)用萬用表測試檢查外部的各種元件或者是電路是否有斷點(diǎn),有無虛焊 先用萬用表符合口測中有疑問的點(diǎn),再檢查各種電源線 與地線之間是否有短路現(xiàn)象(3)加電檢測給板子加電,檢測所有的插座或是器件的電源端的電壓 是否符合要求的值(4)注意事項(xiàng)在通電檢查前,一定要確保電路板沒有短路2、硬件制作步驟(1)將單片機(jī)的最小系統(tǒng)焊接出來,進(jìn)行調(diào)試,檢驗(yàn)是否能下載程序、進(jìn)行電 路復(fù)位、晶振是否起振。(2)擴(kuò)展部分的焊接, 在這我釆用了ADC

21、0809作為擴(kuò)展芯片, 原因是ADC0808和ADC0809的功能、引腳兒乎都相同,用741S244驅(qū)動(dòng)數(shù)碼管顯示。(3)焊接完后對電路進(jìn)行調(diào)試,檢查結(jié)果是否正確。焊接的電路圖如下:七、設(shè)計(jì)過程中的問題及解決方案(1)單片機(jī)的最小系統(tǒng)完成后,接上發(fā)現(xiàn)顯示燈不亮。檢查發(fā)光二極管是否接地或接電源,若都接了則檢查晶振是否起振,電路 是否短路或斷路,結(jié)果發(fā)現(xiàn)忘記將發(fā)光二極管接地。(2)通電后發(fā)現(xiàn)數(shù)碼管顯示亮度不均勻檢查與數(shù)碼連接電路是否有誤、短路或短路,若沒有則檢查741S244驅(qū)動(dòng) 是否問題,經(jīng)過仔細(xì)發(fā)現(xiàn)及測試,發(fā)現(xiàn)741S244壞了,換了個(gè)芯片后即可顯示均 勻 O(3)下載程序到單片機(jī)后,通電運(yùn)行,發(fā)現(xiàn)怎么改變電壓都沒有變化且顯示5檢查ADC0809所對應(yīng)的各個(gè)引腳有沒有接錯(cuò),若沒有則通過將P1口置0,觀察各個(gè)線路的顯示結(jié)果,發(fā)現(xiàn)ADC0809芯片有問題,換了芯片后可正常顯示。(4)發(fā)現(xiàn)每個(gè)數(shù)碼管顯示相同的數(shù)字檢驗(yàn)段掃描連接

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論