實驗三模數(shù)轉(zhuǎn)換實驗_第1頁
實驗三模數(shù)轉(zhuǎn)換實驗_第2頁
實驗三模數(shù)轉(zhuǎn)換實驗_第3頁
實驗三模數(shù)轉(zhuǎn)換實驗_第4頁
實驗三模數(shù)轉(zhuǎn)換實驗_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 班級: 姓名: 學(xué)號: 實 驗 報 告2實驗項目名稱: 模數(shù)轉(zhuǎn)換實驗 同組人: 實驗時間:2015.12.20 5.6.7.8節(jié) 實驗室:K2-406 DSP室 指導(dǎo)教師:葉天鳳 一、實驗?zāi)康?、 掌握AD轉(zhuǎn)換的基本過程;2、 熟悉TMS320LF2407A片內(nèi)AD轉(zhuǎn)換模塊的技術(shù)指標和常用方法。二、實驗主要儀器與設(shè)備計算機,ICETEK-LF2407-EDU實驗箱三、實驗原理1、TMS320LF2407A模數(shù)轉(zhuǎn)換模塊特性-帶內(nèi)置采樣和保持的10位模數(shù)轉(zhuǎn)換模塊ADC,最小轉(zhuǎn)換時間為500ns。-多達 16個的模擬輸入通道(ADCIN0-ADCIN15)。-自動排序的能力。一次可執(zhí)行最多16個通

2、道的“自動轉(zhuǎn)換”,而每次要轉(zhuǎn)換的通道都可通過編程來選擇。-兩個獨立的最多可選擇8個轉(zhuǎn)換通道的排序器可以獨立工作,也可以級連后工作。-排序控制器可決定模擬通道轉(zhuǎn)換的順序??蓡为氃L問的16個轉(zhuǎn)換結(jié)果寄存器。-多個觸發(fā)源啟動轉(zhuǎn)換;-軟件設(shè)置啟動標志;-事件管理器(共兩個)提供多個事件源;-外部ADCSOC引腳。-靈活的中斷控制。-采用和保持獲取時間窗口有單獨的預(yù)定標控制。-內(nèi)置校驗?zāi)J胶妥詼y試模式。2、模數(shù)轉(zhuǎn)換工作過程-模數(shù)轉(zhuǎn)換模塊接到啟動轉(zhuǎn)換信號后,按照排序器的設(shè)置,開始轉(zhuǎn)換第一個通道的數(shù)據(jù);-經(jīng)過一個采用時間的延遲后,將采用結(jié)果放入轉(zhuǎn)換結(jié)果寄存器保存;-按順序經(jīng)行下一個通道的轉(zhuǎn)換;-如果為連續(xù)轉(zhuǎn)

3、換方式則從新開始轉(zhuǎn)換過程;否則等待下一個啟動信號。3、模數(shù)轉(zhuǎn)換的程序控制模數(shù)轉(zhuǎn)換相對于計算機來說是一個較為緩慢的過程。一般采用中斷方式啟動轉(zhuǎn)換或保存結(jié)果,這樣在CPU忙于其他工作室時可以可以少占用處理處理時間。設(shè)計轉(zhuǎn)換程序應(yīng)首先考慮處理過程如何與模數(shù)轉(zhuǎn)換的時間相匹配,根據(jù)實際需要選擇適當?shù)挠|發(fā)轉(zhuǎn)換手段,也要能及時地保存結(jié)果。 由于TMS320LF2407A DSP芯片內(nèi)的AD轉(zhuǎn)換精度是10位的,轉(zhuǎn)換結(jié)果的高10位為所需數(shù)值,所以在保留時應(yīng)注意將結(jié)果的低6位去除,取出高10位有效數(shù)字。4、實驗程序分析本實驗程序設(shè)計設(shè)置DSP采用連續(xù)采集的方式工作,同時采集兩個通道(ADCIN0, ADCIN1)

4、的模擬輸量輸入;使用片內(nèi)通過定時器1產(chǎn)生定時中斷,用以定時保存轉(zhuǎn)換數(shù)據(jù)。源程序框圖如下所示: 清除DSP中斷標志并關(guān)閉DSP中斷設(shè)置DSP的主頻對ADC模塊和定時器進行初始化并啟動定時器使能定時器周期中斷開始開發(fā)DSP中斷保存標記置位否?清保存標記取兩個通道的轉(zhuǎn)換結(jié)果并保存轉(zhuǎn)換結(jié)果存儲區(qū)滿否?設(shè)置指示燈閃爍YY主程序框圖: NN定時器中斷服務(wù)程序框圖:開始中斷返回清楚DSP中斷標志設(shè)置保存標記本實驗的源程序如下:#include "2407c.h" #define ADCNUMBER 256void interrupt gptime1(void);/* 中斷服務(wù)程序,用于設(shè)

