單片機課程設(shè)計報告數(shù)字電壓表_第1頁
單片機課程設(shè)計報告數(shù)字電壓表_第2頁
單片機課程設(shè)計報告數(shù)字電壓表_第3頁
單片機課程設(shè)計報告數(shù)字電壓表_第4頁
單片機課程設(shè)計報告數(shù)字電壓表_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、University of South China單片機課程設(shè)計報告設(shè)計課題: 基于單片機的數(shù)字電壓表設(shè)計專業(yè)班級: 電卓103班 學生姓名: 李文帥 指導教師: 朱衛(wèi)華 設(shè)計時間: 2012年1月10日 內(nèi) 容 摘 要電壓表是測量儀器中不可缺少的設(shè)備,目前廣泛應用的是采用專用集成電路實現(xiàn)的數(shù)字電壓表。本系統(tǒng)以8051單片機為核心,以逐次逼近式A/D轉(zhuǎn)換器ADC0809、數(shù)碼管顯示器為主體,設(shè)計了一款簡易的數(shù)字電壓表,能夠測量05V的直流電壓,最小分辨率為0.02V。該設(shè)計大體分為以下幾個部分,同時,各部分選擇使用的主要元器件確定如下:1、單片機部分。使用常見的8051單片機,同時根據(jù)需要設(shè)計

2、單片機電路。2、測量部分。該部分是實驗的重點,要求將外部采集的模擬信號轉(zhuǎn)換成數(shù)字信號,通過單片機的處理顯示在顯示器上,該部分決定了數(shù)字電壓表的精度等主要技術(shù)指標。根據(jù)需要本設(shè)計采用逐次逼近型AD轉(zhuǎn)換器ADC0809進行模數(shù)轉(zhuǎn)換。3、數(shù)碼管顯示部分。其中一位為整數(shù)部分,其余位小數(shù)部分。索引關(guān)鍵詞:8051 模數(shù)轉(zhuǎn)換 數(shù)碼管顯示Contents AbstractThe voltmeter is indispensable in measuring instruments and equipment, is widely used digital voltmeter ASIC implementat

3、ion. 8051, successive approximation type A / D converter ADC0809 digital tube display as the main design of a simple digital voltmeter capable of measuring 0 to 5V DC voltage, minimum resolution of 0.02V .The design is divided into several parts, each part of the main components selected for use are

4、 determined as follows: 1, microcontroller part. Using a common 8051, according to the need to design a microcontroller circuit. 2, the measurement section. This part is the focus of the experiment, require external acquisition of the analog signal is converted into a digital signal through the micr

5、ocontroller of the processing and display on the display, the portion determines the main technical indicators such as the precision of the digital voltmeter. According to the needs of the design using successive approximation type A / D converter ADC0809 analog-to-digital conversion.3, the digital

6、display section. One for the integer part, the remaining bits of the fractional part.Index Keywords: 8051 Analog-to-digital Conversion digital display.目 錄內(nèi)容摘要2Contents Abstract 3一 概述 5 1.1概述5二、設(shè)計題目及要求 6 2.1、題目及設(shè)計要求6 2.2、主要技術(shù)指標 6三、方案論證及選擇73.1主要設(shè)計方框圖如下 73.2方案論證:7 四、電路設(shè)計原理8 4.1設(shè)計原理介紹: 8 4.2、模數(shù)轉(zhuǎn)換9 4.3、

7、數(shù)據(jù)處理及控制10五、主要元器件的介紹11 5.1、AT89C51單片機簡介11 5.2、ADC0808模數(shù)轉(zhuǎn)換芯片簡介12 5.3、四位共陰極數(shù)碼管簡介13六、部分電路介紹14 6.1、晶振電路14 6.2、復位電路14 6.3模擬輸入電路14 6.4、顯示電路15 6.5總電路如下:15 6.6仿真結(jié)果如下:16七、程序設(shè)計17八、硬件制作與測試21 8.1、主要儀器及使用方法:21 8.2、硬件制作步驟:21九、設(shè)計過程中的問題及解決方案22十、心得體會23一、 概述1.1概述:數(shù)字電壓表的基本工作原理是利用A/D轉(zhuǎn)換電路將待測的模擬信號轉(zhuǎn)換成數(shù)字信號,通過相應換算后將測試結(jié)果以數(shù)字形式

