Main Content

1024 Samples FFT Spectrum Analyzer Using an Atmega1284

This relatively easy tutorial (considering the complexity of this subject matter) will show you how you can make a very simple 1024 samples spectrum analyser using an Arduino type board (1284 Narrow) and the serial plotter. Any kind of Arduino compatible board will do, but the more RAM it has, the best frequency resolution you will get. It will need more than 8 KB of RAM to compute the FFT with 1024 samples.
Spectrum analysis is used to determine the main frequency components of a signal. Many sounds (like those produced by a musical instrument) are composed of a fundamental frequency and some harmonics that have a frequency that is an entire multiple of the fundamental frequency. The spectrum analyzer will show you all these spectral components.
You might want to use this setup as a frequency counter or to check any kind of signals that you suspect is bringing some noise in your electronic circuit.
We will focus here on the software part. If you would like to make a permanent circuit for a specific application you will need to amplify and filter the signal. This pre-conditioning is totally dependant of the signal you want to study, depending on its amplitude, impedance, maximum frequency etc…”

Link to article