dqpsk.m

来自「此代码为π_4DQPSK解调源程序」· M 代码 · 共 71 行

M
71
字号
clc
clear
c=100;
for i=1:c
n=1;
e=rand(n,1);
   if e>0.5;
    e=1;
   else
    e=0;
   end
a(i)=e; 
end
for i=1:50
    mi(i)=a(2*i);
    mq(i)=a(2*i-1);
end   

for i=1:50
if mi(i)==1&mq(i)==1;
    fi(i)=pi/4;
elseif mi(i)==0&mq(i)==1;
    fi(i)=3*pi/4;
elseif mi(i)==0&mq(i)==0;
    fi(i)=-3*pi/4;
else mi(i)==1&mq(i)==0;
    fi(i)=-pi/4;
    end
end  
for i=2:51
fi(i)=fi(i-1);
end
for i=2:51
    I(1)=1;Q(1)=0;
I(i)=I(i-1)*cos(fi(i))-Q(i-1)*sin(fi(i));
Q(i)=I(i-1)*sin(fi(i))+Q(i-1)*cos(fi(i));
end
for i=1:51
u(i)=awgn(I(i),8);
v(i)=awgn(Q(i),8);
end 

for i=2:51
    x(i)=u(i)*u(i-1)+v(i)*v(i-1);
    y(i)=v(i)*u(i-1)-u(i)*v(i-1);
end  
for i=2:51
    if x(i)>0;
        Mi(i-1)=1;
    else 
        Mi(i-1)=0;
    end
    if y(i)>0;
        Mq(i-1)=1;
    else
        Mq(i-1)=0;
    end
end  
for i=1:50
    X(2*i)=mi(i);
    X(2*i-1)=mq(i);
end
for  i=1:50
    Y(2*i)=Mi(i);
    Y(2*i-1)=Mq(i);
end
hold on;
subplot(2,1,1),plot(X),title('原始信号');
hold on;
subplot(2,1,2),plot(Y),title('通过AWGN后并串并变换后的信号');
hold on;  

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?