This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

HERCULES-DSPLIB: FFT of real valued data in time domain


We are using the Hercules DSPLIB v1.0.0  to perform some signal processing in our application. To simply touch base with the Library we simply tried to perform an 128-point FFT of a DC signal to expect an impulse response. 

Code excerpt below:

float32_t test[128] = {1.0};

arm_rfft_instance_f32 rfft_instance;
arm_rfft_instance_f32* rfft_instance_ptr = (arm_rfft_instance_f32*) &rfft_instance;

arm_cfft_radix4_instance_f32 cfft_instance;
arm_cfft_radix4_instance_f32* cfft_instance_ptr = (arm_cfft_radix4_instance_f32*) &cfft_instance;


float32_t out[256] = { 0.0 };

However, when I printed the result of "out" I got a stream of 1, 0, 1, 0 .... instead of an impulse of magnitude of 128.
real[0]=1, real[1]=1, real[2]=1 ....

complex[0]=0,complex[1]=0,complex[2]=0 ...

Am I using this function incorrectly ?