📄 mskawgn.m
字号:
%******************** Preparation part **********************
symbolrate = 2400; %Symbol rate
nb =10;
m=1;
bitrate=symbolrate*m; %Bit rate
nm= 0.25;
fm = nm*bitrate;
nc= 2; % Carrier frequency should be the mutiple of bit duration
fc = nc*bitrate; % Carrier frequency
fs = 32*bitrate; % Sampling frequency
t=0:1/fs:nb/symbolrate-1/fs;
%******************** Data generation **********************
inputoriginal=[1 1 0 0 1 0 0 0 1 0];
%******************** Demultiplexing***************************
inputinphase=zeros(1,nb/2);
inputquadrature=zeros(1,nb/2);
for i=1:nb/2
inputinphase(i)=(2*inputoriginal(2*i-1)-1);
inputquadrature(i)=(2*inputoriginal(2*i)-1);%NRZ code
end
%******************** Sampling ********************************
outinphase1=zeros(1,fs*nb/symbolrate);
outinphase=zeros(1,fs*nb/symbolrate);
outquadrature=zeros(1,fs*nb/symbolrate);
for i=1:fs/symbolrate:fs*nb/symbolrate-1,
for j=1:fs/symbolrate,
outinphase1(i+j-1)=inputinphase(fix(i*symbolrate/(2*fs))+1);
outquadrature(i+j-1)=inputquadrature(fix(i*symbolrate/(2*fs))+1);
end
end
for k=1:fs*(nb-1)/symbolrate-1
outinphase(k)=outinphase1(k+fs/symbolrate);
end
%******************** **********************
inphase=outinphase.*cos(2*pi*fm*t);
quadrature=outquadrature.*sin(2*pi*fm*t);
%******************** Modulation **********************
modinphase=inphase.*cos(2*pi*fc*t);
modquadrature=quadrature.*sin(2*pi*fc*t);
mod=modinphase+modquadrature;
figure(1);
stem([1:nb],inputoriginal);
xlabel('Number');
ylabel('');
title('Original input binary sequence');
axis([1,nb,-2,2]);
figure(2);
stem([1:nb/2],inputinphase);
xlabel('Number');
ylabel('');
title('Input inphase sequence');
axis([1,nb/2,-2,2]);
figure(3);
stem([1:nb/2],inputquadrature);
xlabel('Number');
ylabel('');
title('Input quadrature sequence');
axis([1,nb/2,-2,2]);
figure(4);
stem(t,outinphase);
xlabel('Time');
ylabel('Magnitude');
title('Input inphase channel');
axis([0,nb/symbolrate,-2,2]);
figure(5);
stem(t,outquadrature);
xlabel('Time');
ylabel('Magnitude');
title('Input quadrature channel');
axis([0,nb/symbolrate,-2,2]);
figure(6);
plot(t,modinphase);
xlabel('Time');
ylabel('Magnitude');
title('modulated inphase channel');
axis([0,(nb-1)/symbolrate,-2,2]);
figure(7);
plot(t,modquadrature);
xlabel('Time');
ylabel('Magnitude');
title('Modualted quadrature channel');
axis([0,nb/symbolrate,-2,2]);
figure(8);
plot(t,mod);
xlabel('Time');
ylabel('Magnitude');
title('Modulated MSK wave');
axis([0,(nb-1)/symbolrate,-2,2]);
figure(9);
plot(t,inphase);
xlabel('Time');
ylabel('Magnitude');
title('Inphase channel before modulation');
axis([0,nb/symbolrate,-2,2]);
figure(10);
plot(t,quadrature);
xlabel('Time');
ylabel('Magnitude');
title('quadrature channel before modulation');
axis([0,nb/symbolrate,-2,2]);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -