基于51數(shù)字?jǐn)?shù)字電壓表的設(shè)計(jì)實(shí)驗(yàn)報(bào)告_第1頁
基于51數(shù)字?jǐn)?shù)字電壓表的設(shè)計(jì)實(shí)驗(yàn)報(bào)告_第2頁
基于51數(shù)字?jǐn)?shù)字電壓表的設(shè)計(jì)實(shí)驗(yàn)報(bào)告_第3頁
基于51數(shù)字?jǐn)?shù)字電壓表的設(shè)計(jì)實(shí)驗(yàn)報(bào)告_第4頁
基于51數(shù)字?jǐn)?shù)字電壓表的設(shè)計(jì)實(shí)驗(yàn)報(bào)告_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

. 課 程 設(shè) 計(jì)基于51數(shù)字電壓表設(shè)計(jì)物理與電子信息學(xué)院電子信息工程 1、課程設(shè)計(jì)要求使用單片機(jī)AT89C52和ADC0832設(shè)計(jì)一個(gè)數(shù)字電壓表,能夠測(cè)量05V之間的直流電壓值,兩位數(shù)碼顯示。在單片機(jī)的作用下,能監(jiān)測(cè)兩路的輸入電壓值,用8位串行A/D轉(zhuǎn)換器,8位分辨率,逐次逼近型,基準(zhǔn)電壓為 5V;能用兩位LED進(jìn)行輪流顯示或單路選擇顯示,顯示精度0.1伏。2、 硬件單元電路設(shè)計(jì) AT89S52單片機(jī)簡(jiǎn)介 AT89S52是一個(gè)低功耗,高性能CMOS 8位單片機(jī),片內(nèi)含8k Bytes ISP(In-system programmable)的可反復(fù)擦寫1000次的Flash只讀程序存儲(chǔ)器,器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)制造,兼容標(biāo)準(zhǔn)MCS -51指令系統(tǒng)及80C51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和ISP Flash存儲(chǔ)單元,功能強(qiáng)大的微型計(jì)算機(jī)的AT89S52可為許多嵌入式控制應(yīng)用系統(tǒng)提供高性價(jià)比的解決方案。 AT89S52具有如下特點(diǎn):40個(gè)引腳,8k Bytes Flash片內(nèi)程序存儲(chǔ)器,256 bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM),32個(gè)外部雙向輸入/輸出(I/O)口,5個(gè)中斷優(yōu)先級(jí),2層中斷嵌套中斷,2個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通信口,看門狗(WDT)電路,片內(nèi)時(shí)鐘振蕩器。 ADC0832模數(shù)轉(zhuǎn)換器簡(jiǎn)介ADC0832 是美國(guó)國(guó)家半導(dǎo)體公司生產(chǎn)的一種8 位分辨率、雙通道A/D轉(zhuǎn)換芯片。由于它體積小,兼容性強(qiáng),性價(jià)比高而深受單片機(jī)愛好者及企業(yè)歡迎,其目前已經(jīng)有很高的普及率。學(xué)習(xí)并使用ADC0832 可是使我們了解A/D轉(zhuǎn)換器的原理,有助于我們單片機(jī)技術(shù)水平的提高。 圖1芯片接口說明: CS_ 片選使能,低電平芯片使能。 CH0 模擬輸入通道0,或作為IN+/-使用。 CH1 模擬輸入通道1,或作為IN+/-使用。 GND 芯片參考0 電位(地)。 DI 數(shù)據(jù)信號(hào)輸入,選擇通道控制。 DO 數(shù)據(jù)信號(hào)輸出,轉(zhuǎn)換數(shù)據(jù)輸出。 CLK 芯片時(shí)鐘輸入。 Vcc/REF 電源輸入及參考電壓輸入(復(fù)用)。 單片機(jī)對(duì)ADC0832 的控制原理:正常情況下ADC0832 與單片機(jī)的接口應(yīng)為4條數(shù)據(jù)線,分別是CS、CLK、DO、DI。但由于DO端與DI端在通信時(shí)并未同時(shí)有效并與單片機(jī)的接口是雙向的,所以電路設(shè)計(jì)時(shí)可以將DO和DI 并聯(lián)在一根數(shù)據(jù)線上使用。當(dāng)ADC0832未工作時(shí)其CS輸入端應(yīng)為高電平,此時(shí)芯片禁用,CLK 和DO/DI 的電平可任意。當(dāng)要進(jìn)行A/D轉(zhuǎn)換時(shí),須先將CS使能端置于低電平并且保持低電平直到轉(zhuǎn)換完全結(jié)束。此時(shí)芯片開始轉(zhuǎn)換工作,同時(shí)由處理器向芯片時(shí)鐘輸入端CLK 輸入時(shí)鐘脈沖,DO/DI端則使用DI端輸入通道功能選擇的數(shù)據(jù)信號(hào)。在第1 個(gè)時(shí)鐘脈沖的下沉之前DI端必須是高電平,表示啟始信號(hào)。在第2、3個(gè)脈沖下沉之前DI端應(yīng)輸入2 位數(shù)據(jù)用于選擇通道功能。當(dāng)此2 位數(shù)據(jù)為“1”、“0”時(shí),只對(duì)CH0 進(jìn)行單通道轉(zhuǎn)換。當(dāng)2位數(shù)據(jù)為“1”、“1”時(shí),只對(duì)CH1進(jìn)行單通道轉(zhuǎn)換。當(dāng)2 位數(shù)據(jù)為“0”、 “0”時(shí),將CH0作為正輸入端IN+,CH1作為負(fù)輸入端IN-進(jìn)行輸入。當(dāng)2 位數(shù)據(jù)為“0”、“1”時(shí),將CH0作為負(fù)輸入端IN-,CH1 作為正輸入端IN+進(jìn)行輸入。到第3 個(gè)脈沖的下沉之后DI端的輸入電平就失去輸入作用,此后DO/DI端則開始利用數(shù)據(jù)輸出DO進(jìn)行轉(zhuǎn)換數(shù)據(jù)的讀取。從第4個(gè)脈沖下沉開始由DO端輸出轉(zhuǎn)換數(shù)據(jù)最高位DATA7,隨后每一個(gè)脈沖下沉DO端輸出下一位數(shù)據(jù)。直到第11個(gè)脈沖時(shí)發(fā)出最低位數(shù)據(jù)DATA0,一個(gè)字節(jié)的數(shù)據(jù)輸出完成。也正是從此位開始輸出下一個(gè)相反字節(jié)的數(shù)據(jù),即從第11個(gè)字節(jié)的下沉輸出DATD0。隨后輸出8位數(shù)據(jù),到第19 個(gè)脈沖時(shí)數(shù)據(jù)輸出完成,也標(biāo)志著一次A/D轉(zhuǎn)換的結(jié)束。最后將CS置高電平禁用芯片,直接將轉(zhuǎn)換后的數(shù)據(jù)進(jìn)行處理就可以了。ADC0832時(shí)序圖: 圖二 數(shù)字電壓表設(shè)計(jì)的結(jié)構(gòu)框圖和原理圖AD轉(zhuǎn)換部分AT89S52數(shù)碼管顯示部分時(shí)鐘電路復(fù)位電路 圖3 結(jié)構(gòu)框圖 圖4 電路原理圖 硬件電路實(shí)物圖 圖7 硬件實(shí)物圖 器件清單 表1 器件清單所用器件名稱型號(hào)及大小個(gè)數(shù)單片機(jī)開發(fā)板AT89S52一個(gè)滑動(dòng)變阻器10K兩個(gè)AD轉(zhuǎn)換器ADC0832一個(gè)LED共陽兩個(gè)跳線插口-若干跳線-若干3. 軟件單元電路設(shè)計(jì) 數(shù)據(jù)處理子程序主要根據(jù)標(biāo)度變換公式1-1,把0255十進(jìn)制數(shù)轉(zhuǎn)換為0.0V5.0V。 主程序#include#define ucharunsigned char#defineuintunsigned intsbitAD_CS = P11;sbitCLK = P12;sbitDIO = P10;uchar code table0=0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10,0x3f;/帶小數(shù)點(diǎn)uchar code table1=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf;/不帶小數(shù)點(diǎn)ucharRead_ADC(void);void display(void);void main(void)while(1) display();ucharRead_ADC(void)uchar i = 0;uchar Value1 = 0;uchar Value2 = 0;AD_CS = 1;/關(guān)掉AD;CLK = 0;DIO = 0;AD_CS = 0;/開啟芯片DIO = 1;/開始位CLK = 0;CLK = 1; /上升沿DIO = 1;/單通道CLK =0;CLK = 1;DIO = 1;/通道選擇位CLK = 0;CLK = 1;DIO = 1;/空閑位為數(shù)據(jù)輸出做好準(zhǔn)備dio要為高CLK = 0;CLK = 1;for(i = 0;i i;for(i = 0; i 8; i+)/讀第二次數(shù)據(jù)if(DIO)Value2 |= 0x01 i;CLK = 1;CLK = 0;AD_CS = 1;/關(guān)掉芯片if(Value1 = Value2)/數(shù)據(jù)校準(zhǔn)return Value1;elsereturn 0x00;void display(void) uchar i = 0; uchar a,b; i = Read_ADC(); a=i*195/10000; /整數(shù)部分 b=i*195/1000%10;/小數(shù)點(diǎn)后第一位 P0=table0a; P2=table1b; 4、課程設(shè)計(jì)總結(jié)通過這次設(shè)計(jì),使我深入了解了AT89S52單片機(jī)和ADC0832(AD轉(zhuǎn)換器)的結(jié)構(gòu)和特點(diǎn)及數(shù)字電壓表的工作原理,加深了對(duì)課本理論知識(shí)的理解,鍛煉了實(shí)踐動(dòng)手能力,理論

溫馨提示

  • 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. 人人文庫(kù)網(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)論