分别测试512点FFT,256点FFT和128点FFT四个大步骤用时。
512点 用时(us)
1步倒序(RFFT32_brev) 42.4
2步计算(fft.cal) 223.8
3步实部虚部分离(fft.split) 13.1
4步计算幅值(fft.mag) 13.8
总用时 293.1
256点 用时(us)
1步倒序(RFFT32_brev) 21.5
2步计算(fft.cal) 94.9
3步实部虚部分离(fft.split) 13.1
4步计算幅值(fft.mag) 13.8
总用时 143.3
128点 用时(us)
1步倒序(RFFT32_brev) 10.8
2步计算(fft.cal) 39
3步实部虚部分离(fft.split) 13.1
4步计算幅值(fft.mag) 13.8
总用时 76.7
开发板采用ICETEK-F2812-AFFT计算采用TI的FFT程序,信号发生器产生正弦波信号,输入ACD0,AD采样率为3KHz,
注意:2812输入的电压:0-3V,信号发生器的正弦波信号应有一个整的offset。
2812的主程序:
实际的FFT运算程序:
#include "DSP281x_Device.h" // DSP281x Headerfile Include File
#include "DSP281x_Examples.h" // DSP281x Examples Include File
#include "fft.h"
// Prototype statements for functions found within this file.
interrupt void adc_isr(void)
// Global variables used in this example:
Uint16 LoopCount
Uint16 ConversionCount
Uint16 Voltage1[1024]
Uint16 Voltage2[1024]
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)