spidec file.c

来自「可用于单片机的方法同程序」· C语言 代码 · 共 40 行

C
40
字号
function xk=myfft(xk,N,n)
//fft  by swell2005
//其中xk为源信号(列向量),2^n=N
/////////////////////进行倒序
i=1;l=1;
while l~=(N-1)
if l<i
	t=a(i);
	a(i)=a(l);
	a(l)=t;
end
k=N/2;
while k<i
	i=i-k;
	k=k/2;
end
i=i+k;
l=l+1;
end
////////////////////// DFT  逆变换?
xk=xk/N;
m=1;
while m<=n
	u=1;
    i=1;
    k=2^(m-1);
    w=exp(-j*pi/k);
	while k>=i
		l=i;
		while l<=2^n;
			t=xk(l+k)*u;
			xk(l+k)=xk(l)-t;
			xk(l)=xk(l)+t; 
			l=l+2^m;
		end
		u=u*w;
		i=i+1;
	end
	m=m+1;
end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?