基于單片機(jī)數(shù)字電壓表設(shè)計(jì)課程設(shè)計(jì)報(bào)告_第1頁
基于單片機(jī)數(shù)字電壓表設(shè)計(jì)課程設(shè)計(jì)報(bào)告_第2頁
基于單片機(jī)數(shù)字電壓表設(shè)計(jì)課程設(shè)計(jì)報(bào)告_第3頁
基于單片機(jī)數(shù)字電壓表設(shè)計(jì)課程設(shè)計(jì)報(bào)告_第4頁
基于單片機(jī)數(shù)字電壓表設(shè)計(jì)課程設(shè)計(jì)報(bào)告_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、湖南科技大學(xué)瀟湘學(xué)院信息與電氣工程系單片機(jī)原理及應(yīng)用課程設(shè)計(jì)報(bào)告題 目:數(shù)字電壓表設(shè)計(jì) 專 業(yè):通信工程 班 級(jí):通信002班 姓 名:劉黎輝 學(xué) 號(hào): 指導(dǎo)老師:宋芳 徐學(xué)軍 謝平陽 一、 設(shè)計(jì)目的1.1設(shè)計(jì)目的(1) 掌握單片機(jī)的程序編寫與調(diào)試技術(shù)。(2) 掌握接口電路設(shè)計(jì)技術(shù),初步掌握電子設(shè)計(jì)軟件Protel99的使用。(3) 掌握AD轉(zhuǎn)換芯片ADC0809的使用方法。(4) 利用所學(xué)單片機(jī)理論知識(shí)進(jìn)行軟硬件整體設(shè)計(jì),提高綜合應(yīng)用能力。二、 設(shè)計(jì)任務(wù)及要求2.1設(shè)計(jì)任務(wù)用8032單片機(jī)和ADC0809構(gòu)成數(shù)字電壓表,測量0-5v的電壓,將所測電壓用數(shù)碼管動(dòng)態(tài)顯示出來。2.2具體要求使用8

2、032單片機(jī)作為控制單元,控制ADC0809來進(jìn)行電壓采集及模數(shù)轉(zhuǎn)換,轉(zhuǎn)換后的數(shù)字量經(jīng)單片機(jī)計(jì)算成電壓值,然后通過8279芯片驅(qū)動(dòng)數(shù)碼管顯示電壓值。其它要求如下:(1) 設(shè)計(jì)硬件電路。標(biāo)示引腳編號(hào)、元器件參數(shù)。 (2) 在實(shí)驗(yàn)箱上完成硬件電路的搭建。(3) 編制相應(yīng)程序。與硬件一并調(diào)試成功。(4) 寫好課程設(shè)計(jì)報(bào)告。三、 設(shè)計(jì)原理分析3.1原理及芯片選型本次設(shè)計(jì)中的待測電壓范圍為05V,由于對(duì)采樣速率及轉(zhuǎn)換速率的要求不是很高,可以使用8032單片機(jī)做為控制單元。對(duì)于一個(gè)數(shù)字電壓表而言,其最核心的芯片是A/D轉(zhuǎn)換芯片,它可以在單片機(jī)的控制下將模擬量轉(zhuǎn)換成數(shù)字量,從而求出電壓值的大小。本次設(shè)計(jì)中選

3、用ADC0809作為A/D轉(zhuǎn)換芯片,它是一款具有8路模擬輸入通道的8位A/D轉(zhuǎn)換器,測量的最小分辨率為0.019V,其轉(zhuǎn)換方式是采用逐次逼近式A/D轉(zhuǎn)換。該芯片完全可以達(dá)到本次設(shè)計(jì)的要求。電壓值的顯示采用數(shù)碼管動(dòng)態(tài)顯示。由于數(shù)碼管動(dòng)態(tài)顯示需要占用CPU大量時(shí)間,本次設(shè)計(jì)中數(shù)碼管采用8279芯片驅(qū)動(dòng),這樣可以大大減少單片機(jī)的負(fù)擔(dān)。為了使顯示更加穩(wěn)定,A/D轉(zhuǎn)換10次后經(jīng)過排序,求中間6個(gè)值的平均數(shù)再進(jìn)行顯示。3.2設(shè)計(jì)目標(biāo)本次設(shè)計(jì)的目標(biāo)是:設(shè)計(jì)一個(gè)雙通道數(shù)字電壓表,能同時(shí)測量并顯示兩組電壓值,電壓值測量范圍為05V。使用數(shù)碼管進(jìn)行顯示,電壓值顯示到小數(shù)點(diǎn)后兩位。電壓表帶顯示鎖存功能,能將電壓值鎖

