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

Part Number: HERCULES-DSPLIB
Other Parts Discussed in Thread: AM6546

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;

arm_rfft_init_f32(rfft_instance_ptr,cfft_instance_ptr,128,0,1);

float32_t out[256] = { 0.0 };
arm_rfft_f32(rfft_instance_ptr,test,out);

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 ?