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

下載本文檔

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

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上1 引言 在電量的測量中,電壓、電流和頻率是最基本的三個被測量,其中電壓量的測量最為經(jīng)常。而且隨著電子技術(shù)的發(fā)展,更是經(jīng)常需要測量高精度的電壓,所以數(shù)字電壓表就成為一種必不可少的測量儀器。數(shù)字電壓表簡稱DVM,它是采用數(shù)字化測量技術(shù),把連續(xù)的模擬量轉(zhuǎn)換成不連續(xù)、離散的數(shù)字形式并加以顯示的儀表。最近的幾十年來,隨著半導(dǎo)體技術(shù)、集成電路(IC)和微處理器技術(shù)的發(fā)展,數(shù)字電路和數(shù)字化測量技術(shù)也有了巨大的進(jìn)步,從而促使了數(shù)字電壓表的快速發(fā)展,并不斷出現(xiàn)新的類型。數(shù)字電壓表從1952年問世以來,經(jīng)歷了不斷改進(jìn)的過程,從最早采用繼電器、電子管和形式發(fā)展到了現(xiàn)在的全固態(tài)化、集成化(

2、IC化),另一方面,精度也從0.01%-0.005%。本文是以簡易數(shù)字直流電壓表的設(shè)計為研究內(nèi)容,本系統(tǒng)主要包括三大模塊:轉(zhuǎn)換模塊、數(shù)據(jù)處理模塊及顯示模塊。其中,A/D轉(zhuǎn)換采用ADC0808對輸入的模擬信號進(jìn)行轉(zhuǎn)換,控制核心AT89C51再對轉(zhuǎn)換的結(jié)果進(jìn)行運算處理,最后驅(qū)動輸出裝置LED顯示數(shù)字電壓信號。2 設(shè)計總體方案2.1設(shè)計要求 以MCS-51系列單片機(jī)為核心器件,組成一個簡單的直流數(shù)字電壓表。采用1路模擬量輸入,能夠測量0-5V之間的直流電壓值。電壓顯示用4位一體的LED數(shù)碼管顯示,至少能夠顯示兩位小數(shù)。 盡量使用較少的元器件。2.2 設(shè)計思路根據(jù)設(shè)計要求,選擇AT89C51單片機(jī)為核

3、心控制器件。A/D轉(zhuǎn)換采用ADC0808實現(xiàn),與單片機(jī)的接口為P1口和P2口的高四位引腳。電壓顯示采用4位一體的LED數(shù)碼管。LED數(shù)碼的段碼輸入,由并行端口P0產(chǎn)生:位碼輸入,用并行端口P2低四位產(chǎn)生。2.3 設(shè)計方案硬件電路設(shè)計由6個部分組成; A/D轉(zhuǎn)換電路,AT89C51單片機(jī)系統(tǒng),LED顯示系統(tǒng)、時鐘電路、復(fù)位電路以及測量電壓輸入電路。硬件電路設(shè)計框圖如圖1所示。 時鐘電路 復(fù)位電路A/D轉(zhuǎn)換電路測量電壓輸入顯示系統(tǒng)AT89C51 P1 P2 P2 P0 圖1 數(shù)字電壓表系統(tǒng)硬件設(shè)計框圖3硬件電路設(shè)計基于單片機(jī)的數(shù)字直流電壓表硬件電路原理圖如圖2所示。圖2 簡易數(shù)字電壓表電路圖此電路

4、的工作原理是:+5V模擬電壓信號通過變阻器VR1分壓后由ADC0808的IN0通道進(jìn)入(由于使用的IN0通道,所以ADDA,ADDB,ADDC均接低電平),經(jīng)過模/數(shù)轉(zhuǎn)換后,產(chǎn)生相應(yīng)的數(shù)字量經(jīng)過其輸出通道D0-D7傳送給AT89C51芯片的P1口,AT89C51負(fù)責(zé)把接收到的數(shù)字量經(jīng)過數(shù)據(jù)處理,產(chǎn)生正確的7段數(shù)碼管的顯示段碼傳送給四位LED,同時它還通過其四位I/O口P2.0、P2.1、P2.2、P2.3產(chǎn)生位選信號控制數(shù)碼管的亮滅。此外,AT89C51還控制ADC0808的工作。其中,單片機(jī)AT89C51通過定時器中斷從P2.4輸出方波,接到ADC0808的CLOCK,P2.6發(fā)正脈沖啟動A