8、顯示出來的一種電壓表。較之于一般的模擬電壓表,數(shù)字電壓表具有精度高、測量準確、讀數(shù)直觀、使用方便等優(yōu)點。電壓表的數(shù)字化測量,關(guān)鍵在于如何把隨時連續(xù)變化的模擬量轉(zhuǎn)化成數(shù)字量,完成這種轉(zhuǎn)換的電路叫模數(shù)轉(zhuǎn)換器(A/D)。數(shù)字電壓表的核心部件就是A/D轉(zhuǎn)換器,由于各種不同的A/D轉(zhuǎn)換原理構(gòu)成了各種不同類型的DVM。一般說來,A/D轉(zhuǎn)換的方式可分為兩類:積分式和逐次逼近式。積分式A/D轉(zhuǎn)換器是先用積分器將輸入的模擬電壓轉(zhuǎn)換成時間或頻率,再將其數(shù)字化。根據(jù)轉(zhuǎn)化的中間量不同,它又分為U-T(電壓-時間)式和U-F(電壓-頻率)式兩種。逐次逼近式A/D轉(zhuǎn)換器分為比較式和斜坡電壓式,根據(jù)不同的工作原理,比較式又

9、分為逐次比較式及零平衡式等。斜坡電壓式又分為線性斜坡式和階梯斜坡式兩種。在高精度數(shù)字電壓表中,常采用由積分式和比較式相結(jié)合起來的復合式A/D轉(zhuǎn)換器。本設(shè)計以8051單片機為核心,以逐次比較型A/D轉(zhuǎn)換器ADC0809、數(shù)碼管顯示為主體,構(gòu)造了一款簡易的數(shù)字電壓表,能夠測量1路05V直流電壓,最小分辨率0.02V。二、設(shè)計題目及要求2.1、題目及設(shè)計要求采用51系列單片機和ADC設(shè)計一個數(shù)字電壓表,輸入為05V線性模擬信號,輸出通過數(shù)碼管顯示,要求顯示兩位小數(shù)。2.2、主要技術(shù)指標1、數(shù)字芯片A/D轉(zhuǎn)換技術(shù)2、單片機控制的數(shù)碼管顯示技術(shù)3、單片機的數(shù)據(jù)處理技術(shù)三、方案論證及選擇3.1主要設(shè)計方框

10、圖如下:數(shù)碼管顯示單片機處理模數(shù)轉(zhuǎn)換電壓采集3.2方案論證:1、主控芯片方案1:選用專用轉(zhuǎn)化芯片INC7107實現(xiàn)電壓的測量和實現(xiàn),用四位數(shù)碼管顯示出最后的轉(zhuǎn)換電壓結(jié)果。缺點是精度比較低,內(nèi)部電壓轉(zhuǎn)換和控制部分不可控制。優(yōu)點是價格低廉。方案2:選用單片機AT89C51和A/D轉(zhuǎn)換芯片ADC0809實現(xiàn)電壓的轉(zhuǎn)換和控制,用四位數(shù)碼管顯示出最后的轉(zhuǎn)換電壓結(jié)果。缺點是價格稍貴;優(yōu)點是轉(zhuǎn)換京都高,且轉(zhuǎn)換的過程和控制、顯示部分可以控制。 基于課程設(shè)計的要求,我選用了:方案2。2、顯示部分方案1:選用4個單體的共陰極數(shù)碼管。優(yōu)點是價格比較便宜;缺點是焊接時比較麻煩,容易出錯。方案2:選用一個四聯(lián)的共陰極數(shù)

11、碼管,外加四個三極管驅(qū)動。這個電路幾乎沒有缺點;優(yōu)點是便于控制,價格低廉,焊接簡單?;谡n程設(shè)計的要求和美觀性,我選用了:方案2。四、電路設(shè)計原理4.1設(shè)計原理介紹:模擬電壓經(jīng)過檔位切換到不同的分壓電路篩減后,經(jīng)隔離干擾送到A/D轉(zhuǎn)換器進行A/D轉(zhuǎn)換。然后送到單片機中進行數(shù)據(jù)處理。處理后的數(shù)據(jù)送到LED中顯示。同時通過串行通訊與上位通信。硬件電路及軟件程序。而硬件電路又大體可分為A/D轉(zhuǎn)換電路、數(shù)碼管顯示電路,各部分電路的設(shè)計及原理將會在硬件電路設(shè)計部分詳細介紹;程序的設(shè)計使用C語言編程,利用Keil和PROTEUS 軟件對其編譯和仿真。一般I/O接口芯片的驅(qū)動能力是很有限的,在數(shù)碼管顯示器接

