📄 demodulate.m
字号:
function [rI_I, rI_Q, rJ_I, rJ_Q] = demodulate(Y_r,i,j, Fc_hat, Fs, t_start, pulse_shape)
% Set selection
ChannelI = Y_r(i,:);
ChannelJ = Y_r(j,:);
% Demodulate each channel
% Multiply by cos and sin at 10 kHz
phase_start = 0;
rI_I = upconv_cos(ChannelI, Fc_hat, Fs, (t_start-1), phase_start);
rI_Q = -upconv_sin(ChannelI, Fc_hat, Fs, (t_start-1), phase_start);
rJ_I = upconv_cos(ChannelJ, Fc_hat, Fs, (t_start-1), phase_start);
rJ_Q = -upconv_sin(ChannelJ, Fc_hat, Fs, (t_start-1), phase_start);
% Remove 20 kHz
[b,a] = cheby2(8,16, (2.47/2*Fc_hat/Fs)*2,'low');
% rI_I = filter(b,a,rI_I);
% rI_Q = filter(b,a,rI_Q);
% rJ_I = filter(b,a,rJ_I);
% rJ_Q = filter(b,a,rJ_Q);
pulse_shape = filter(b,a,pulse_shape);
% figure;
% plot(pulse_shape);
% figure;
% plot(pulse_shape);
% pause
% temp = zeros(size(pulse_shape));
% temp(41:105) = pulse_shape(41:105);
% temp(44:102) = pulse_shape(44:102);
% temp(46:100) = pulse_shape(46:100);
% temp(48:98) = pulse_shape(48:98);
% temp(50:96) = pulse_shape(50:96);
% temp(60:86) = pulse_shape(60:86);
% pulse_shape = temp;
% Match filter
rI_I = conv(pulse_shape,rI_I);
rI_Q = conv(pulse_shape,rI_Q);
rJ_I = conv(pulse_shape,rJ_I);
rJ_Q = conv(pulse_shape,rJ_Q);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -