DSP課程設(shè)計--DSP原理及應(yīng)用實驗報告_第1頁
DSP課程設(shè)計--DSP原理及應(yīng)用實驗報告_第2頁
DSP課程設(shè)計--DSP原理及應(yīng)用實驗報告_第3頁
DSP課程設(shè)計--DSP原理及應(yīng)用實驗報告_第4頁
DSP課程設(shè)計--DSP原理及應(yīng)用實驗報告_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、.鄭州航空工業(yè)管理學(xué)院電子通信工程系DSP原理及應(yīng)用實驗報告學(xué)號: 姓名: 專業(yè): 指導(dǎo)老師: 實驗一 CCS的安裝與設(shè)置1. 實驗?zāi)康恼莆誄CS 2(2000)集成開發(fā)環(huán)境的安裝;掌握軟件仿真環(huán)境的設(shè)置方法;熟悉CCS集成開發(fā)環(huán)境的應(yīng)用界面。2. 實驗設(shè)備PC機(jī)、CCS 2(2000)IDE軟件、EXP-IV DSP實驗箱3. 實驗要求l 熟悉安裝CCS 2(2000)IDE軟件的步驟l 根據(jù)DSP芯片的型號正確設(shè)置軟件仿真環(huán)境l 了解CCS集成開發(fā)環(huán)境應(yīng)用界面的各項內(nèi)容4. 實驗內(nèi)容(1) CCS 2(2000)IDE軟件的安裝步驟1. CCS的安裝1.1退出病毒防火墻及殺毒軟件1.2解壓

2、CCS2000 2.2 .rar文件并運(yùn)行setup.exe安裝程序文件。1.3選擇安裝界面中 “Code Cmposter Studio”選項。如下圖(1-1)所示 圖(1-1)1.4完成上述步驟后只需點“Next”繼續(xù)。在出現(xiàn)提示確認(rèn)沒有運(yùn)行病毒檢測軟件的提示窗口時點“確定”。如下圖(1-2)所示圖(1-2)1.5選擇“Yes”同意CCS的安裝協(xié)議。如下圖(1-3)所示圖(1-3)1.6選擇默認(rèn)安裝組件,點“Next”。如下圖(1-4)所示圖(1-4)1.7選擇默認(rèn)安裝路徑“C:ti”點“Next”。如下圖(1-5)所示圖(1-5)1.8出現(xiàn)下圖(1-6)所示時取消勾選項,并點擊“Fini

3、sh”。圖(1-6)1.9完成上述步驟,再出現(xiàn)的對話框中點擊“確定”。如下圖(1-7)所示圖(1-7)1.10安裝完成后,計算機(jī)桌面出現(xiàn)如下圖(1-8)所示的快捷方式圖標(biāo)。 圖(1-8)(2) TMS320F2812 微處理器的軟件仿真環(huán)境的設(shè)置2.1雙擊桌面“Setup CCS 2”的快捷方式啟動設(shè)置程序。2.2在出現(xiàn)的如下圖(1-9)所示的窗口中依次進(jìn)行單擊“Clear”清除原有設(shè)置選擇“F2812 Device Simulator”配置單擊“Import”輸入配置單擊“Save and Quit”圖(1-9)2.3在接下來的對話框中單擊“否”完成對CCS的設(shè)置。圖(1-10)(3) CC

4、S集成開發(fā)環(huán)境的應(yīng)用界面雙擊桌面上的CCS 2(C2000)快捷圖標(biāo)。成功啟動的CCS如下圖(1-11)所示。圖(1-11)5. 問題與分析CCS軟件仿真環(huán)境(Emulator)如何設(shè)置?1. 點擊“Setup CCS 2”更改CCS軟件仿真環(huán)境的設(shè)置。2. 在彈出界面中設(shè)置:在“Filters”中的“Family”選項中選擇“F28xx”,在“Platform”選項中選擇“simulator”,然后在“Available Configurations”中選擇“F2812 Device Simulator”。設(shè)計如圖(1-12)所示:圖(1-12)3. 點擊“Save and Quit”退出設(shè)