5、置保存標志 */void ADInit(void);/* 初始化A/D轉(zhuǎn)換模塊和通用定時器1 */ioport unsigned char port000c;/* I/O端口用于設(shè)置ICETEK-2407-A板上指示燈 */unsigned int uWork,uWork1,nADCount,nLed,*pResult1,*pResult2;int nNewConvert,nWork;unsigned int nADCIn0ADCNUMBER;/* 存儲區(qū)1,保存通道ADCIN0的轉(zhuǎn)換結(jié)果,循環(huán)保存 */unsigned int nADCIn1ADCNUMBER;/* 存儲區(qū)2,保存通道ADC

6、IN1的轉(zhuǎn)換結(jié)果,循環(huán)保存 */main()asm(" CLRC SXM");/* 清標志,關(guān)中斷 */asm(" CLRC OVM");asm(" CLRC CNF");pResult1=RESULT0;pResult2=RESULT1;nNewConvert=0;*WDCR=0x6f;*WDKEY=0x5555;*WDKEY=0xaaaa;/* 關(guān)閉看門狗中斷 */*SCSR1=0x81fe;/* 打開所有外設(shè),設(shè)置時鐘頻率為40MHz */uWork=(*WSGR);/* 設(shè)置I/O等待狀態(tài)為0 */uWork&=0x0

7、fe3f;(*WSGR)=uWork;ADInit();/* 初始化A/D相關(guān)設(shè)備 */*IMR=3;/* 使能定時器中斷 */*IFR=0xffff;/* 清所有中斷標志 */asm(" clrc INTM");/* 開中斷 */ while ( 1 )if ( nNewConvert )/* 如果保存標志置位,以下開始轉(zhuǎn)換和保存轉(zhuǎn)換結(jié)果 */nNewConvert=0;/* 清保存標志 */uWork=(*pResult1);/* 取ADCINT0通道轉(zhuǎn)換結(jié)果 */uWork>>=6;/* 移位去掉低6位 */nADCIn0nADCount=uWork;/*

8、 保存結(jié)果 */uWork=(*pResult2);/* 取ADCINT1通道轉(zhuǎn)換結(jié)果 */uWork>>=6;/* 移位去掉低6位 */nADCIn1nADCount=uWork;/* 保存結(jié)果 */nADCount+;if ( nADCount>=ADCNUMBER )/* 緩沖區(qū)滿后設(shè)置指示燈閃爍 */nADCount=0; /* 中斷位置 */nWork+;if ( nWork>=16 )nWork=0;nLed+; nLed&=0x0f;port000c=nLed; void ADInit(void) /* 初始化設(shè)置 */int i;for ( i=

9、0;i<ADCNUMBER;i+ )/* 緩沖區(qū)清0 */nADCIn0i=nADCIn1i=0;port000c=0;/* 關(guān)指示燈 */*ADCTRL1= 0x2040;/* 設(shè)置連續(xù)轉(zhuǎn)換模式 */*MAXCONV = 0x1;/* 每次完成轉(zhuǎn)換兩個通道 */*CHSELSEQ1=0x10;/* 轉(zhuǎn)換次序,先ADCIN0,再ADCIN1 */*ADCTRL2= 0x2000; /* 啟動轉(zhuǎn)換 */nADCount=nLed=nWork=0;/* 以下設(shè)置通用定時器參數(shù) */*EVAIMRA = 0x80;/* 使能T1PINT */*EVAIFRA = 0xffff;/* 清中斷標志

10、 */*GPTCONA = 0x0100;*T1PR = 2000;/* 保存結(jié)果周期=2000*25ns=50us=20KHz */*T1CNT = 0;/* 計數(shù)器從0開始計數(shù) */*T1CON = 0x1040;/* 連續(xù)增計數(shù)方式,啟動計數(shù)器 */void interrupt gptime1(void) uWork1=(*PIVR); switch ( uWork1 ) case 0x27: nNewConvert=1;/* 設(shè)置保存標志 */(*EVAIFRA)=0x80;/* 清中斷標志位 */ break; 四、預(yù)習要求做實驗前必須做好預(yù)習,明確實驗?zāi)康摹嶒瀮?nèi)容及步驟,對實驗程

