




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、. . . 實(shí)驗(yàn)成績(jī):DSP硬件實(shí)驗(yàn)報(bào)告學(xué)號(hào): 10210993 :羅潤(rùn)文班序號(hào):報(bào)告提交日期: 2012 年12月日郵電大學(xué)實(shí)驗(yàn)一:常用指令實(shí)驗(yàn)一、 實(shí)驗(yàn)?zāi)康?.熟悉DSP開發(fā)系統(tǒng)的連接2.了解DSP開發(fā)系統(tǒng)的組成和結(jié)構(gòu)和應(yīng)用系統(tǒng)構(gòu)成3.熟悉常用C54X系列指令的用法(程序?qū)ぶ罚拇嫫?,I/O口,定時(shí)器,中斷控制)。二、 實(shí)驗(yàn)設(shè)備計(jì)算機(jī),CCS 2.0版軟件,DSP仿真器,實(shí)驗(yàn)箱。三、 實(shí)驗(yàn)操作方法1、 系統(tǒng)連接進(jìn)行DSP實(shí)驗(yàn)之前,先必須連接好仿真器、實(shí)驗(yàn)箱與計(jì)算機(jī),連接方法如下所示:在硬件安裝完成后,接通仿真器電源或啟動(dòng)計(jì)算機(jī),此時(shí),仿真盒上的“紅色小燈”應(yīng)點(diǎn)亮,否則DSP開發(fā)系統(tǒng)與計(jì)算機(jī)
2、連接有問題。2、 運(yùn)行CCS程序先實(shí)驗(yàn)箱上電,然后啟動(dòng)CCS,此時(shí)仿真器上的“綠色小燈”應(yīng)點(diǎn)亮,并且CCS正常啟動(dòng),表明系統(tǒng)連接正常;否則仿真器的連接、JTAG接口或CCS相關(guān)設(shè)置存在問題,掉電,檢查仿真器的連接、JTAG接口連接,或檢查CCS相關(guān)設(shè)置是否正確。四、 實(shí)驗(yàn)步驟與容(一) 簡(jiǎn)單指令程序運(yùn)行實(shí)驗(yàn)1、 實(shí)驗(yàn)使用資源實(shí)驗(yàn)通過實(shí)驗(yàn)箱上的XF指示燈觀察程序運(yùn)行結(jié)果2、 實(shí)驗(yàn)過程啟動(dòng)CCS 2.0,并加載“exp01.out”;加載完畢后,單擊“Run”運(yùn)行程序;實(shí)驗(yàn)結(jié)果:可見XF燈以一定頻率閃爍;單擊“Halt”暫停程序運(yùn)行,則XF燈停止閃爍,如再單擊“Run”,則“XF”燈又開始閃爍;關(guān)
3、閉所有窗口,本實(shí)驗(yàn)完畢。源程序查看:用下拉菜單中Project/Open,打開“Exp01.pjt”,雙擊“Source”,雙擊“exp01.asm”可查看源程序。源程序注釋如下:源程序:注釋:;File Name:exp01.asm;the program is compiled at no autoinitialization mode.mmregs.global _main_main: stm#3000h,sp ssbx xf call delay rsbx xf call delay b _main nop nop ;delay .5 seconddelay: stm 270fh,ar
4、3 loop1: stm 0f9h,ar4 loop2:banz loop2,*ar4-banz loop1,*ar3-ret nop nop ;stm2 cycles;banzwhen TRUE 4 cycles; FALSE 2 cycles;0f9h=>249d;270fh=>9999d.end定義存儲(chǔ)器映像寄存器 全局符號(hào),可在外部定義;設(shè)置堆棧指針寄存器的值為3000h;置位狀態(tài)寄存器xf;調(diào)用delay函數(shù);復(fù)位狀態(tài)寄存器xf;調(diào)用delay函數(shù);無條件轉(zhuǎn)移至_main;空指令;空指令;設(shè)置輔助寄存器ar3值為9999;設(shè)置輔助寄存器ar4值為249;寄存器a
5、r4值減一,當(dāng)其值不為0時(shí)跳轉(zhuǎn)到loop2;寄存器ar3值減一,當(dāng)其值不為0時(shí)跳轉(zhuǎn)到loop1;返回;空指令;空指令(二)資料存儲(chǔ)實(shí)驗(yàn)1、 實(shí)驗(yàn)使用資源本實(shí)驗(yàn)指導(dǎo)書是以TMS32OVC5410為例,介紹相關(guān)的部和外部存資源。對(duì)于其它類型的CPU請(qǐng)參考查閱相關(guān)的資料手冊(cè)。下面給出TMS32OVC5410的存分配表:對(duì)于存儲(chǔ)空間而言,映像表相對(duì)固定。值得注意的是部寄存器與存儲(chǔ)空間的映像關(guān)系。因此在編程應(yīng)用時(shí)這些特定的空間不能作其它用途。對(duì)于程序存儲(chǔ)空間而言,其映像表和CPU的工作模式有關(guān)。當(dāng)MP/MC引腳為高電平時(shí),CPU工作在微處理器模式;當(dāng)MP/MC引腳低電平時(shí),CPU工作在為計(jì)算機(jī)模式。具體
6、的存映像關(guān)系如上如所示。存實(shí)驗(yàn)主要了解存的操作和DSP的部雙總線結(jié)構(gòu)。并熟悉相關(guān)的指令代碼和執(zhí)行過程等。2、 實(shí)驗(yàn)過程連接好DSP開發(fā)系統(tǒng),運(yùn)行CCS軟件;a) 在CCS的Memory窗口中查找C5410各個(gè)區(qū)段的數(shù)據(jù)存儲(chǔ)器地址,在可以改變的存儲(chǔ)器容的地方,選定地址隨意改變其中容并觀察結(jié)果;b) 在CCS中裝載實(shí)驗(yàn)示程序,單步執(zhí)行程序,程序中寫入和讀出的數(shù)據(jù)存儲(chǔ)地址的變化;c) 改變其它尋址方式,進(jìn)行觀察數(shù)據(jù)存儲(chǔ)器地址與寫入和讀出數(shù)據(jù)的的變化。本實(shí)驗(yàn)說明:本實(shí)驗(yàn)程序?qū)?duì)0x1000開始的8個(gè)地址空間,填寫入0xAAAA的數(shù)值,然后讀出,并存儲(chǔ)到0X1008開始的8個(gè)地址空間。在CCS中可以觀察
7、DATA存空間地址0X10000X100F值的變化。樣例程序?qū)嶒?yàn)操作說明:?jiǎn)?dòng)CCS 2.0,并加載“exp02.out”,用“View”下拉菜單中的“Memory”查看存單元,輸入要查看的存單元地址,本實(shí)驗(yàn)要查看0x1000H0x100FH單元的數(shù)值變化,輸入地址0x1000H,查看0x1000H0x100FH單元的初始值,單擊“Run”運(yùn)行程序,也可以“單步”運(yùn)行程序,單擊“Halt”暫停程序運(yùn)行,查看0x1000H0x100FH單元數(shù)值的變化關(guān)閉各窗口,本實(shí)驗(yàn)完畢。源程序注釋:源程序:注釋:*File Name:exp02.asm;get some knowledge of the cm
8、d file;the program is compiled at no autoinitialization mode.mmregs.global _main _main: ;store datastm 1000h,ar1 rpt#07h st0aaaah,*ar1+ ;read data then re-store stm 7h,ar3 stm1000h,ar1 stm 1008h,ar2 loop:ld*ar1+,t stt,*ar2+ banz loop,*ar3- here: b here.end;將外部存地址1000h賦給ar1;循環(huán)執(zhí)行下一條指令8次;將0aaaah的值
9、存儲(chǔ)在ar1所對(duì)應(yīng)存中,且ar1值加1 ;將7h賦給輔助寄存器ar3;將地址1000h賦給輔助寄存器ar1;將地址1008h賦給輔助寄存器ar2;將輔助寄存器ar1的值賦給t,且ar1存地址加1;將t的值存儲(chǔ)在ar2所對(duì)應(yīng)存中,且ar2存地址加1;寄存器ar3值減1,當(dāng)其值不為0時(shí)跳轉(zhuǎn)到loop;無條件轉(zhuǎn)移至here(三)I/O實(shí)驗(yàn)1、 實(shí)驗(yàn)使用資源數(shù)字量輸入信號(hào)全部拓展出來,數(shù)字量輸入接口主要由兩個(gè),D_Exp與扳東開關(guān)連接,PX4和PX5與電平轉(zhuǎn)換芯片(74LVC245)連接,其功能分別為:D_Exp數(shù)字量輸入擴(kuò)展接口I0I1I2I3I4I5I6I7VCC電平轉(zhuǎn)換擴(kuò)展接口PX45VIN0I
10、N1IN2IN3PX53.3VOUT3OUT2OUT1OUT0通過PORTR,PORTW指令可以實(shí)現(xiàn)I/O口的輸入輸出功能,如數(shù)字量采集實(shí)驗(yàn)。實(shí)驗(yàn)說明:實(shí)驗(yàn)中采用簡(jiǎn)單的一一映像關(guān)系來對(duì)I/O口進(jìn)行驗(yàn)證,目的是使實(shí)驗(yàn)者能夠?qū)/O 有一目了然的認(rèn)識(shí)。在本實(shí)驗(yàn)系統(tǒng)中,提供的IO空間分配如下:CPU1:0x0000 switch input (X) 80x0001 LED output(X) 8CPU2:0x0001DAC0x0004Read_Key0x0006Write_Key0x000FWrite_LCD0x8000 HPIC00x8001HPIC10x8002HPID0(AUTO)0x8003
11、HPID1(AUTO)0x8004HPIA00x8005HPIA10x8006HPID0(NO AUTO)0x8007HPID1(NO AUTO)實(shí)驗(yàn)程序框圖注意: 電平轉(zhuǎn)換接口主要考慮應(yīng)用3.3V的中央處理器時(shí),系統(tǒng)的電平兼容問題,用來保護(hù)CPU不受損壞。系統(tǒng)采用74LVC245電平兼容轉(zhuǎn)換器件。2、 實(shí)驗(yàn)過程運(yùn)行CCS程序,裝載示程序,調(diào)整K0K7的開關(guān),觀察LP1LP7 LED亮滅的變化,以與輸入和輸出狀態(tài)是否一致。(注意:輸出為0時(shí)點(diǎn)亮燈)例程序?qū)嶒?yàn)操作說明啟動(dòng)CCS 2.0,并加載“exp03.out”,單擊“Run”運(yùn)行程序,任意調(diào)整K0K7開關(guān),可以觀察到對(duì)應(yīng)LP0LP7燈“亮”
12、或“滅”;單擊“Halt”,暫停持續(xù)運(yùn)行,開關(guān)將對(duì)燈失去控制。關(guān)閉所有窗口,本實(shí)驗(yàn)完畢。源程序查看:用下拉菜單中Project/Open,打開“Exp03.pjt”,雙擊“Source”,雙擊“exp03.asm”可查看源程序。代碼如下:源程序:注釋:;File Name :exp03.asm;learn how to operate the I/O ports;get some knowledge of the rts.lib file;in the I/O space 0x0000=>8 switches; 0x0001=>8 LEDs.mmregs.global_main.t
13、ext_main:stm3100h,sp stm1000h,ar1portr 00h,*ar1 nop nop portw*ar1,01h nop nop b_main nop nop .end;設(shè)置堆棧指針寄存器的值為3000h;設(shè)置輔助寄存器ar1值為1000h;從00h端口讀數(shù)據(jù)傳入ar1所指向的存空間,讀按鍵;空指令;空指令;將ar1所指向的存空間的值賦給01h端口,控制led燈;空指令;空指令 ;無條件轉(zhuǎn)移至_main,實(shí)現(xiàn)按鍵控制;空指令;空指令(四)定時(shí)器實(shí)驗(yàn)1、實(shí)驗(yàn)使用資源定時(shí)器實(shí)驗(yàn)時(shí)要用到C54芯片的定時(shí)器控制寄存器,定時(shí)器時(shí)間常數(shù)寄存器,定時(shí)器中斷響應(yīng),寄存器定義詳見C54
14、芯片資料。C54的定時(shí)器是一個(gè)20位的減法計(jì)數(shù)器,可以被特定的狀態(tài)位實(shí)現(xiàn)停止、重新啟動(dòng)、重設(shè)置或禁止,可以使用該定時(shí)器產(chǎn)生周期性的CPU中斷,控制定時(shí)器中斷頻率的兩個(gè)寄存器是定時(shí)周期寄存器PRD和定時(shí)減法寄存器TDDR定時(shí)器實(shí)驗(yàn)通過 LED(LP1LP7)來顯示。在本系統(tǒng)中,時(shí)鐘頻率為20MHZ,令PRD = 0x4e1f,這樣得到每1/1000秒中斷一次,通過累計(jì)1000次,就能定時(shí)1秒鐘。2、實(shí)驗(yàn)過程調(diào)入樣例程序,裝載并運(yùn)行;例程序?qū)嶒?yàn)操作說明啟動(dòng)CCS 2.0,并加載“exp04.out”,單擊“Run”運(yùn)行,可觀察到LED燈(LP0LP7)以一定的間隔時(shí)間不停擺動(dòng),單擊“Halt”,暫
15、停程序運(yùn)行,LED 燈停止閃爍,單擊“Run”,運(yùn)行程序,LED燈又開始閃爍。關(guān)閉所有窗口,本實(shí)驗(yàn)完畢。源程序:exp04.c注釋:#include <stdio.h>interrupt void timer();/*extern void time();*/extern void initial();extern void porta();extern void portb();int flag=0;interrupt void timer()*(int *)0x300=*(int *)0x300+1if(*(int *)0x300=0x3e8)*(int *)0x300=0;
16、*(int *)0x302=*(int *)0x302+1; if(flag=0) flag=1;porta();else flag=0;portb(); return; main()initial(); 初始化while(1); ; 無限循環(huán) ;定時(shí)不斷加1;當(dāng)定時(shí)器數(shù)值達(dá)到0x3e8,開始定時(shí)器中斷為定時(shí)器重新賦予初值;如果flag為0,則將其變?yōu)?,執(zhí)行porta();如果flag為1,則將其變?yōu)?,執(zhí)行portb()源程序:initial.asm.mmregs.global _initial_initial:stm 300h,ar1 st #00h,*ar1stm 302h,ar1st
17、 #00h,*ar1stm200h,ar1st#5555h,*ar1stm201h,ar1st#0aaaah,*ar1stm202h,ar1st#400h,*ar1 ssbx1,11 stm 0ffffh,ifrstm 00h,imr stm 410h,tcrstm 4e1fh,prdstm 420h,tcrstm 08h,imrrsbx 1,11 ret;將300h賦值給ar1;將00h賦值給存地址為300h的空間里;將302h賦值給ar1;將00h賦值給存地址為302h的空間里;為存200h的容賦予5555h;為存201h的容賦予aaaah;為存202h的容賦予400h;設(shè)置ST1.INT
18、M=1,停止所有的中斷;清除所有中斷的標(biāo)志位,中斷標(biāo)志寄存器(IFR)用來指明各個(gè)中斷的目前狀態(tài)。; 停止所有的中斷 中斷屏蔽寄存器(IMR)在需要的時(shí)候獨(dú)立地屏蔽特定的中斷; 停止定時(shí)器; 設(shè)置定時(shí)器, 定時(shí)器周期計(jì)數(shù)器; 打開定時(shí)器 定時(shí)器控制寄存器;允許定時(shí)器中斷;設(shè)置ST1.INTM=0,打開所有中斷源程序:port.asm注釋:.mmregs.global_porta.global_portb_porta:stm304h,ar1 st5555h,*ar1portw*ar1,01hret_portb:stm304h,ar1st0aaaah,*ar1portw*ar1,01hret;將3
19、04h賦給輔助寄存器ar1;將存304h的容賦予5555h;將存304h的值寫入01h端口;將存304h的容賦予0aaaah;將存304h的值寫入01端口源程序:vectors.asm注釋: .sect ".vectors" .ref _c_int00 .ref _timer .align 0x80 RESET: BD_c_int00 STM #200,SP stack size of 200nmi: RETE NOP NOP NOP sint17 .space 4*16sint18 .space 4*16sint19 .space 4*16sint20 .space 4*
20、16sint21 .space 4*16sint22 .space 4*16sint23 .space 4*16sint24 .space 4*16sint25 .space 4*16sint26 .space 4*16sint27 .space 4*16sint28 .space 4*16sint29 .space 4*16sint30 .space 4*16int0: RETE NOP NOP NOPint1: RETE NOP NOP NOPint2: RETE NOP NOP NOPtint: b _timer NOP NOPrint0: RETE NOP NOP NOPxint0:
21、RETE NOP NOP NOPrint1: RETE NOP NOP NOPxint1: RETE NOP NOP NOPint3: RETE NOP NOP NOP .end引用函數(shù)c_int00引用了c中的函數(shù)頁邊界排列reset vector,復(fù)位中斷響應(yīng)延遲分支到C主程序默認(rèn)入口地址,c_int00是c程序的入口,這里即進(jìn)入main函數(shù)中開辟堆棧空間棧的大小設(shè)置為200中斷屏蔽置為0,響應(yīng)中斷,不可屏蔽中斷產(chǎn)生時(shí),使中斷屏蔽取消,后返回。保留出中斷向量的地址空間中斷寄存器設(shè)置RETE返回并允許中斷外部中斷產(chǎn)生時(shí),直接返回。定時(shí)器產(chǎn)生的時(shí)鐘中斷,返回到c中定義的timer程序,b即是跳
22、轉(zhuǎn)同步串口0(McBSP0)接受的中斷,直接返回同步串口0(McBSP0)發(fā)送的中斷,直接返回同步串口1(McBSP1)接受的中斷,直接返回同步串口1(McBSP1)發(fā)送的中斷,直接返回(五)INT2中斷實(shí)驗(yàn)1、實(shí)驗(yàn)使用資源本實(shí)驗(yàn)是進(jìn)行C54芯片的INT2中斷練習(xí), C54芯片中斷INT2是低電平單脈沖觸發(fā);實(shí)驗(yàn)采用導(dǎo)線一端連接D_Exp數(shù)字量輸入擴(kuò)展接口I0,經(jīng)PX4的IN3,到PX5的OUT0電平轉(zhuǎn)換,再與另一端連接INT2插孔;撥動(dòng)開關(guān)K0一次,就產(chǎn)生一個(gè)低電平單脈沖;運(yùn)行示程序,觀察LP1LP7 LED燈的輸出變化;可觀察到每撥動(dòng)開關(guān)K0一次LP1LP7燈亮滅變化一次;2、實(shí)驗(yàn)過程樣例
23、程序?qū)嶒?yàn)操作說明啟動(dòng)CCS 2.0,并加載“exp05.out”,單擊“Run”運(yùn)行程序,反復(fù)撥動(dòng)開關(guān)K0,觀察LP1LP7 LED燈亮滅變化,單擊“Halt”暫停程序運(yùn)行,反復(fù)撥動(dòng)開關(guān)K0,LP1LP7 LED燈亮滅不變化; 關(guān)閉所有窗口,本實(shí)驗(yàn)完畢。源程序查看:用下拉菜單中Project/Open,打開“Exp05.pjt”,雙擊“Source”,雙擊“int2.c”、“initial.asm”、“port.asm”以與“vectors.asm”可查看各源程序。源程序:int2.c注釋:interrupt void int2c(); extern void initial();extern
24、 voidporta();extern void portb();int flag=0;main()initial();while(1); interrupt void int2c() asm("nop"); *(int *)0x300=*(int *)0x300+2if(flag=0)flag=1;porta();elseflag=0; portb(); ;/*break here to show if interrupt happened*/這是一個(gè)記錄外部中斷的標(biāo)志,通過記錄0x300h中的值來記錄源程序:initial.asm注釋:.mmregs.global _i
25、nitial .text _initial:stm 300h,ar3 st #00h,*ar3stm 302h,ar4st #00h,*ar4ssbx1,11 stm 00h,imrstm 0ffffh,ifrstm 04h,imrrsbx 1,11ret .end;將00h存入地址為300h的存中;將00h存入地址為302h的存中;設(shè)置ST1.INTM=1,停止所有的中斷;停止所有的中斷,中斷屏蔽寄存器(IMR)在需要的時(shí)候獨(dú)立地屏蔽特定的中斷;清除所有中斷的標(biāo)志位,中斷標(biāo)志寄存器(IFR)用來指明各個(gè)中斷的目前狀態(tài)。;開啟int2的外部中斷;打開所有中斷總開關(guān)源程序:port.asm注釋:
26、.mmregs.global_porta.global_portb_porta:stm304h,ar1 st5555h,*ar1portw*ar1,01hret_portb:stm304h,ar1st0aaaah,*ar1portw*ar1,01hret; 將304h賦給輔助寄存器ar1;將存304h的容賦予5555h;將存304h的值寫入01h端口;將存304h的容賦予0aaaah;將存304h的值寫入01端口源程序:vectors.asm注釋: .sect ".vectors" .ref _c_int00 .ref _int2c .align 0x80 RESET: B
27、D_c_int00 STM #200,SP stack size of 200nmi: RETE NOP NOP NOP sint17 .space 4*16sint18 .space 4*16sint19 .space 4*16sint20 .space 4*16sint21 .space 4*16sint22 .space 4*16sint23 .space 4*16sint24 .space 4*16sint25 .space 4*16sint26 .space 4*16sint27 .space 4*16sint28 .space 4*16sint29 .space 4*16sint3
28、0 .space 4*16int0: RETE NOP NOP NOPint1: RETE NOP NOP NOPint2: RETE NOP NOP NOPtint: b _timer NOP NOPrint0: RETE NOP NOP NOPxint0: RETE NOP NOP NOPrint1: RETE NOP NOP NOPxint1: RETE NOP NOP NOPint3: RETE NOP NOP NOP .end引用函數(shù)c_int00頁邊界排列reset vector,復(fù)位中斷響應(yīng)延遲分支到C主程序默認(rèn)入口地址,c_int00是c程序的入口,這里即進(jìn)入main函數(shù)中開辟
29、堆??臻g中斷屏蔽置為0,響應(yīng)中斷,不可屏蔽中斷產(chǎn)生時(shí),使中斷屏蔽取消,后返回。保留出中斷向量的地址空間中斷寄存器設(shè)置RETE返回并允許中斷外部中斷產(chǎn)生時(shí),直接返回。定時(shí)器產(chǎn)生的時(shí)鐘中斷,返回到c中定義的timer程序,b即是跳轉(zhuǎn)同步串口0(McBSP0)接受的中斷,直接返回同步串口0(McBSP0)發(fā)送的中斷,直接返回同步串口1(McBSP1)接受的中斷,直接返回同步串口1(McBSP1)發(fā)送的中斷,直接返回實(shí)驗(yàn)二 A/D采樣實(shí)驗(yàn)一、 實(shí)驗(yàn)?zāi)康? 掌握利用TLV320AD50實(shí)現(xiàn)/轉(zhuǎn)換的技術(shù)基本原理和常用方法。2 學(xué)會(huì)DSP的多信道緩沖串口的應(yīng)用方法。3 掌握并熟練使用DSP和AD50的接口與
30、其操作。4 通過實(shí)驗(yàn)加深對(duì)DSP系統(tǒng)頻譜混疊認(rèn)識(shí)。二、 實(shí)驗(yàn)設(shè)備計(jì)算機(jī),CCS 2.0軟件,DSP仿真器,實(shí)驗(yàn)箱,示波器,連接導(dǎo)線。三、 實(shí)驗(yàn)步驟和容1 實(shí)驗(yàn)連線² 用短接塊短接SS1的1,2腳,設(shè)置輸出低頻信號(hào);短接S2 的Sin腳,設(shè)置輸出正弦波信號(hào),這時(shí)模擬信號(hào)產(chǎn)生單元SP1輸出為低頻正弦波。² JD跳線斷開,設(shè)置語音處理單元輸入信號(hào)為交流;并用導(dǎo)線連接SP1腳和JAD3的1腳,將模擬低頻正弦波信號(hào)接入語音處理單元。² 用導(dǎo)線連接JAD1的INP和INPF,以與JAD2的INM和INMF,將語音處理單元輸出的差動(dòng)模擬信號(hào)接入AD50輸入端。2 運(yùn)行 CCS
31、2.0軟件, 裝入“exp06.pjt”工程文件,雙擊“exp06.pjt”與“Source”3加載“exp06.out”示程序,在“exp06.c”中“READAD50()”處,設(shè)置斷點(diǎn),運(yùn)行程序,通過用下拉菜單中的View / Graph的“Time/Frequency”打開一個(gè)圖形觀察窗口,調(diào)節(jié)輸入信號(hào)的頻率或幅值, 觀察圖形情況(幅值和頻率),設(shè)置該圖形觀察窗口的參數(shù),觀察起始地址為0x1000H,長(zhǎng)度為256的存單元的數(shù)據(jù),該資料為輸入信號(hào)經(jīng)A/D轉(zhuǎn)換之后的數(shù)據(jù),數(shù)據(jù)類型為16位整型,擊“Animate”運(yùn)行程序,在圖形觀察窗口觀察A/D轉(zhuǎn)換后的采樣波形。在圖形觀察窗口觀察A/D轉(zhuǎn)換
32、后的采樣波形;旋轉(zhuǎn)開發(fā)板上的幅度旋鈕,得到波形如下:旋轉(zhuǎn)開發(fā)板上的頻率旋鈕,得到波形如下:繼續(xù)改變頻率,導(dǎo)致頻譜混疊,波形如下:實(shí)驗(yàn)三:轉(zhuǎn)換實(shí)驗(yàn)一、 實(shí)驗(yàn)?zāi)康? 掌握利用TLV320AD50實(shí)現(xiàn)/轉(zhuǎn)換的技術(shù)基本原理和常用方法。2 進(jìn)一步學(xué)習(xí)DSP的多信道緩沖串口的應(yīng)用方法。3 掌握并熟練使用DSP和AD50的輸出接口與其操作。二、 實(shí)驗(yàn)設(shè)備計(jì)算機(jī),CCS 2.0版軟件,DSP仿真器,實(shí)驗(yàn)箱,示波器。三、 實(shí)驗(yàn)步驟與容1 不需聯(lián)機(jī),通過示波器觀測(cè)輸出波形情況;2 運(yùn)行CCS軟件,加載示源程序,了解實(shí)驗(yàn)程序; 3 加載示程序“exp07.out”,并通過File/Data/Load裝載波形數(shù)據(jù)si
33、n.dat。.按F5運(yùn)行程序,用示波器檢測(cè)JAD4的3腳AD50_DAout輸出一個(gè)正弦波;.在程序中,改變相應(yīng)資料來實(shí)現(xiàn)改變波形和周期;得到的波形如下所示:在示波器觀察的模擬信號(hào)波形如下,由以上兩個(gè)波形圖可以看出,數(shù)字信號(hào)周期為,模擬信號(hào)周期為。右由模擬角頻率與數(shù)字角頻率的關(guān)系可推導(dǎo)出采樣頻率為實(shí)驗(yàn)四:數(shù)字濾波器(FIR算法實(shí)驗(yàn))一實(shí)驗(yàn)?zāi)康?掌握用窗函數(shù)法設(shè)計(jì)FIR數(shù)字濾波器的原理和方法;2熟悉線性相位FIR數(shù)字濾波器特性;3了解各種窗函數(shù)對(duì)濾波特性的影響。二實(shí)驗(yàn)設(shè)備計(jì)算機(jī),CCS 2.0 版軟件,實(shí)驗(yàn)箱,DSP仿真器,短接塊,導(dǎo)線。三實(shí)驗(yàn)原理1有限沖擊響應(yīng)數(shù)字濾波器的基礎(chǔ)理論;2模擬濾波器
34、原理(巴特沃斯濾波器、切比雪夫?yàn)V波器、貝塞爾濾波器);3數(shù)字濾波器系數(shù)的確定方法。四實(shí)驗(yàn)步驟1復(fù)習(xí)如何設(shè)計(jì)FIR數(shù)字濾波。閱讀本實(shí)驗(yàn)原理,掌握設(shè)計(jì)步驟;2閱讀本實(shí)驗(yàn)所提供的樣例子程序;3運(yùn)行CCS軟件,對(duì)樣例程序進(jìn)行跟蹤,分析結(jié)果;4填寫實(shí)驗(yàn)報(bào)告。5樣例程序?qū)嶒?yàn)操作說明1)實(shí)驗(yàn)前準(zhǔn)備在模擬信號(hào)產(chǎn)生單元中,一路信號(hào)源產(chǎn)生低頻正弦波信號(hào)(S1 置“L”),另一路信號(hào)源產(chǎn)生高頻正弦波信號(hào)(S11置“H”),檢查模擬信號(hào)輸出端口“A”與“B”應(yīng)斷開;實(shí)驗(yàn)箱上電,用示波器分別觀測(cè)out1和out2輸出的模擬信號(hào),調(diào)節(jié)電位器SPR1、SPR2(out1輸出信號(hào)的頻率調(diào)節(jié)和幅值調(diào)節(jié))和電位器SPR11、SP
35、R12(out2輸出信號(hào)的頻率調(diào)節(jié)和幅值調(diào)節(jié)),直至滿意為止;本樣例實(shí)驗(yàn)程序建議:低頻正弦波信號(hào)為100Hz/1V;高頻正弦波信號(hào)為6KHz/1V;實(shí)驗(yàn)箱掉電,做以下連接和檢查:短接輸出端口“A”與“B”;短接JAD1的INM、INMF;短接JAD2的INP、INPF;用導(dǎo)線連接out2(模擬信號(hào)輸出)和JAD3 1腳(MIC_IN);檢查:JD 是否斷開。注:有關(guān)以上連接的說明,可參見第八章中語音接口跳線接輸出接口配置使用說明以與信號(hào)產(chǎn)生單元配置說明。正確完成計(jì)算機(jī)、DSP仿真器和實(shí)驗(yàn)箱的連接后,系統(tǒng)上電。實(shí)驗(yàn)程序說明:該程序?yàn)?1階FIR低通濾波器算法程序,采用矩形窗函數(shù)實(shí)現(xiàn),數(shù)組h和xm
36、id長(zhǎng)度均為51,fs 為采樣頻率,fstop 為濾波器截止頻率,可以修改以上參數(shù)來改變?yōu)V波器性能。重新“Rebuild All”后,并加載“Load”,單擊“Animate”,可得到不同的實(shí)驗(yàn)結(jié)果;實(shí)驗(yàn)結(jié)果:在CCS2.0環(huán)境,同步觀察輸入信號(hào)與其FIR低通濾波結(jié)果。通過修改程序,使得濾波器變?yōu)楦咄V波器。未修改的源程序中的文件代碼如下:extern void InitC5402(void);extern void OpenMcBSP(void);extern void CloseMcBSP(void);extern void READAD50(void);extern void WRITE
37、AD50(void);/* Main Function Program*/ #include "stdio.h" #include "math.h" #define pi 3.1415927 double npass,h51, x, y, xmid51; int m=50; int n=256; void firdes (int m, double npass); main () int xm,ym;int *px = (int*)0x3000;int *py = (int*)0x3100; double fs,fstop,r,rm; int i,j,p,k,s; k=0; fs = 16000; fstop = 2000; npass = fstop/fs; for (i=0; i<=m; i+) xmidi=0; firdes(m, npass); for (; ; ) OpenMcBSP();for (s=0; s<=4; s+)READAD50();for (i=0; i<=n-1; i+)px = (int*)
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 11842-2025二氧化鈾粉末和芯塊的氧鈾原子比測(cè)定熱重法
- 火災(zāi)調(diào)查應(yīng)急工作預(yù)案(3篇)
- 高考數(shù)學(xué)常見題型解法分享及答案
- 追求理想的高考作文思路及試題及答案
- 行政管理人際關(guān)系試題及答案
- 追求卓越的心態(tài)與行動(dòng)-高考作文考試試題及答案
- 火災(zāi)發(fā)生應(yīng)急預(yù)案演練(3篇)
- 2025年軟件考試焦點(diǎn)討論試題
- 防汛火災(zāi)等應(yīng)急預(yù)案(3篇)
- 競(jìng)爭(zhēng)戰(zhàn)略與市場(chǎng)靈活性試題及答案
- 市場(chǎng)部經(jīng)理崗位職責(zé)
- 信息繭房課件模板
- 花木蘭短劇劇本英文版
- 教育部研究生、本科、高職學(xué)科分類及專業(yè)目錄
- Unit+2+Lesson+3+Getting+To+The+Top 高中英語北師大版(2019)選擇性必修第一冊(cè)
- 查勘定損溝通談判技巧
- 籃球賽計(jì)分表模板
- 如何預(yù)防性侵害(公開課)
- boschqbasics博世價(jià)值流課件
- 鐵路勞動(dòng)合同書
- 新部編版四年級(jí)下冊(cè)語文閱讀理解專項(xiàng)訓(xùn)練(15篇)
評(píng)論
0/150
提交評(píng)論