5、/D轉(zhuǎn)換,P2.5檢測A/D轉(zhuǎn)換是否完成,轉(zhuǎn)換完成后,P2.7置高從P1口讀取轉(zhuǎn)換結(jié)果送給LED顯示出來。.簡易數(shù)字直流電壓表的硬件電路已經(jīng)設(shè)計完成,就可以選取相應(yīng)的芯片和元器件,利用Proteus軟件繪制出硬件的原理,并仔細(xì)地檢查修改,直至形成完善的硬件原理圖。但要真正實現(xiàn)電路對電壓的測量和顯示的功能,還需要有相應(yīng)的軟件配合,才能達(dá)到設(shè)計要求。4程序設(shè)計4.1 程序設(shè)計總方案 根據(jù)模塊的劃分原則,將該程序劃分初始化模塊,A/D轉(zhuǎn)換子程序和顯示子程序,這三個程序模塊構(gòu)成了整個系統(tǒng)軟件的主程序,如圖3所示。開始初始化調(diào)用A/D轉(zhuǎn)換子程序調(diào)用顯示子程序結(jié)束圖3 數(shù)字式直流電壓表主程序框圖4.2 系

6、統(tǒng)子程序設(shè)計4.2.1 初始化程序所謂初始化,是對將要用到的MCS_51系列單片機(jī)內(nèi)部部件或擴(kuò)展芯片進(jìn)行初始工作狀態(tài)設(shè)定,初始化子程序的主要工作是設(shè)置定時器的工作模式,初值預(yù)置,開中斷和打開定時器等。4.2.2 A/D轉(zhuǎn)換子程序A/D轉(zhuǎn)換子程序用來控制對輸入的模塊電壓信號的采集測量,并將對應(yīng)的數(shù)值存入相應(yīng)的內(nèi)存單元,其轉(zhuǎn)換流程圖如圖4所示。開始啟動轉(zhuǎn)換A/D轉(zhuǎn)換結(jié)束?輸出轉(zhuǎn)換結(jié)果數(shù)值轉(zhuǎn)換顯示結(jié)束圖4 A/D轉(zhuǎn)換流程圖4.2.3 顯示子程序顯示子程序采用動態(tài)掃描實現(xiàn)四位數(shù)碼管的數(shù)值顯示,在采用動態(tài)掃描顯示方式時,要使得LED顯示的比較均勻,又有足夠的亮度,需要設(shè)置適當(dāng)?shù)膾呙桀l率,當(dāng)掃描頻率在70

7、HZ左右時,能夠產(chǎn)生比較好的顯示效果,一般可以采用間隔10ms對LED進(jìn)行動態(tài)掃描一次,每一位LED的顯示時間為1ms。在本設(shè)計中,為了簡化硬件設(shè)計,主要采用軟件定時的方式,即用定時器0溢出中斷功能實現(xiàn)11s定時,通過軟件延時程序來實現(xiàn)5ms的延時。4.3程序代碼LED_0 EQU 30HLED_1 EQU 31HLED_2 EQU 32HADC EQU 35HCLOCK BIT P2.4ST BIT P2.5EOC BIT P2.6OE BIT P2.7 ORG 00H SJMP START ORG 0BH SJMP INT_T0 START:MOV LED_0,#00H MOV P2,#0

8、FFH MOV LED_1,#00H MOV LED_2,#00H MOV DPTR,#TABLE MOV TMOD,#02H MOV TH0,#245 MOV TL0,#00H MOV IE,#82H SETB TR0 WAIT:CLR ST SETB STCLR STJNB EOC,$SETB OEMOV ADC,P1CLR OEMOV A,ADCMOV B,#51DIV ABMOV LED_2,AMOV A,BMOV B,#5DIV ABMOV LED_1,AMOV LED_0,BLCALL DISPSJMP WAITINT_T0:CPL CLOCK RETIDISP:MOV A,LED

9、_0 MOVC A,A+DPTR CLR P2.3 MOV P0,A LCALL DELAY SETB P2.3 MOV A,LED_1 MOVC A,A+DPTR CLR P2.2 MOV P0,A LCALL DELAY SETB P2.2 MOV A,LED_2 MOVC A,A+DPTR CLR P2.1;ORL A,#80H; SETB ACC.7 MOV P0,A LCALL DELAY SETB P2.1 RETDELAY:MOV R6,#10D1:MOV R7,#250 DJNZ R7,$ DJNZ R6,D1 RETTABLE:DB 3FH,06H,5BH,4FH,66H D