11、序進行認真閱讀及分析。五、實驗內(nèi)容及步驟1、實驗準備 (1) 連接設(shè)備 關(guān)閉計算機和實驗箱電源; 檢查ICETEK-LF2407-A板上JP6的位置,應(yīng)連接在1-2位置(靠近DSP芯片端),即設(shè)置DSP工作在MP方式; 用實驗箱附帶的信號連接線連接第二信號源 (2)開啟設(shè)備: 打開計算機電源 打開實驗箱電源開關(guān),打開ICETEK-LF2407-A板上電源開關(guān),注意板上指示燈DS1滅、DS2和DS3亮;打開控制模塊的電源開關(guān); 如使用USB型仿真器用附帶的USB電纜連接計算機和仿真器相應(yīng)接口,注意仿真器上兩個指示燈均亮。 (3)設(shè)置Code Composer Studio為Emulator方式:

12、 參見“Code Composer Studio入門實驗”之四.3。 (4)啟動Code Composer Studio 雙擊桌面上“CCSC2000”圖標,啟動Code Composer Studio2.22、打開工程文件,瀏覽程序 -打開菜單“Project”的“Open”項;選擇D;2407EDULabLab8-AD目錄的“adc.pjt”。 -在項目瀏覽器中,雙擊ad.c,激活ad.c文件,瀏覽該文件的內(nèi)容,理解各語句作用。3、 編譯工程單擊“Project”菜單,“Rebuild all”項,編譯工程中的文件,生成adc.out文件。4、 下載程序單擊“File”菜單,“Load p

13、rogram”項,選D:2407EDULabLab67-Timer目錄中的Timer.out文件,通過仿真器將其下載到2407A DSP上。5、打開觀察窗口-選擇菜單“View”、“Graph”、“Time/Frequency”作如下設(shè)置,然后單擊“OK”按鈕;-選擇菜單“View”、“Graph”、“Time/frequency”作如下設(shè)置,然后單擊“OK”按鈕-在彈出的圖形窗口中單擊鼠標右鍵,選擇“Clear Display”。-再有“終端為止”注釋的語句上加上軟件跟蹤斷點(Toggle Breakpoint),即單擊語句后按F9鍵;通過設(shè)置,我們打開了兩個圖形窗口觀察兩個通道模數(shù)轉(zhuǎn)換的結(jié)

14、果6、設(shè)置信號源由于模數(shù)輸入信號未經(jīng)任何轉(zhuǎn)換就進入DSP,所以必須保證輸入的模擬信號的幅度在03.3V之間。實驗箱上信號源輸出為03.3V,否則容易損壞DSP芯片的模數(shù)采集模塊。首先設(shè)置號信號源(上部)開關(guān)為“關(guān)”。設(shè)置實驗箱上一號信號源的“頻率選擇”在“100Hz1KHz”檔,“波形選擇”在“三角波”檔,“頻率微調(diào)”選擇較大位置靠近最大值,“幅值微調(diào)”選擇最大。開啟一號信號源開關(guān),一號信號源指示燈亮。首先設(shè)置二號信號源(下部)開關(guān)為“關(guān)”。設(shè)置實驗箱上二號信號源的“頻率選擇”在“100Hz1KHz”檔,“波形選擇”在“正弦波”檔,“頻率微調(diào)”選擇適中位置,“幅值微調(diào)”選擇最大。開啟二號信號源

15、開關(guān),二號信號源指示燈亮。7、運行程序觀察結(jié)果-單擊“Debug”菜單,“Run”項,運行程序;-當程序停在所設(shè)置的軟件斷點上時,觀察“ADCIN0”、“ADCIN1”窗口中的圖形顯示;-適當改變信號源的四個調(diào)節(jié)旋鈕的位置,按F5鍵再次運行到斷點位置,觀察圖形窗口中的顯示。注意:輸入信號的頻率不能大于10KHz,否則會引起亂疊失真,而無法觀察到波形,如果有興趣,可以試著做一下,觀察采樣失真后的圖形。8、停止運行結(jié)束實驗六、實驗結(jié)果1、 用實驗中的設(shè)置,我們可以看到如下結(jié)果(將所觀察的波形粘貼在此) 2、實驗程序使用定時器中斷去讀取模數(shù)轉(zhuǎn)換的結(jié)果,這是一種較為簡單的方法。用這種方法,沒有考慮到A/D轉(zhuǎn)換的精確時鐘,必然會造成保存的結(jié)果中發(fā)生多點(重復(fù))、丟點等不精確的結(jié)果。在要求較高的場合,一般采用使用定時器中斷啟動A|D

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論