5、置。實驗二 XF管腳的驅(qū)動與觀察1.實驗?zāi)康恼莆誗PRC097軟件包的安裝與使用方法;掌握在CCS集成開發(fā)環(huán)境下建立或打開工程的方法;掌握XF管腳的驅(qū)動與測試方法;掌握工程的編譯、下載與調(diào)試方法;熟悉CCS集成開發(fā)環(huán)境中寄存器觀察工具的使用。2.實驗設(shè)備PC機(jī)、CCS 2(2000)IDE軟件、EXP-IV DSP實驗箱3.實驗要求l 熟悉SPRC097軟件包的安裝步驟l 會利用SPRC097中的工程環(huán)境建立或打開工程l 實現(xiàn)XF管腳的驅(qū)動編程l 會利用寄存器觀察工具察看XF管腳的狀態(tài)4.實驗內(nèi)容(1)SPRC097軟件包的安裝如圖(2-1)所示 圖(2-1)(2)XF管腳驅(qū)動編程的環(huán)境如圖(

6、2-2)所示 圖(2-2)(1) 主要程序代碼#include "DSP281x_Device.h" / DSP281x Headerfile Include File#include "DSP281x_Examples.h" / DSP281x Examples Include Filevoid delay(void);void main(void) int p,r,q; InitSysCtrl(); InitPieCtrl(); IER = 0x0000; IFR = 0x0000; InitPieVectTable(); /控制XF管腳 EALLO

7、W; GpioMuxRegs.GPFMUX.all=0xffff; EDIS; for(r=0;r<100;r+) /*xf管腳置低*/ asm(" clrc xf"); for(p=0;p<10;p+) for(q=0;q<10;q+) delay(); /*xf管腳置高*/ asm(" setc xf"); for(p=0;p<10;p+) for(q=0;q<10;q+) delay(); for(;) ; void delay(void) unsigned int k,i,j; for(k=0;k<5;k+);

8、 for(i=0;i<5;i+); for(j=0;j<5;j+);圖(2-3)5.問題與分析XF管教的設(shè)置可以設(shè)置為功能引GpioMuxRegs.GPFMUX.all=0xffff,當(dāng)配置為功能引腳是可以用setc XF與clrc xf對XF引腳置低貨置高,也可以設(shè)置為通用輸入輸出管腳GpioMuxRegs.GPFMUX.all=0x0000,可以通過GpioDataRegs.GPFDAT.all=0x0000與GpioDataRegs.GPFDAT.all=0xffff設(shè)置XF引腳輸出為低或為高。仿真時可以通過View下的Registers下的status查看XF管腳寄存器位的

9、變化,如圖(2-4)所示:圖(2-4);實驗三 GPIO模塊的驅(qū)動程序設(shè)計1.實驗?zāi)康恼莆誄CS硬件仿真環(huán)境的設(shè)置方法;掌握GPIO模塊的驅(qū)動與測試方法;熟悉工程的編譯、下載與調(diào)試方法。2.實驗設(shè)備PC機(jī)、CCS 2(2000)IDE軟件、XDS510仿真器、EXP-IV DSP實驗箱3.實驗要求l 熟悉GPIO模塊的功能原理l 會利用SPRC097中的工程環(huán)境建立或打開工程l 實現(xiàn)GPIO模塊的驅(qū)動編程4. 實驗內(nèi)容(1) 安裝硬件驅(qū)動到C:ti。雙擊選擇安裝路徑為C:ti,點擊lnstall如圖(3-1)所示圖(3-1)(2) 使用硬件安裝向?qū)О惭b設(shè)備驅(qū)動如圖(3-2)a、b、c所示圖(3

10、-2)a圖(3-2)b圖(3-3)c(3) CCS硬件仿真環(huán)境的設(shè)置選擇 (4)建立GPIO模塊的工程如圖(3-3)所示圖(3-3)(5)主要程序代碼 #include "DSP281x_Device.h" / DSP281x Headerfile Include File#include "DSP281x_Examples.h" / DSP281x Examples Include File#define EXAMPLE1 1 / Use DATA registers to toggle I/O's#define EXAMPLE2 0 / Us

11、e SET/CLEAR registers to toggle I/O's#define EXAMPLE3 0 / Use TOGGLE registers to toggle I/O's/ Prototype statements for functions found within this file.void delay_loop(void);void Gpio_select(void);void Gpio_example1(void);void Gpio_example2(void);void Gpio_example3(void);void main(void)/ S

12、tep 1. Initialize System Control:/ PLL, WatchDog, enable Peripheral Clocks/ This example function is found in the DSP281x_SysCtrl.c file. InitSysCtrl(); / Step 2. Initalize GPIO: / This example function is found in the DSP281x_Gpio.c file and/ illustrates how to set the GPIO to it's default stat

13、e./ InitGpio(); / Skipped for this example / For this example use the following configuration: Gpio_select(); / Step 3. Clear all interrupts and initialize PIE vector table:/ Disable CPU interrupts DINT;/ Initialize PIE control registers to their default state./ The default state is all PIE interrup

14、ts disabled and flags/ are cleared. / This function is found in the DSP281x_PieCtrl.c file. InitPieCtrl();/ Disable CPU interrupts and clear all CPU interrupt flags: IER = 0x0000; IFR = 0x0000;/ Initialize the PIE vector table with pointers to the shell Interrupt / Service Routines (ISR). / This wil

15、l populate the entire table, even if the interrupt/ is not used in this example. This is useful for debug purposes./ The shell ISR routines are found in DSP281x_DefaultIsr.c./ This function is found in DSP281x_PieVect.c. InitPieVectTable();/ Step 4. Initialize all the Device Peripherals:/ This funct

16、ion is found in DSP281x_InitPeripherals.c/ InitPeripherals(); / Not required for this example/ Step 5. User specific code:#if EXAMPLE1 / This example uses DATA registers to toggle I/O's Gpio_example1();#endif / - EXAMPLE1#if EXAMPLE2 / This example uses SET/CLEAR registers to toggle I/O's Gp

17、io_example1(); #endif#if EXAMPLE3 / This example uses TOGGLE registers to toggle I/O's Gpio_example3(); #endif void delay_loop() short i; for (i = 0; i < 1000; i+) void Gpio_example1(void) / Example 1: / Toggle I/Os using DATA registers / Note: When using the DATA reigsters, input values / ma

18、y be lost. If there are inputs on the port then / use the CLEAR/SET/TOGGLE registers instead. while(1) GpioDataRegs.GPADAT.all =0xAAAA; GpioDataRegs.GPBDAT.all =0xAAAA; GpioDataRegs.GPDDAT.all =0x0022; GpioDataRegs.GPEDAT.all =0x0002; GpioDataRegs.GPFDAT.all =0xAAAA; GpioDataRegs.GPGDAT.all =0x0020;

19、 delay_loop(); GpioDataRegs.GPADAT.all =0x5555; GpioDataRegs.GPBDAT.all =0x5555; GpioDataRegs.GPDDAT.all =0x0041; / Four I/Os only GpioDataRegs.GPEDAT.all =0x0005; / ThreeI/Os only GpioDataRegs.GPFDAT.all =0x5555; GpioDataRegs.GPGDAT.all =0x0010; / Two I/Os only delay_loop(); void Gpio_example2(void

20、) / Example 2: / Toggle I/Os using SET/CLEAR registers while(1) GpioDataRegs.GPASET.all =0xAAAA; GpioDataRegs.GPACLEAR.all =0x5555; GpioDataRegs.GPBSET.all =0xAAAA; GpioDataRegs.GPBCLEAR.all =0x5555; GpioDataRegs.GPDSET.all =0x0022; GpioDataRegs.GPDCLEAR.all =0x0041; / Four I/Os only GpioDataRegs.GP

21、ESET.all =0x0002; GpioDataRegs.GPECLEAR.all =0x0005; / ThreeI/Os only GpioDataRegs.GPFSET.all =0xAAAA; GpioDataRegs.GPFCLEAR.all =0x5555; GpioDataRegs.GPGSET.all =0x0020; GpioDataRegs.GPGCLEAR.all =0x0010; / Two I/Os only delay_loop(); GpioDataRegs.GPACLEAR.all =0xAAAA; GpioDataRegs.GPASET.all =0x55

22、55; GpioDataRegs.GPBCLEAR.all =0xAAAA; GpioDataRegs.GPBSET.all =0x5555; GpioDataRegs.GPDCLEAR.all =0x0022; GpioDataRegs.GPDSET.all =0x0041; / Four I/Os only GpioDataRegs.GPECLEAR.all =0x0002; GpioDataRegs.GPESET.all =0x0005; / ThreeI/Os only GpioDataRegs.GPFCLEAR.all =0xAAAA; GpioDataRegs.GPFSET.all

23、 =0x5555; GpioDataRegs.GPGCLEAR.all =0x0020; GpioDataRegs.GPGSET.all =0x0010; / Two I/Os only delay_loop(); void Gpio_example3(void) / Example 2: / Toggle I/Os using TOGGLE registers / Set pins to a known state GpioDataRegs.GPASET.all =0xAAAA; GpioDataRegs.GPACLEAR.all =0x5555; GpioDataRegs.GPBSET.a

