each number you output is associate with a frequency (indexed by the integer i in this case). so for i = 0 you get the 0th frequency, and for i = 128 you get the 128th frequency. these are linearly spaced and depend upon your sampling frequency. the sample rate is set by ADCSRA and the CPU clock frequency. in this case its 16MHz/32/13 = ~38kHz. 16MHz is the arduino clock frequency, the last 3 bits in ADCSRA are set to 5, which means /32, and its in free running mode, so it takes 13 clock cycles to get a sample.

for FHT_N = 256, you have 256 bins to cover the full frequency range, so each bin is 38kHz/256 = 150Hz. but, half of the bins repeat, so you really only have FHT_N/2 bins covering half the frequency range. in this case 128 bins, from 0Hz to 19kHz, with a step size of 150Hz.