4、定在數(shù)碼管上顯示。四、 硬件資源及其分配4.1單片機(jī)控制電路8032單片機(jī)內(nèi)設(shè)有4個(gè)8位的并行I/O口,本次設(shè)計(jì)中使用P0口作為地址總線低8位及數(shù)據(jù)總線分時(shí)復(fù)用,P2口作為地址總線的高8位,其中A8、A9、A10經(jīng)74LS138進(jìn)行地址譯碼。P3.6/WR#、P3.7/RD#分別與其它芯片的WR和RD引腳相連。P1.0口與ADC0809的EOC輸出引腳相連,用于查詢A/D轉(zhuǎn)換是否完成。P1.1和P1.2與兩個(gè)開關(guān)相連,用于接收用戶控制信息。4.2 A/D轉(zhuǎn)換電路ADC0809具有8路模擬輸入口,本次設(shè)計(jì)中只使用的IN0和IN1兩個(gè)通道,這兩個(gè)引腳分別與兩個(gè)電位器的輸出端相連,用于模擬信號(hào)的采集

5、。其轉(zhuǎn)換結(jié)束信號(hào)EOC經(jīng)74LS14反向后與單片機(jī)的I/0連接。4.3 數(shù)碼管顯示電路8279芯片的OUTA0OUTA3、OUTB0OUTB3經(jīng)驅(qū)動(dòng)芯片7407后與7段數(shù)碼管的各段及小數(shù)點(diǎn)引腳連接。其SL0SL2與一片74LS138一碼芯片相連,經(jīng)3線-8線譯碼后作為數(shù)碼管的位選信號(hào)。5.4地址譯碼電路地址譯碼電路由3-8譯碼器74LS138、非門74LS04、或門74LS32組成,A8-A10與138譯碼器的地址輸入口連接,A11-A15經(jīng)組合電路后的輸出信號(hào)與138譯碼器的使能端G2A#、G2B#連接。這樣譯碼后的地址范圍則為8000H-87FFH。五、 硬件圖5.1裝配圖圖5-1 硬件裝

6、配圖A/D模塊的CS與地址8000H連接,EOC與P1.0連接。開關(guān)K1和K2分別與P1.1和P1.2連接。5.2原理圖圖5-2 數(shù)字電壓表電路原理圖六、 程序流程圖及程序清單6.1程序總體流程圖圖6-1 程序總體流程圖6.2各部分程序流程圖6.2.1 A/D轉(zhuǎn)換流程圖圖6-2 A/D轉(zhuǎn)換流程圖6.2.1 8279操作流程圖圖6-3 8279操作流程圖6.3程序清單#define uchar unsigned char#define uint unsigned int#define AD_PORT0 XBYTE0x8000/0809通道0地址#define AD_PORT1 XBYTE0x80

7、02/0809通道1地址#define D8279 XBYTE0xFF80/8279 數(shù)據(jù)口地址#define C8279 XBYTE0xFF82/8279 狀態(tài)/命令口地址#include #include sbit eoc=P10;/AD0809轉(zhuǎn)換結(jié)束信號(hào)sbit h1=P11;/顯示鎖存sbit h2=P12;uchar code ledseg = 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00;/LED顯示常數(shù)表0-9、全滅void delay(uint n)uint k,j;for(k=0;kn;k+)for(j=0;j

8、110;j+);void init8279()C8279=10; /置8279工作方式 8字符 左入 編碼掃描鍵盤C8279=0x3e;/置掃描速率1 1110 =30分頻C8279=0xd1; /顯示RAM全部清0,清除LED顯示delay(2);C8279=0x90;/寫顯示RAM,地址自+1/顯示000 000D8279=ledseg0;D8279=ledseg0;D8279=ledseg0+0x80;/加小數(shù)點(diǎn)D8279=ledseg10;/熄滅D8279=ledseg10;D8279=ledseg0;D8279=ledseg0;D8279=ledseg0+0x80;/加小數(shù)點(diǎn)floa

