本帖最后由 429512065 于 2017-11-21 21:19 编辑
1. 参考例程:D:\c55_lp\c55_dsplib_3.00\c55_dsplib_03.00.00.03\EXAMPLES\CFFT我直接使用TI的例程,问题就是跑起来之后,看不到正确的波形,
我的目的:看到傅里叶变换后的频谱图
2. 代码如下:
void main()
{
cfft(x, NX, SCALE);
cbrev(x,x,NX);
m = 0;
for(i=0;i<1024;i++)
{
//m = 2*i;
d_real = x[m];
m++;
d_image = x[m];
m++;
data_buffer = sqrt((long)d_real *(long)d_real + (long)d_image *(long)d_image);
//data_buffer = ABSVAL(data_buffer);
}
eflag = test(x, rtest, NX, MAXERROR);
if(eflag != PASS)
{
exit(-1);
}
return;
}
3. 我自己的理解如下:
参考工程,D:\c55_lp\c55_dsplib_3.00\c55_dsplib_03.00.00.03\EXAMPLES\CFFT
CFFT函数用法,x可以是nx个复数,或者2*nx个实数。就是输入的波形。nx是数据长度1024,type是刻度(参考备注1,目的是解决数据溢出的问题,数学问题比较复杂,不讲解)。
x就是复数,如下,85是实部,-3是虚部,每个复数占2个空间。
DATA x[2*NX] ={
85}
4. 观察data_buffer,地址是 0x026002
5.为啥看的数据不对,听说是要取模的,不知道怎么取,有没有关系?请求大神协助
我的目的:看到傅里叶变换后的频谱图,请问怎么看,我上面的做法哪里有问题啊?
|