qpskd.m
来自「几个常用通信和雷达信号的matlab仿真」· M 代码 · 共 43 行
M
43 行
function qpsk=qpskd(g,f)
%Modulation QPSK
%Example:
%qpskd([1 0 1 1 0 0],2)
t=0:2*pi/99:2*pi;
cp=[];sp=[];
mod=[];mod1=[];bit=[];
for n=1:2:length(g);
if g(n)==0 & g(n+1)==1;
die=sqrt(2)/2*ones(1,100);
die1=-sqrt(2)/2*ones(1,100);
se=[zeros(1,50) ones(1,50)];
elseif g(n)==0 & g(n+1)==0;
die=-sqrt(2)/2*ones(1,100);
die1=-sqrt(2)/2*ones(1,100);
se=[zeros(1,50) zeros(1,50)];
elseif g(n)==1 & g(n+1)==0;
die=-sqrt(2)/2*ones(1,100);
die1=sqrt(2)/2*ones(1,100);
se=[ones(1,50) zeros(1,50)];
elseif g(n)==1 & g(n+1)==1;
die=sqrt(2)/2*ones(1,100);
die1=sqrt(2)/2*ones(1,100);
se=[ones(1,50) ones(1,50)];
end
c=cos(f*t);
s=sin(f*t);
cp=[cp die]; %Amplitude cosino
sp=[sp die1]; %Amplitude sino
mod=[mod c]; %cosino carrier (Q)
mod1=[mod1 s]; %sino carrier (I)
bit=[bit se];
end
qpsk=cp.*mod+sp.*mod1;
subplot(2,1,1);plot(bit,'LineWidth',1.5);grid on;
title('Binary Signal')
axis([0 50*length(g) -1.5 1.5]);
subplot(2,1,2);plot(qpsk,'LineWidth',1.5);grid on;
title('QPSK modulation')
axis([0 50*length(g) -1.5 1.5]);
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?