9、t fun(uchar arra)uchar i,j,tmp;long lsum;float faverage;for(i=0;i9;i+)for(j=i+1;jarraj)tmp=arrai;arrai=arraj;arraj=tmp;lsum=0;for(i=2;i8;i+)lsum=lsum+arrai;faverage=lsum/6;return faverage;/-主程序-main()uchar i;uchar num13,num23;uchar cval10;float ftmp;uint itmp;init8279(); /初始化顯示/循環(huán)顯示兩組電壓值 while(1)if(

10、h1)/非顯示鎖存狀態(tài)/通道0for(i=0;i10;i+) /轉(zhuǎn)換10次AD_PORT0=0;/啟動(dòng)ADwhile(eoc);/等待AD轉(zhuǎn)換結(jié)束cvali=AD_PORT0;ftmp=fun(cval);/冒泡法排序后取中間6個(gè)數(shù)求平均,使得數(shù)據(jù)顯示更加穩(wěn)定ftmp=ftmp*5/255;/轉(zhuǎn)換成電壓值itmp=ftmp*100;/放大100倍,便于計(jì)算for(i=0;i3;i+)/將電壓值按位分開num1i=itmp%10;itmp=itmp/10; if(h2)/非顯示鎖存狀態(tài)/通道1for(i=0;i10;i+) /轉(zhuǎn)換10次AD_PORT1=0;/啟動(dòng)ADwhile(eoc);/等待

11、AD轉(zhuǎn)換結(jié)束cvali=AD_PORT1;ftmp=fun(cval);/冒泡法排序后取中間6個(gè)數(shù)求平均,使得數(shù)據(jù)顯示更加穩(wěn)定ftmp=ftmp*5/255;/轉(zhuǎn)換成電壓值itmp=ftmp*100;/放大100倍,便于計(jì)算for(i=0;i3;i+)/將電壓值按位分開num2i=itmp%10;itmp=itmp/10; /送入8279顯示C8279=0x90;/寫顯示RAM,地址自+1D8279=ledsegnum20;D8279=ledsegnum21;D8279=ledsegnum22+0x80;/加小數(shù)點(diǎn)D8279=ledseg10;/熄滅D8279=ledseg10;D8279=l

12、edsegnum10;D8279=ledsegnum11;D8279=ledsegnum12+0x80;/加小數(shù)點(diǎn)七、 小結(jié)本次設(shè)計(jì)成功使用8032單片機(jī)和ADC0809設(shè)計(jì)出一個(gè)帶顯示鎖存功能的雙通道數(shù)字電壓表,達(dá)到了課程設(shè)計(jì)的各項(xiàng)指標(biāo),完成了課程設(shè)計(jì)任務(wù)。在本次課程設(shè)計(jì)的過程中,無論是在程序設(shè)計(jì)、硬件電路設(shè)計(jì)還是動(dòng)手能力方面都得到了很好鍛煉。通過本次課程設(shè)計(jì),增強(qiáng)了對(duì)單片機(jī)的認(rèn)識(shí),并且調(diào)試能力也得到了一個(gè)很大的提升。在剛開始設(shè)計(jì)的時(shí)候,發(fā)現(xiàn)很多知識(shí)自己在書本都看過,但是沒有很牢固的掌握。因此在開始的幾天里,閱讀了大量相關(guān)的資料,了解了各芯片的功能及使用方法。同時(shí)也參考了別人的一些相關(guān)設(shè)計(jì)。在接下來的幾天中開始基于實(shí)驗(yàn)平臺(tái)進(jìn)行硬件電路設(shè)計(jì),同時(shí)也一邊參照實(shí)驗(yàn)平臺(tái)幫助文檔使用Protel進(jìn)行電路圖的設(shè)計(jì)。在電路設(shè)計(jì)過程中,逐漸了解了各

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論