I generate Multi tones in the frequency domain with constant amplitude and phase, for a fixed distance between tones. As the figure below, where r is the change in frequency spacing between different symbols, n is the tone index starting on the left in the spectrum, N is the total amount of tones, M is the modulation order, and m is the symbol index. fc=2.45GHz, f_delta= 1KHz, r=0.5,N=3,M=4. I want to send the information between tones; I think I can do it by FFT frequency bins. My question: How can I make some bins refer to one and other bins to zero between those tones?
Assuming the OP wants to manipulate a time domain function such that zeros are inserted in the frequency domain result, here is a simple approach:
Simply replicate the time domain samples and then divide by the number of repetitions to normalize and this will result in the same frequency domain result as the series that was replicated, with additional zeros inserted based on how many times the time domain sample was replicated.
Here is a simple example:
$fft([1, 2, 4, 2]) = [9, -3, 1, 3]$
To insert one zero in between each sample repeat the time domain sample once and divide by 2:
$fft([1,2,4,2,1,2,4,2])/2 = [9, 0, -3,0, 1 ,0, 3]$
To insert two zeros in between each sample repeat the time domain sample twice and divide by 3:
$fft([1,2,4,2,1,2,4,2,1,2,4,2])/3 = [9, 0,0, -3,0,0, 1 ,0,0,3]$
It might be easier to understand how this occurs when you insert zeros in the time domain which causes repetition of the signal in the frequency domain over the duration of the DFT signal. This is explained in further detail here with regards to interpolation using zero-insert: