




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、實驗七 D/A與A/D轉(zhuǎn)換一、實驗?zāi)康?、學(xué)習(xí)D/A轉(zhuǎn)換的基本原理和D/A轉(zhuǎn)換芯片DAC0832的性能及篇程方法2、了解單片機系統(tǒng)中擴展D/A轉(zhuǎn)換芯片的基本方法3、學(xué)習(xí)A/D芯片ADC0809的轉(zhuǎn)換性能及編程方法4、了解A/D芯片與寫單片機的接口方法5、通過實驗掌握單片機進行數(shù)據(jù)采集的方法二、實驗說明1、D/A轉(zhuǎn)換是把數(shù)字量轉(zhuǎn)換成模擬量的變換。從D/A輸出的是模擬信號。實驗程序一是通過在D/A的輸入端送入有一定規(guī)律的數(shù)字量,在輸出端產(chǎn)生鋸齒波、三角波、正弦波的波形,通過示波器觀察來直觀地了解D/A的轉(zhuǎn)換功能。要把一個數(shù)據(jù)通過0832輸出,要經(jīng)過兩次鎖存。典型的程序如下:MOVDPTR,#POR
2、TMOVA,#DATAMOVXDPTR,AINCDPTRMOVXDPTR,A2、A/D轉(zhuǎn)換是把模擬量轉(zhuǎn)換成數(shù)字量的變換。啟動A/D采樣轉(zhuǎn)換只需要兩條指令:MOVDPTR,#PORTMOVXDPTR,A三、實驗內(nèi)容內(nèi)容一:利用DAC0832編程產(chǎn)生鋸齒波、三角波、正弦波。三種波形輪流顯示一、連線方法:0832的CS0832接CS0。輸出DAOUT接示波器探頭,示波器探頭地線接實驗板地線二、代碼;D61.ASMORG4000HLJMPMAINORG401BHLJMPDELAYPORTEQU0CFA0HORG4100HMAIN:MOVTMOD,#10HSETBEASETBET1MOVTL1,#0AF
3、HMOVTH1,#3CHSETBTR1DISP:MOVR1,#50HLCALLPRG1MOVR1,#50HLCALLPRG2MOVR1,#50HLCALLPRG3LJMPDISPDELAY:CLRTR1MOVTL1,#0AFHMOVTH1,#3CHDECR1SETBTR1RETIPRG1:MOVA,#00HLOOP:MOVDPTR,#PORTMOVXDPTR,AINCDPTRMOVXDPTR,AINCACJNER1,#00H,LOOPRETPRG2:MOVA,#00HLP1:MOVDPTR,#PORTMOVXDPTR,AINCDPTRMOVXDPTR,AINC ACJNEA,#0FFH,LP1
4、MOVR2,ALP2:MOVDPTR,#PORTMOVA,R2MOVXDPTR,AINCDPTRMOVXDPTR,ADJNZR2,LP2CJNER1,#00H,LP1RETPRG3:MOVR2,#02HMOVR4,#0FFHSJMPSUBDATALP3:MOVDPTR,#PORTMOVXDPTR,AINCDPTRMOVXDPTR,AINCR2DJNZR4,SUBDATAMOVR4,#0FFHMOVR2,#02HCJNER1,#00H,SUBDATARETSUBDATA:MOVA,R2MOVCA,A+PCSJMPLP3DATA0:DB80H,83H,86H,89H,8DH,90H,93H,96H
5、DB99H,9CH,9FH,0A2H,0A5H,0A8H,0ABH,0AEHDB0B1H,0B4H,0B7H,0BAH,0BCH,0BFH,0C2H,0C5HDB0C7H,0CAH,0CCH,0CFH,0D1H,0D4H,0D6H,0D8HDB0DAH,0DDH,0DFH,0E1H,0E3H,0E5H,0E7H,0E9HDB0EAH,0ECH,0EEH,0EFH,0F1H,0F2H,0F4H,0F5HDB0F6H,0F7H,0F8H,0F9H,0FAH,0FBH,0FCH,0FDHDB0FDH,0FEH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFHDB0FFH,0FFH,0FFH
6、,0FFH,0FFH,0FFH,0FEH,0FDHDB0FDH,0FCH,0FBH,0FAH,0F9H,0F8H,0F7H,0F6HDB 0F5H,0F4H,0F2H,0F1H,0EFH, 0EEH,0ECH,0EAH DB 0E9H,0E7H,0E5H,0E3H,0E1H, 0DEH,0DDH,0DAH DB0D8H,0D6H,0D4H,0D1H,0CFH, 0CCH,0CAH,0C7H DB 0C5H,0C2H,0BFH,0BCH,0BAH, 0B7H,0B4H,0B1H DB 0AEH,0ABH,0A8H,0A5H,0A2H, 9FH, 9CH, 99H DB 96H, 93H, 90H
7、, 8DH,89H, 86H, 83H, 80H DB 80H, 7CH, 79H, 78H,72H, 6FH, 6CH, 69H DB 66H, 63H, 60H, 5DH, 5AH, 57H, 55H, 51H DB 4EH, 4CH, 48H, 45H, 43H, 40H, 3DH, 3AH DB 38H, 35H, 33H, 30H, 2EH, 2BH, 29H, 27H DB 25H, 22H, 20H, 1EH, 1CH, 1AH, 18H, 16H DB 15H, 13H, 11H, 10H, 0EH, 0DH, 0BH, 0AH DB 09H, 08H, 07H, 06H, 0
8、5H, 04H, 03H, 02H DB 02H, 01H, 00H, 00H, 00H, 00H, 00H, 00H DB 00H, 00H, 00H, 00H, 00H, 00H, 01H, 02H DB 02H, 03H, 04H, 05H, 06H, 07H, 08H, 09H DB 0AH, 0BH, 0DH, 0EH, 10H, 11H, 13H, 15H DB 16H, 18H, 1AH, 1CH, 1EH, 20H, 22H, 25H DB 27H, 29H, 2BH, 2EH, 30H, 33H, 35H, 38H DB 3AH, 3DH, 40H, 43H, 45H, 48
9、H, 4CH, 4EH DB 51H, 55H, 57H, 5AH, 5DH, 60H, 63H, 66H DB 69H, 6CH, 6FH, 72H, 76H, 79H, 7CH, 80HEND三、現(xiàn)象及分析接通電路后示波器上依次顯示鋸齒波、三角波、正弦波圖形如下:4.998V4.998V4.998V2.508V內(nèi)容二:用中斷方法來讀取AN0的輸入模擬電壓,通過P1口輸出到LED上顯示。一、 接線方法:1、0809的片選信號CS0809接CS02、電位器的輸出信號AN0接ADC0809的ADIN03、EOC接CPU的INT04、P10-P1.7連L1-L8二、代碼分析;D62.ASMORG4
10、000HLJMPMAINORG4003H;外中斷0的中斷向量LJMPINTX0PORTEQU0CFA0HORG4050HMAIN:MOVR0,#50H;存數(shù)RAM的地址MOVP3,#0FFHSETBEASETBEX0SETBIT0START:MOVDPTR,#PORTMOVA, #0MOVXDPTR,A;啟動ADC0809開始轉(zhuǎn)換ACALLDELSJMPSTARTINTX0:CLREA;中斷服務(wù)程序MOVXA,DPTR;取出轉(zhuǎn)換的數(shù)據(jù)CPLAMOVP1,AMOVR0,A;存儲數(shù)據(jù)SETBEAEXIT:RETI;從中斷返回DEL:MOVR7,#15DEL1:MOVR6,#130;延時一段時間DE
11、L2:MOVR5,#200DEL3:DJNZR5,DEL3DJNZR6,DEL2DJNZR7,DEL1RETEND三、現(xiàn)象及分析通過旋轉(zhuǎn)電位器,可以看到LED燈的亮滅不斷改變,若將其轉(zhuǎn)換為十進制,則抽取了部分數(shù)據(jù)如下表LED顯示730311002002012557156表示電壓0.13720.5880.60761.963.923.93964.9980.13723.0576電位器電壓0137058806081963923945000143058四、結(jié)論通過比對上核定有格,可以看出A/D測出的電壓基本與實際電壓相符內(nèi)容三:用EOC電位法作上述測量一、 前期連接:1、 P1口的P1.0P1.5與數(shù)碼
12、管的輸入:LED1LED6相連;2、 74LS273的0007與LEDALEDDP相連,片選信號與CS1相連3、 0809的片選信號CS0809接CS0,EOC接CPU的P3.0二、代碼分析PORTADEQU0CFA0HPORTEQU0CFA8HORG4000HMOV30H,#01H;選把3036H處存好數(shù)值,#10H表示數(shù)碼管MOV31H,#01H;不顯示MOV32H,#10HMOV33H,#10HMOV34H,#10HMOV35H,#10HMOV36H,#10HMOVB,#36HMOVR0,#30HMOVP3,#0FFHMAIN:;*顯示模塊開始PUSHACCPUSHPSWANLPSW,#
13、0C7HORLPSW,#10HDISPLAY:;顯示模塊MOVB,#36HNOPDS1:MOVR0,B;R0賦予要顯示的最后一個數(shù)據(jù)地址MOVR4,#60H;掃描需要顯示60次MOVR2,#20H;位碼的初值DS2:MOVA,R0;A里面暫存RAM里的數(shù)據(jù)ACALLTABLE;取段碼MOVDPTR,#PORT;送段碼的入口地址MOVXDPTR,A;送段碼MOVA,R2;讀位碼CPLA;取反MOVP1,A;送位碼MOVR3,#0FFH;適當延時DEL:NOPDJNZR3,DEL;判斷地是否結(jié)束CLRC;清CMOVA,R2RRCAMOVR2,A;右移位碼DECR0MOVA,R0CJNEA,#30H
14、,DS2;若沒有顯示到足夠的碼,則繼續(xù)掃描MOVR0,B;重新賦給R0要顯示的最后一個數(shù)的地址MOVR2,#20H;重新賦給R2顯示的位碼DJNZR4,DS2;掃描60次完畢MOVR4,#60HJMPNONUM;顯示程序完,準備退出顯示程序TABLE:INCA;算上RET一個字節(jié)MOVCA,A+PCRETDB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H,00HNONUM:POPPSWPOPACC;*顯示模塊結(jié)束START:MOVDPTR,#PORTADMOVA, #0MOVXDPTR,A;啟動AD0809開始轉(zhuǎn)換
15、LOP:MOVA,P3;讀取P3口的值CJNEA,#0FFH,LOP;如果沒有轉(zhuǎn)換完,則繼續(xù)等待MOVXA,DPTR;取出轉(zhuǎn)換的數(shù)據(jù)MOVB,#10H;準備把高四位與低四位分開DIVAB;A存儲低四位,B存儲高四位MOV32H,A;低四位存入32H中MOV31H,B;高四位存入31H中JMPMAIN;跳回程序開始,準備顯示31H與32H中的值END三、現(xiàn)象及分析當旋轉(zhuǎn)電位器時,數(shù)碼管上顯示ADC所讀到的數(shù),其中最大為FE,最小為00,如果將ADC所讀取的數(shù)放到LED上顯示,可以明顯感覺到轉(zhuǎn)換的速度要比內(nèi)容二中用中斷法要快很多四、結(jié)論用中斷查詢法可以使程序更加簡潔,在程序不大時,其響應(yīng)的速度還比
16、中斷法更快。內(nèi)容四:用中斷法再作測量一、 前期連接:1、 P1口的P1.0P1.5與數(shù)碼管的輸入:LED1LED6相連;2、 74LS273的0007與LEDALEDDP相連,片選信號與CS1相連3、0809的片選信號CS0809接CS0,EOC接CPU的INT0二、代碼分析PORTADEQU0CFA0HPORTEQU0CFA8HORG4000HORG4000HLJMPMAINORG4003H;外中斷0的中斷向量LJMPINTX0ORG4050HMOV30H,#01H;選把3036H處存好數(shù)值,#10H表示數(shù)碼管MOV31H,#01H;不顯示MOV32H,#10HMOV33H,#10HMOV3
17、4H,#10HMOV35H,#10HMOV36H,#10HMOVB,#36HMOVR0,#30HMOVP3,#0FFHMAIN:;*顯示模塊開始PUSHACCPUSHPSWANLPSW,#0C7HORLPSW,#10HDISPLAY:;顯示模塊MOVB,#36HNOPDS1:MOVR0,B;R0賦予要顯示的最后一個數(shù)據(jù)地址MOVR4,#60H;掃描需要顯示60次MOVR2,#20H;位碼的初值DS2:MOVA,R0;A里面暫存RAM里的數(shù)據(jù)ACALLTABLE;取段碼MOVDPTR,#PORT;送段碼的入口地址MOVXDPTR,A;送段碼MOVA,R2;讀位碼CPLA;取反MOVP1,A;送位
18、碼MOVR3,#0FFH;適當延時DEL:NOPDJNZR3,DEL;判斷地是否結(jié)束CLRC;清CMOVA,R2RRCAMOVR2,A;右移位碼DECR0MOVA,R0CJNEA,#30H,DS2;若沒有顯示到足夠的碼,則繼續(xù)掃描MOVR0,B;重新賦給R0要顯示的最后一個數(shù)的地址MOVR2,#20H;重新賦給R2顯示的位碼DJNZR4,DS2;掃描60次完畢MOVR4,#60HJMPNONUM;顯示程序完,準備退出顯示程序TABLE:INCA;算上RET一個字節(jié)MOVCA,A+PCRETDB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H,00HNONUM:POPPSWPOPACC;*顯示模塊結(jié)束START:MOVP3,#0FFHSETBEASETBEX0SETBIT0START:MOVDPTR,#PORTMOVA, #0MOVXDPTR,A;啟動ADC0809開始轉(zhuǎn)換ACALLDELSJMPMAININTX0:CLREA;中斷服務(wù)程序MOVXA,DPTR;取出轉(zhuǎn)換的數(shù)據(jù)MOVXA,DPTR;取出轉(zhuǎn)
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- obe教改課題申報書
- 個人租房合同范本微云
- 初中數(shù)學(xué)課題申報書模板
- 合同范本紙張
- 合資協(xié)議合同范本模板
- 企業(yè)用工陰陽合同范本
- 合伙競拍合同范本
- 農(nóng)場員工合同范本
- 農(nóng)業(yè)種植協(xié)作合同范本
- 優(yōu)化農(nóng)機更新?lián)Q代流程的實施措施
- 科學(xué)計算語言Julia及MWORKS實踐 課件 4-Syslab簡介
- 2024年高考語文復(fù)習(xí):酬和類古代詩歌閱讀 專項練習(xí)題匯編(含答案解析)
- GB/T 36547-2024電化學(xué)儲能電站接入電網(wǎng)技術(shù)規(guī)定
- 醫(yī)療廢物管理條例
- 消防工程常用設(shè)施三維圖解
- 2024機械車間裝配作業(yè)指導(dǎo)書
- 慢性乙型肝炎防治指南(2022年版)解讀
- 搟筋課件教學(xué)課件
- 城市污水處理廠改造施工方案
- 醫(yī)院工程改造工程施工組織設(shè)計方案
- 英語人稱代詞和物主代詞練習(xí)題(附答案)
評論
0/150
提交評論