FFT Bin Problem with external 24 Bit ADC(FFT bins changing with time)
Use a different window shape.

This happens when the input signal is not exactly periodic with input signal length, e.g. because the generated sine and the ADC clock are from different clock sources. Looking at a signal that we expect in bin 2 (\$e^{2ix}\$), and the result for bin 1:


If the sampling period contains exactly two signal periods: \$\int_0^{2\pi}\!{e^{2ix}e^{-ix}\ dx} = 0\$
If the signal is a bit lower in frequency: \$\int_0^{2\pi}\!{e^{1.99ix}e^{-ix}\ dx} = -0.063 + 0.002i\$, so quite a bit of energy is shown in this bin.


If you use a window function that reduces the weight of the beginning and end of the sampling period, you can reduce this effect.