STM32CubeMXで出力したときに一緒に出てくるDSPライブラリの中で、今回はFFTを試してみる。 環境 STM32F405RG(Cortex-M4F) / 168MHz 基礎知識 DSP_LibにはいくつかのFFTの種類があります。 大きく分けて、実数のみを扱うRFFT(Real FFT)と、複素数を扱うCFFT(Complex FFT)の2種類です。さらに、各値をfloat32で計算するf32、各値を15bit固定小数点で扱うq15、各値を31bit固定小数点で扱うq31、の3種類で、計6種類のインターフェースになります。 その他の関数もありますが、基本的に使わないので今回は無視します。 CFFTの場合は16ポイントから4096ポイントまで、RFFTの場合は32ポイントから4096ポイントまでを処理できます。 その他 q15/q31の使い方はf32とほぼ同様なので、今回は固定小数点
![Arm CMSIS DSP_Lib FFT - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/390b9202f3fe298f9885d51524e98c15ad411c5f/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9QXJtJTIwQ01TSVMlMjBEU1BfTGliJTIwRkZUJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LWNsaXA9ZWxsaXBzaXMmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz00NTRmN2Y3MGE0NmQxNWFkNTg4ODliZjQ3M2IzMGU3Yw%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwYW11dG91JnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz0yNzZlYzk2MGNiNjg1NTk4ODhmZjNjZmJiZjk3Mjk4Nw%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3Dcf1aa08b2f2900a2cc2e0c562ed17296)