12、口電路中,輸出口所能提供的驅(qū)動電流一般是不夠的尤其是設(shè)計中需要用到多位LED,此時選擇數(shù)碼管顯示便有了極大的優(yōu)點。 本實驗采用AT89C51單片機芯片配合ADC0809模/數(shù)轉(zhuǎn)換芯片構(gòu)成一個簡易的數(shù)字電壓表,原理電路如圖1所示。該電路通過ADC0809芯片采樣輸入口IN0輸入的05 V的模擬量電壓,經(jīng)過模/數(shù)轉(zhuǎn)換后,產(chǎn)生相應的數(shù)字量經(jīng)過其輸出通道D0D7傳送給AT89C51芯片的P0和P2.1口。AT89C51負責把接收到的數(shù)字量經(jīng)過數(shù)據(jù)處理,產(chǎn)生正確的7段數(shù)碼管的顯示段碼,并通過其P1和P2口傳送給數(shù)碼管。同時它還通過其三位I/O口產(chǎn)生位選信號,控制數(shù)碼管的亮滅。另外,AT89C51還控制著

13、ADC0809的工作。其P2.4口為ADC0809提供了100KHz工作的時鐘脈沖;P2.3控制ADC0808的地址鎖存端(ALE);P2.3控制ADC0809的啟動端(START);P2.0控制ADC0809的輸出允許端(OE);P2.2控制ADC0809的轉(zhuǎn)換結(jié)束信號(EOC)。數(shù)據(jù)處理及控制模塊AT89C51P0P2顯示模塊4位一體LED數(shù)碼管數(shù)據(jù)采集模塊ADC0809控制信號輸出顯示AnalogDigitalLED位控制信號P1P34.2、模數(shù)轉(zhuǎn)換電路原理圖如下所示,三個地址位ADDA,ADDB,ADDC均接低電平,因而所需測量的外部電壓可由ADC0809的IN0端口輸入。由于ADC0

14、809在進行A/D轉(zhuǎn)換時需要有CLK信,本設(shè)計中利用AT89C51的定時中斷產(chǎn)生一個100KHZ的脈沖,由P2.4口送給ADC0809的時鐘端,通過軟件給其輸入一個正脈沖,可立即啟動A/D轉(zhuǎn)換。在軟件設(shè)計中,由于我們對單片機知識還沒能很熟練的掌握,用中斷方式較復雜,且這個程序CPU工作量不大,查詢方式對速度不會產(chǎn)生影響,所以我們采用查詢方式,確保仿真的進度和準確度。系統(tǒng)原理圖51系列單片機數(shù)據(jù)顯示A/D電壓放大電壓輸入在A/D轉(zhuǎn)換開始之前,逐次逼近寄存器的SAR的內(nèi)容為0,在A/D轉(zhuǎn)換過程中,SAR存放“試探”數(shù)字量,在轉(zhuǎn)換完畢后,它的內(nèi)容即為A/D轉(zhuǎn)換的結(jié)果數(shù)字量。邏輯控制與定時電路在STA

15、RT正脈沖啟動后工作,沒來一個CLK脈沖,該電路就可能告知向SAR中傳送一次試探值,對應輸出U0與U1比較,確定一次逼近值,經(jīng)過8次逼近,即可獲得最后轉(zhuǎn)換的結(jié)果數(shù)字量。此處,EOC端口的信號顯示ADC0808的狀態(tài),開始A/D轉(zhuǎn)換時,EOC為低電平,轉(zhuǎn)換結(jié)束后,輸出高電平。4.3、 數(shù)據(jù)處理及控制A/D轉(zhuǎn)換完畢后,單片機的P2.3口接收到一高電平,立馬通過P2.0將OE置1,ADC0809的三態(tài)輸出鎖存器被打開,轉(zhuǎn)換完的數(shù)字信號經(jīng)過與D0D7相連的P0口進入AT89C51。AT89C51根據(jù)公式1-1將數(shù)字信號轉(zhuǎn)換為模擬量,然后利用程序獲取模擬量的每一位,分別通過P1口輸出到LED上。與此同時

16、,AT89C51會通過P1.0P3.2口選擇用哪一段LED顯示所傳出的數(shù)據(jù)。例如,當S4位選信號為高時,則LED接收到的數(shù)據(jù)會在第四段LED上顯示。 另外,AT89C51一旦獲得了數(shù)據(jù)后便會將ST置0,即模數(shù)轉(zhuǎn)換器停止轉(zhuǎn)換,知道LED獲得新的數(shù)據(jù)并顯示出來,ST才會重新置1.由于AT89C51轉(zhuǎn)換速率很快(微妙量級),所以不會影響其接收新的數(shù)據(jù)。五、主要元器件的介紹5.1、AT89C51單片機簡介AT89C51是51系列單片機的一個型號,它是ATMEL公司生產(chǎn)的。AT89C51是一個低電壓、高性能CMOS 8位單片機。將通用的微處理器和Flash存儲器結(jié)合在一起,可反復擦寫的Flash存儲器可

17、有效地降低開發(fā)成本。AT89C51有PDIP、PQFP/TQFP及PLCC等三種封裝形式,以適應不同產(chǎn)品的需求。主要功能特性:1、 低功耗空閑和掉電模式,軟件設(shè)置睡眠和喚醒功能。2、 兼容MCS51指令系統(tǒng),8K可反復擦寫(>1000次)Flash ROM。3、 3個16位可編程定時/計數(shù)器中斷,時鐘頻率0-24MHz。4、 32個雙向I/O口,256B內(nèi)部RAM。5、 2個串行中斷,可編程UART串行通道。6、 2個外部中斷源,共6個中斷源。7、 2個讀寫中斷口線,3級加密位。5.2、ADC0808模數(shù)轉(zhuǎn)換芯片簡介ADC0809是采樣分辨率為8位的、以逐次逼近原理進行模/數(shù)轉(zhuǎn)換的器件。

18、其內(nèi)部有一個8通道多路開關(guān),它可以根據(jù)地址碼鎖存譯碼后的信號,只選通8路模擬輸入信號中的一個進行A/D轉(zhuǎn)換。一般在硬件仿真時采用ADC0808進行A/D轉(zhuǎn)換,實際使用時采用ADC0809進行A/D轉(zhuǎn)換。引腳功能(外部特性)ADC0808芯片有28條引腳,采用雙列直插式封裝,如右圖所示。各引腳功能如下: 15和2628(IN0IN7):8路模擬量輸入端。 8、14、15和1721:8位數(shù)字量輸出端。 22(ALE):地址鎖存允許信號,輸入,高電平有效。 6(START): AD轉(zhuǎn)換啟動脈沖輸入端,輸入一個正脈沖(至少100ns寬)使其啟動(脈沖上升沿使0809復位,下降沿啟動A/D轉(zhuǎn)換)。 7(

19、EOC): AD轉(zhuǎn)換結(jié)束信號,輸出,當AD轉(zhuǎn)換結(jié)束時,此端輸出一個高電平(轉(zhuǎn)換期間一直為低電平)。 9(OE):數(shù)據(jù)輸出允許信號,輸入,高電平有效。當AD轉(zhuǎn)換結(jié)束時,此端輸入一個高電平,才能打開輸出三態(tài)門,輸出數(shù)字量。 10(CLK):時鐘脈沖輸入端。要求時鐘頻率不高于640KHZ。 12(VREF(+)和16(VREF(-):參考電壓輸入端 11(Vcc):主電源輸入端。 13(GND):地。 2325(ADDA、ADDB、ADDC):3位地址輸入線,用于選通8路模擬輸入中的一路。5.3、四位共陰極數(shù)碼管簡介數(shù)碼管有兩種:一種共陰極、另一種為共陽極,本次課程設(shè)計用的是共陰極。下面比較詳細說明

20、共陰極與共陽極的共同點與區(qū)別:圖(b)的左邊為共陰極數(shù)碼管,也就是數(shù)碼管的陰極管接地。那時某段亮,這段就必須接高電平。共陰極數(shù)碼管09的C51編碼為:1、 uchar code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x7f,0x6f;2、 uchar code table=0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef;其中1不帶小數(shù)點,2帶小數(shù)點。共陽極就是數(shù)碼管的每段都接高電平,這樣要是哪段亮就這段就得接地。六、部分電路介紹6.1、晶振電路接12MHz晶振,根據(jù)芯片手冊,適合并聯(lián)22pf微調(diào)電

21、容,從而構(gòu)成并聯(lián)諧振,幫助和穩(wěn)定輸出波形。6.2、復位電路AT89C51單片機要求至少兩個高電平,以便單片機做好準備工作。當上電時,由于電容的電壓不能突變,會輸出高電平,當電容充電到一定程度,就會輸出低電平,單片機利用輸出高電平的這段時間復位。電阻和電容的值選擇要合適。在這要求R1<<R2,所以選取R1=1,R2=10。6.3模擬輸入電路通過可變電阻一端接電源+5v,一端接地GND,通過改變電阻的阻值,從而改變所測電壓值,實現(xiàn)電壓的模擬信號輸入。6.4、顯示電路通過P1口控制四位共陰極數(shù)碼管段選,通過具體接口的低四位控制位選。值得注意的是P0需要接上拉電阻,否則P0會處于高阻態(tài)。6

22、.5總電路如下:設(shè)計原理:將模擬量通過IN0輸入,經(jīng)過ADC0809芯片轉(zhuǎn)換,得到數(shù)字量輸出到單片機P0口,經(jīng)過單片機處理后,送到四位共陰極數(shù)碼管上顯示。6.6仿真結(jié)果如下:七、程序設(shè)計為了在C語言源程序中直接編寫中斷服務函數(shù)的需要,KeilCx51編譯器對函數(shù)的定義進行了擴展,增加了一個擴展關(guān)鍵字interrupt,它是函數(shù)定義是的一個選項,加上這個選項即可以將一個函數(shù)定義成中斷服務函數(shù)。定義中斷服務函數(shù)的一般形式為: 函數(shù)類型 函數(shù)名(形式參數(shù)表) interrupt n using n由于ADC0808的CLOCK的時鐘頻率不高于640KHZ,在這利用定時器T0的中斷產(chǎn)生時鐘頻率,則可設(shè)

23、置為:void t0(void) interrupt 1 using 0ADC0809的時序圖如下:由時序圖可知,只有在轉(zhuǎn)換期間,EOC處于低電平,因此在AD轉(zhuǎn)換開始前EOC置為低電平,START在上升沿期間將芯片內(nèi)的所有寄存器清零,在下降沿來臨時開始轉(zhuǎn)換,由于所用的時鐘為100KHz,比較的緩慢不需要再延時,在此等待轉(zhuǎn)換結(jié)束,結(jié)束后將其數(shù)字量輸出。根據(jù)上述分析及原理,可設(shè)計程序流程圖如下:設(shè)計程序如下:#include<absacc.h>#include<reg51.h>#define uchar unsigned char#define uchar unsigned

24、 char#define uint unsigned intsbit START=P30;sbit OE=P31;sbit EOC=P32;sbit P07=P07;sbit CLK=P34;uchar data led4;uint data tvdata; uchar code tv=0xfe,0xfd,0xfb,0xf7;uchar code a=0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07,0x7f,0x6f;void delay(void) /延時程序 uint i; for(i=0;i<10;i+);void ledxianshi(void)

25、 /顯示模塊 uchar k,i; if(tvdata>5000) tvdata=5000; led0=tvdata%10; led1=tvdata/10%10; led2=tvdata/100%10; led3=tvdata/1000; for(k=0;k<4;k+) P2=tvk; i=ledk; P0=ai; if(k=3) P07 =1; delay(); void main(void) ET0=1; EA=1; TMOD=0x02; TH0=216; TL0=216; TR0=1; while(1) START=1; START=0; /啟動轉(zhuǎn)換 while(EOC=0)

26、; OE=1; tvdata=P1; tvdata*=20-0.01; OE=0; ledxianshi(); delay(); void t0(void) interrupt 1 using 0CLK=CLK;八、硬件制作與測試8.1、主要儀器及使用方法:主要儀器:5v直流電源,剝線鉗,數(shù)字萬用表,通用版電路板,電烙鐵,鑷子,USB轉(zhuǎn)串口線。其中5v電源可以從電腦的USB接口引出,使用電烙鐵時注意不要手直接觸摸。調(diào)試電路的方法和技巧:(1)目測 檢查外部的各種元件或者是電路是否有斷點,有無虛焊(2)用萬用表測試 先用萬用表符合目測中有疑問的點,再檢查各種電源線與地線之間是否有短路現(xiàn)象(3)加電檢測 給板子加電,檢測所有的插座或是器件的電源端的電壓是否符合要求的值注意事項 在通電檢查前,一定要確保電路板沒有短路8.2、硬件制作步驟:(1)將單片機的最小系統(tǒng)焊接出來,進行調(diào)試,檢驗是否能下載程序、進行電路復位、晶振是否起振。(2)擴展部分的焊接,在這我采用了ADC0809作為擴展芯片,并利用單片機驅(qū)動數(shù)碼管顯示。(3)焊接完后對電路進行調(diào)試,檢查結(jié)果是否正確。焊接的電路圖如下:九、設(shè)計過程中的問題及解決方案(1)單片機的最小系統(tǒng)完成后,接上發(fā)現(xiàn)顯示燈不亮。 檢查發(fā)光二極管是否接地或接電源

溫馨提示

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

評論

0/150

提交評論