DSP实现FFT的代码.doc_第1页
DSP实现FFT的代码.doc_第2页
DSP实现FFT的代码.doc_第3页
DSP实现FFT的代码.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

DSP实现的方法 /#include DSP281x_Device.h / DSP281x Headerfile Include File/#include DSP281x_Examples.h / DSP281x Examples Include File#include #include #include #define pi atan(1.0)*4 /计算PI的值typedef struct /定义表示复数的结构体 float real; float imag;FUSHU;FUSHU x1024;int w1024;FUSHU FUCHENG(FUSHU b1,FUSHU b2) /复数相乘函数 FUSHU b3; b3.real=b1.real*b2.real-b1.imag*b2.imag; b3.imag=b1.real*b2.imag+b1.imag*b2.real; return(b3);void FFT(FUSHU *xin,int N) /FFT运算 int m,LH,I,k,J,M,K; float p,ps ; int B,N1; FUSHU w,T; M=10;/对应N值为 /下面是倒序的程序 LH=N/2; J=LH; N1=N-2; /*变址运算*/ for(I=1;I=N1;I+) if(I=K) J=J-K; K=K/2; J=J+K; /下面是DIT-FFT运算程序 for(m=1;m=M;m+) B=pow(2.0,m-1); for(J=0;J=B-1;J+) p=pow(2.0,M-m)*J; ps=2*pi/N*p; w.real=cos(ps); w.imag=-sin(ps); for(k=J;k=N-1;k=k+pow(2.0,m) T=FUCHENG(xink+B,w); xink+B.real=xink.real-T.real; xink+B.imag=xink.imag-T.imag; xink.real=xink.real+T.real; xink.imag=xink.imag+T.imag; void IFFT(FUSHU *xin,int N) /IFFT运算 int m,LH,I,k,J,M,K; float p,ps ; int B,N1; FUSHU w,T; M=10;/对应N值为 /下面是倒序的程序 LH=N/2; J=LH; N1=N-2; /*变址运算*/ for(I=1;I=N1;I+) if(I=K) J=J-K; K=K/2; J=J+K; for(m=1;m=M;m+) B=pow(2.0,m-1); for(J=0;J=B-1;J+) p=pow(2.0,M-m)*J; ps=2*pi/N*p; w.real=cos(ps); w.imag=sin(ps);/与FFT符号相反 for(k=J;k=N-1;k=k+pow(2.0,m) T=FUCHENG(xink+B,w); xink+B.real=xink.real-T.real; xink+B.imag=xink.imag-T.imag; xink.real=xink.real+T.real; xink.imag=xink.imag+T.imag; for(k=0;kN;k+)/比FFT多乘了一个常数因子/N xink.real=xink.real/N; xink.imag=xink.imag/N; int main() int n; for(n=0;n1024;n+) /输入波形x(t) = cos(2*pi* 100*t) xn.real=cos(2*pi*100*n/1024); /采样频率为kHz xn.imag=0; FFT(x,1024);/进行FFT运算 for ( n=0;n1024;n+ ) wn=sqrt(xn.real*xn.real+xn.imag*xn.imag);/幅度谱 IFFT(x,1024);/进行IF

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论