⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dqpsk_t.m

📁 此代码为pi/4-dqpsk的调制解调算法
💻 M
字号:
%pi/4_dqpsk 的调制解调

fb=128;
fs=fb*5;
m=1024;
data=[0,0,1,0,1,1,0,1,0,1,1,0,1,1,1,0,0,0,0,1,1,1,0,0,0,1];
%data=zeros(1,m);
%for i=1:m
%  if ran(1,i)>0
%      data(1,i)=1;
%  else
%      data(1,i)=0;
%  end   
%end;
n=length(data)/2;
ang_sum(1)=0;
for i=1:n
    sig=data(2*i-1)*2+data(2*i);
    if(sig==0)
        incr_ag=-pi*3/4;
    elseif(sig==1)
        incr_ag=pi*3/4;
    elseif(sig==2) 
        incr_ag=-pi/4;
    elseif(sig==3) 
        incr_ag=pi/4;
    end;
    ang_sum(i+1)=ang_sum(i)+incr_ag;
end   
        
I_d=cos(ang_sum);
Q_d=sin(ang_sum);
%内插
I_data=zeros(1,length(I_d)*5);
Q_data=zeros(1,length(Q_d)*5);
for i=1:length(I_d)
     I_data(5*(i-1)+1)=0);
     I_data(5*(i-1)+2)=0;
     I_data(5*(i-1)+3)=I_d(i);
     I_data(5*(i-1)+4)=0);
     I_data(5*(i-1)+5)=0;
     
     Q_data(5*(i-1)+1)=0;
     Q_data(5*(i-1)+2)=0;
     Q_data(5*(i-1)+3)=Q_d(i);
     Q_data(5*(i-1)+4)=0;
     Q_data(5*(i-1)+5)=0;
     
end;
%经过升余弦滤波

rc=raisedcos1(fb,fs)
I_w=conv(I_data,rc);
Q_w=conv(Q_data,rc);


%不经过升余弦滤波
%I_w=I_data;
%Q_w=Q_data;



%频响特性
Ts=1/fs;
df=1;

[I_W,I_w1,df1]=fftseq(I_w,Ts,df);
I_W=I_W/fs;
f=[0:df1:df1*(length(I_w1)-1)]-fs/2;
plot(f,fftshift(abs(I_W)))


%解调 

    
for i=6:length(I_w)
    fine_cos(i-5)=I_w(i)*I_w(i-5)+Q_w(i)*Q_w(i-5);
    if fine_cos(i-5)>=0
        I_decision(i-5)=1;
    else
        I_decision(i-5)=0;
    end;
    fine_sin(i-5)=Q_w(i)*I_w(i-5)-I_w(i)*Q_w(i-5);
    if fine_sin(i-5)>=0
        Q_decision(i-5)=1;
    else
        Q_decision(i-5)=0;
    end;
    
end;

⌨️ 快捷键说明

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