From b2d4ba73476f3cd636fb73798115f8169c0e4187 Mon Sep 17 00:00:00 2001 From: Jens Ahrensfeld Date: Sun, 3 May 2015 17:37:20 +0000 Subject: [PATCH] [RX] - fixed combined down mixing and frequency correction git-svn-id: http://moon:8086/svn/matlab/trunk@77 801c6759-fa7c-4059-a304-17956f83a07c --- ofdm/ofdm_rx.m | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/ofdm/ofdm_rx.m b/ofdm/ofdm_rx.m index 479c573..78a14a7 100644 --- a/ofdm/ofdm_rx.m +++ b/ofdm/ofdm_rx.m @@ -124,21 +124,19 @@ while(fileRemain > fileChunkSize) % ToDo: don't leave loop, if file has been con if (~isModePassband) wav_x = wav_x(:, 1) + j*wav_x(:, 2); + x = wav_x; % ToDo: Remove DC + x = x.*exp(j*(2*pi*(foff/fs)*(0:length(x)-1)' + phi_foff)); + phi_foff = mod(phi_foff + 2*pi*(foff/fs)*length(x), 2*pi); end - % ToDo: Remove DC - x = wav_x; - if (isModePassband) - x = x.*exp(-j*(2*pi*0.25*(0:length(x)-1)' + phi_mix)); + x = wav_x; % ToDo: Remove DC + x = x .*exp(-j*(2*pi*(0.25-foff/wav_fs)*(0:length(x)-1)' + phi_mix)); phi_mix = mod(phi_mix + 2*pi*0.25*length(x), 2*pi); [x, filter_z] = filter(filter_h, 1, x, filter_z); x = x(1:4:length(x)); end - x = x.*exp(j*(2*pi*(foff/fs)*(0:length(x)-1)' + phi_foff)); - phi_foff = mod(phi_foff + 2*pi*(foff/fs)*length(x), 2*pi); - if flip_spec x = conj(x); end