Let's suppose I have an ADC running at 81.824MHz. I am quadrature subsampling a signal that is at 143.5MHz using a sampling rate of 81.824MHz/4 = 20.456MHz = Fs. I expect the signal to appear at baseband with a small offset of 143.5MHz-7*Fs = 308KHz. But it is showing up at 320KHz when I run the code below. Why is that?
% Sampling frequency fs = 20.456; % ADC frequency fadc = 4*fs; % ADC period T = 1/fadc; % Some ADC samples n = 0:T:100; % Received frequency f_l1 = 143.5; s_l1 = cos(2*pi*f_l1*n); % Replica frequency for mixing. f_local = 7*fs; s_local = cos(2*pi*f_local*n); % Mixing sif = s_l1 .* s_local; % Find frequency content siffft = (fft(sif)); % Plot results nyquist = 1; freq_steps = (1:length(siffft))/(length(siffft))*nyquist*fadc; figure(3); plot(freq_steps, abs(real(siffft))), grid;