DSP_FFT實驗報告_第1頁
DSP_FFT實驗報告_第2頁
DSP_FFT實驗報告_第3頁
DSP_FFT實驗報告_第4頁
DSP_FFT實驗報告_第5頁
已閱讀5頁,還剩10頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、dsp技術課程設計(fft)作者姓名:鐘 欣 專業名稱:電子科學與技術指導教師:張 雙 目錄1、 實驗結果31.1 正弦信號輸入的結果 31.2 余弦信號輸入的結果 4心得5參考文獻6附件1 正弦信號程序7a1.1 正弦信號fft.c文件7a1.2 inram.cmd文件11附件2 余弦信號程序12a2.1 余弦信號fft.c文件12一、實驗結果1.1正弦信號輸入的結果1.2余弦信號輸入的結果心得通過本次的dsp設計課程,我學會了在ccs軟件平臺上運用c語言編程來實現傅里葉運算。在課程中老師講解了的基本原理,以及如何通過運用c語言編程來實現。實驗過程中,通過對傅里葉變換的深入了解,以及老師對程

2、序的講解,我成功的實現了正弦和余弦的傅里葉變換運算,完成了實現要求。這次課程讓我對傅里葉變換有了更加深入的了解。在使用ccs軟件時,要注意加上rts.lib文件,避免出錯; 還有就是func.h文件要放在工程文件夾里,不然要出錯,還有就是int 和float之間的區分。我經過此次的學習后,無論是傅里葉變換的原理,還是dsp編程方面,都有了很大的提升。這對以后的課程學習提供了堅實的基礎。我也從中獲益良多。 參考文獻1楊明廣. c程序設計教材. 四川科學技術出版社, 2012.2鄒彥. dsp原理及應用(修訂版). 電子工業出版社, 2002.3吳京. 信號分析與處理(修訂版). 電子工業出版社,

3、 2014.附件1 正弦信號程序a1.1 正弦信號fft.c文件/*fft.c*/ include #include #includefunc.h #define pi 3.14159265358979323846#define samplenumber 128void fft();void initforfft();void makewave();float inputsamplenumber,datasamplenumber;float fwaversamplenumber,fwaveisamplenumber,wsamplenumber; float sin_tabsamplenumbe

4、r,cos_tabsamplenumber; main()int i;initforfft();makewave() ;for(i=0;isamplenumber;i+ )fwaveri=inputi; fwaveii=0.0f;wi=0.0f; fft(fwaver,fwavei); for(i=0;isamplenumber;i+) datai=wi;while(1); void fft(float datarsamplenumber,float dataisamplenumber)int x0,x1,x2,x3,x4,x5,x6,xx;int i,j,k,b,p,l;float tr,t

5、i,temp; for( i=0;isamplenumber;i+ )x0=x1=x2=x3=x4=x5=x6=0; x0=i&0x01; x1=(i/2)&0x01 ; x2=(i/4)&0x01 ; x3=(i/8)&0x01; x4=(i/16)&0x01; x5=(i/32)&0x01; x6=(i/64)&0x01; xx=x0*64+x1*32+x2*16+x3*8+x4*4+x5*2+x6;dataixx=datari;for( i=0;isamplenumber;i+ )datari=dataii; dataii=0;for( l=1;l0 ) b=b*2; i-;for(j=

6、0;j0) p=p*2;i-; p=p*j; for(k=j;k128;k=k+2*b) tr=datark;ti=dataik;temp=datark+b; datark=datark+datark+b*cos_tabp+dataik+b*sin_tabp; dataik=dataik-datark+b*sin_tabp+dataik+b*cos_tabp; datark+b=tr-datark+b*cos_tabp-dataik+b*sin_tabp; dataik+b=ti+temp*sin_tabp-dataik+b*cos_tabp; for(i=0;isamplenumber/2;

7、i+) wi=sqrt(datari*datari+dataii*dataii); void initforfft()int i;for(i=0;isamplenumber;i+)sin_tabi=sin(pi*2*i/samplenumber);cos_tabi=cos(pi*2*i/samplenumber);void makewave()int i;for(i=0;i prog1 page 0 .cinit : prog1 page 0 .switch: prog1 page 0 .vectors: vect page 0 .const: daram1 page 1 .bss : dar

8、am1 page 1 .stack : daram2 page 1 .system: daram2 page 1 .data : daram2 page 1 /* end of file */附件2 余弦信號程序a2.1 余弦信號fft.c文件/*fft.c*/ #include #include #includefunc.h #define pi 3.14159265358979323846#define samplenumber 128void fft();void initforfft();void makewave();float inputsamplenumber,datasampl

9、enumber;float fwaversamplenumber,fwaveisamplenumber,wsamplenumber; float sin_tabsamplenumber,cos_tabsamplenumber; main()int i;initforfft();makewave() ;for(i=0;isamplenumber;i+ )fwaveri=inputi; fwaveii=0.0f;wi=0.0f; fft(fwaver,fwavei); for(i=0;isamplenumber;i+) datai=wi;while(1); void fft(float datar

10、samplenumber,float dataisamplenumber)int x0,x1,x2,x3,x4,x5,x6,xx;int i,j,k,b,p,l;float tr,ti,temp; for( i=0;isamplenumber;i+ )x0=x1=x2=x3=x4=x5=x6=0; x0=i&0x01; x1=(i/2)&0x01 ; x2=(i/4)&0x01 ; x3=(i/8)&0x01; x4=(i/16)&0x01; x5=(i/32)&0x01; x6=(i/64)&0x01; xx=x0*64+x1*32+x2*16+x3*8+x4*4+x5*2+x6;datai

11、xx=datari;for( i=0;isamplenumber;i+ )datari=dataii; dataii=0;for( l=1;l0 ) b=b*2; i-;for(j=0;j0) p=p*2;i-; p=p*j; for(k=j;k128;k=k+2*b) tr=datark;ti=dataik;temp=datark+b; datark=datark+datark+b*cos_tabp+dataik+b*sin_tabp; dataik=dataik-datark+b*sin_tabp+dataik+b*cos_tabp; datark+b=tr-datark+b*cos_tabp-dataik+b*sin_tabp; dataik+b=ti+temp*sin_tabp-dataik+b*cos_tabp; for(i=0;isamplenumber/2;i+) wi=sqrt(datari*datari+dataii*dataii); void initforfft()int i;for(i=0;isamp

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論