2013-08-09 01:42 AM
I'm using the ''arm_cfft_radix4_f32(&S, FFTData); '' function to obtain the FFT of an array and then inverse it back after some processing.
I have things working, to a point, but with some odd restrictions. Firstly I want to do a 512 point FFT, but changing the size to 512 causes all my outputs to become zero. I can only get it to work for the size of 256. I'm assuming that its failing because I'm giving it inputs of the wrong size, but I feel they 'should' be corret. I'm feeding the function an array of size 1024, with 512 real values and 512 complex values set as zero. Arranged as Real1[0] Imag1[1] Real2[2] Imag2[3]..... From the somewhat unhelpfull CMIS documentation, it appears that I need to be giving the function an array double the size of the fft size I want. 1024 = 2*512, so shouldn't that be correct? Using the exact same input array, but changing the fft size to 256 does indeed give me a working FFT, however only half of the output array is filled, the extra 512 points remain untouched. Am I missing something here? Cheers, Will Addition: Looking closer using the debugger, If I set the size to 512 the program just halts when it reaches the FFT function, ang goes no further. :S2013-08-12 02:37 AM
Aha, I see. Thanks for this.