git-svn-id: http://moon:8086/svn/matlab/trunk@157 801c6759-fa7c-4059-a304-17956f83a07c
28 lines
572 B
Matlab
Executable File
28 lines
572 B
Matlab
Executable File
function downconvert()
|
|
omega_lp = 0.48;
|
|
N_lp = 101;
|
|
|
|
N = 10000;
|
|
w = 2*pi;
|
|
n = (0:N-1);
|
|
|
|
rf = 0.4*cos(0.25*w*n);
|
|
lo_r = cos(0.25*w*n);
|
|
lo_i = -sin(0.25*w*n);
|
|
w_lp = FIRCalcLowpass(omega_lp, N_lp);
|
|
|
|
im = 2*rf .*lo_r + i*2*rf.*lo_i;
|
|
im_f = filter(w_lp, 1, real(im)) + i*filter(w_lp, 1, imag(im));
|
|
|
|
subplot(2, 1, 1)
|
|
plot(n, rf, '-*'); grid;
|
|
axis ([0 N-1 -1 1]);
|
|
|
|
subplot(2, 1, 2)
|
|
plot(n, real(im_f), '-*', n, imag(im_f), '-*'); grid;
|
|
axis ([0 N-1 -1 1]);
|
|
|
|
wavwrite(rf, 48000, 16, 'ddc_rf.wav');
|
|
wavwrite(im, 48000, 16, 'ddc_im.wav');
|
|
wavwrite(im_f, 48000, 16, 'ddc_imf.wav');
|