在調用STM32的DSP庫做fft運算的時候發現,要進行fft運算的輸入數據在運算之前,需要對數據一隔一個補零,比如實際要進行fft運算的數據為1,2,3,4.需要變為1,0,2,0,3,0,4,0才能運算。官方找到資料里對這方面的描述只有一句:All the signal samples must be 32-bit data containing the 16-bit real part followed by the 16-bit imaginary part (in the little Endian order: imaginary_real).而官方庫里面的fft運算函數只有cfft,只能進行復數的fft運算,這里的補零是為了補充虛部嗎?還做了一個測試,就是將補零數據放到實際采樣數據的前面,變為0,1,0,2,0,3,0,4,如果補零是為了補充虛部的話,這里虛部實部對調了,但是計算出來的結果是一致的。想知道數據補零的正真原因,求高人指點迷津,謝謝啦
|