24、ll =0xAAAA; GpioDataRegs.GPBCLEAR.all =0x5555; GpioDataRegs.GPDSET.all =0x0022; GpioDataRegs.GPDCLEAR.all =0x0041; / Four I/Os only GpioDataRegs.GPESET.all =0x0002; GpioDataRegs.GPECLEAR.all =0x0005; / ThreeI/Os only GpioDataRegs.GPFSET.all =0xAAAA; GpioDataRegs.GPFCLEAR.all =0x5555; GpioDataRegs.GP

25、GSET.all =0x0020; GpioDataRegs.GPGCLEAR.all =0x0010; / Two I/Os only / Use TOGGLE registers to flip the state of / the pins. / Any bit set to a 1 will flip state (toggle) / Any bit set to a 0 will not toggle. while(1) GpioDataRegs.GPATOGGLE.all = 0xFFFF; GpioDataRegs.GPBTOGGLE.all = 0xFFFF; GpioData

26、Regs.GPDTOGGLE.all = 0xFFFF; GpioDataRegs.GPETOGGLE.all = 0xFFFF; GpioDataRegs.GPFTOGGLE.all = 0xFFFF; GpioDataRegs.GPGTOGGLE.all = 0xFFFF; delay_loop(); void Gpio_select(void) Uint16 var1; Uint16 var2; Uint16 var3; var1= 0x0000;/ sets GPIO Muxs as I/Os var2= 0xFFFF;/ sets GPIO DIR as outputs var3=

27、0x0000;/ sets the Input qualifier values EALLOW; GpioMuxRegs.GPAMUX.all=var1; GpioMuxRegs.GPBMUX.all=var1; GpioMuxRegs.GPDMUX.all=var1; GpioMuxRegs.GPFMUX.all=var1; GpioMuxRegs.GPEMUX.all=var1; GpioMuxRegs.GPGMUX.all=var1; GpioMuxRegs.GPADIR.all=var2;/ GPIO PORTs as output GpioMuxRegs.GPBDIR.all=var

28、2; / GPIO DIR select GPIOs as output GpioMuxRegs.GPDDIR.all=var2; GpioMuxRegs.GPEDIR.all=var2; GpioMuxRegs.GPFDIR.all=var2; GpioMuxRegs.GPGDIR.all=var2; GpioMuxRegs.GPAQUAL.all=var3; / Set GPIO input qualifier values GpioMuxRegs.GPBQUAL.all=var3; GpioMuxRegs.GPDQUAL.all=var3; GpioMuxRegs.GPEQUAL.all

29、=var3; EDIS; 5. 問題與分析功能引腳與高低電平的設(shè)置:GPIO管教的設(shè)置可以設(shè)置為功能引腳GpioMuxRegs.GPxMUX.all=0xffff,當(dāng)配置為功能引腳,也可以設(shè)置為通用輸入輸出管腳GpioMuxRegs.GPxMUX.all=0x0000,GpioMuxRegs.GPxDIR.all=0x0000設(shè)置對應(yīng)管腳為輸入引腳,GpioMuxRegs.GPxDIR.all=0xffff設(shè)置對應(yīng)引腳為輸出引腳。檔位輸出引腳時,可以通過GpioDataRegs.GPxDAT.all=0x0000與GpioDataRegs.GPxDAT.all=0xffff設(shè)置對應(yīng)引腳輸出為低

30、電平或為高電平,也可以用pioDataRegs.GPxCLEAR.all=0xffff與GpioDataRegs.GPxSET.all=0xffff設(shè)置對應(yīng)管腳為低電平或為高電平。實驗四 外部中斷的應(yīng)用1.實驗?zāi)康恼莆罩袛喾?wù)程序的編寫方法;掌握外部中斷的驅(qū)動與測試方法;熟悉工程的編譯、下載與調(diào)試方法。2.實驗設(shè)備PC機(jī)、CCS 2(2000)IDE軟件、XDS510、EXP-IV DSP實驗箱3.實驗要求l 熟悉外部中斷XINT1、XINT2的功能原理l 將工程環(huán)境設(shè)置為硬件仿真調(diào)試環(huán)境l 會利用SPRC097中的工程環(huán)境建立或打開工程l 實現(xiàn)外部中斷的應(yīng)用編程4. 實驗內(nèi)容(1)配置硬件仿真環(huán)境(2)建立外部中斷的工程如圖(4-1)所示圖(4-1)(2)主要程序代碼 /FILE: Led_Int.c/TITLE: DSP281x 外部中斷測試程序 #include "DSP281x_Device.h" / DSP281x Headerfile Include File#include "DSP281x_Examples.h" / DSP281x Examples Inc

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論