10、B 6DH,7DH,07H,7FH,6FH END5仿真5.1 仿真過程1 將設(shè)計的電路在單片機(jī)仿真軟件Proteus7中進(jìn)行仿真,仿真電路圖需要的元件如下: 接地ground Power AT89C51 CAP CAP-ELEC CRYSTAL RES ADC0808 PULLUPRES-VAR BUTTON連接好電路圖.5.2 軟件調(diào)試軟件調(diào)試的主要任務(wù)是排查錯誤,錯誤主要包括邏輯和功能錯誤,這些錯誤有些是顯性的,而有些是隱形的,可以通過仿真開發(fā)系統(tǒng)發(fā)現(xiàn)逐步改正。本系統(tǒng)的調(diào)試主要以軟件為主,其中,系統(tǒng)電路圖的繪制和仿真我采用的是Proteus軟件,而程序方面,采用的是匯編語言,用Keil軟

11、件將程序?qū)懭雴纹瑱C(jī)。5.3顯示結(jié)果 1. 當(dāng)IN0口輸入電壓值為0V時,顯示結(jié)果如圖5所示,測量誤差為0V。 圖5 輸入電壓為0V時,LED的顯示結(jié)果2. 當(dāng)IN0輸入電壓值為1.50V時,顯示結(jié)果如圖6所示。測量誤差為0.01V。 圖6 輸入電壓為1.50V時,LED的顯示結(jié)果3. 當(dāng)IN0口輸入電壓值為3.50V時,顯示結(jié)果如圖7。測量誤差為0.01V。 圖7 輸入電壓為3.50V時,LED的顯示結(jié)果5試驗臺效果圖:6結(jié)論經(jīng)過一段時間的努力,課程設(shè)計-基于MCS-51單片機(jī)數(shù)字電壓表設(shè)計基本完成。但設(shè)計中的不足之處仍然存在。在這過程中,我對電路設(shè)計,單片機(jī)的使用等都有了新的認(rèn)識。通過這次設(shè)

12、計學(xué)會了Proteus和Keil軟件的使用方法,掌握了從系統(tǒng)的需要、方案的設(shè)計、功能模塊的劃分、原理圖的設(shè)計和電路圖的仿真的設(shè)計流程,積累了不少經(jīng)驗?;趩纹瑱C(jī)的數(shù)字電壓表使用性強、結(jié)構(gòu)簡單、成本低、外接元件少。在實際應(yīng)用工作應(yīng)能好,測量電壓準(zhǔn)確,精度高。系統(tǒng)功能、指標(biāo)達(dá)到了課題的預(yù)期要求、系統(tǒng)在硬件設(shè)計上充分考慮了可擴(kuò)展性,經(jīng)過一定的改造,可以增加功能。本文設(shè)計主要實現(xiàn)了簡易數(shù)字電壓表測量一路電壓的功能,詳細(xì)說明了從原理圖的設(shè)計、電路圖的仿真再到軟件的調(diào)試。通過本次設(shè)計,我對單片機(jī)這門課有了進(jìn)一步的了解。無論是在硬件連接方面還是在軟件編程方面。本次設(shè)計采用了AT89C51單片機(jī)芯片,與以往的單片機(jī)相比增加了許多新的功能,使其功能更為完善,應(yīng)用領(lǐng)域也更為廣泛。設(shè)計中還用到了模/數(shù)轉(zhuǎn)換芯片ADC0808,以前在學(xué)單片機(jī)課程時只是對其理論知識有了初步的理解。通過這次設(shè)計,對它的工作原理有了更深的理解??傊@次電路的設(shè)計和仿真,基本上達(dá)到了設(shè)計的功能要求。在以后的實踐中,我將繼續(xù)努力學(xué)習(xí)電路設(shè)計方面的理論知識,并理論聯(lián)系實際,爭取在電路設(shè)計方面能有所提升。參 考 文 獻(xiàn)1 李朝青單片機(jī)原理及接口技術(shù)第三版北京:北京航天航空大學(xué)出版社,200517242 苗紅霞. 單片機(jī)實現(xiàn)數(shù)字電壓表的軟硬件設(shè)計.河海大

溫馨提示

  • 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

提交評論