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

📄 suiji.m

📁 就是qpsk用matlab实现调制解调以及扩频接扩
💻 M
字号:
function [changdu1,changdu2,y1,y2]=suiji(N,fs)
%以固定的信息速率产生随即点
%固定信息速率设定为bp
%N=521     速率为512Hz


%==========================================================================
%产生随即信号
%==========================================================================
Ts=1/fs;                              %抽样时间  
                                      %在0到0.001里面抽样T/Ts=N*255*100/2个点
                                      %在IQ通道里面一个码元的点数就是T/Ts=255*100个点
T=0.001/N;                            %码元时间(宽度)  就是在0到0.001里面
                                      %共有N个码元,折合成0到1之间就是N*1000
                                      %个码元,从而码元速率就变成了N千波特
td=0:Ts:(N*T)-Ts;                     %时间变量   这个是对于主干道上的时间变量
tdi=0:2*Ts:(N*T)-Ts;                  %IQ 通道的时间变量
x=randint(1,N,[0,1]);                 %产生随机信号(在0到0.001里面有N个点
                                      %由此来控制波特率)

%==========================================================================
%串并转换
%==========================================================================
y=reshape(x,2,N/2);
y1=y(1,:);                           %I通道随即信号(计数的点进I通道)    
y2=y(2,:);                           %Q通道随即信号(偶数的点进Q通道)


changdu1=length(y1);
changdu2=length(y2);


%变换成双极性电瓶
nn=T/Ts;                          %nn=T/Ts=255*100  
                                  %只是为了将随即的点编程双极性波形
for i=1:length(y1),               %
   if(y1(i)==1),                  %如果信息为1,则输出255*100个点的1
      for j=1:nn,              
         y3((i-1)*nn+j)=1;
      end
   else
      for j=1:nn,                %反之,信息元为0,输出255*50个点的-1
         y3((i-1)*nn+j)=-1;
      end;
   end;
end
%画信号y1变换成双极性电瓶的信号y3


%对y2变换变换成双极性电瓶的信号y4
for i=1:length(y2),              
   if(y2(i)==1),                   
      for j=1:nn,               
         y4((i-1)*nn+j)=1;
      end
   else
      for j=1:nn,                  
         y4((i-1)*nn+j)=-1;
      end;
   end;
end
%画信号y1变换成双极性电瓶的信号y3


%==========================================================================
%画图
%==========================================================================

figure(1);
subplot(3,1,1);      
stem(x(1:N),'fill','--');        %随机信号图形
title('随机二进制数');
xlabel('Bit Index');
ylabel('amplitude')

subplot(3,1,2);
stem(y1(1:N/2),'fill','--');     %I通道图形
title('I通道y1');
xlabel('Bit Index'); 
ylabel('amplitude')

subplot(3,1,3);
stem(y2(1:N/2),'fill','--');     %Q通道图形
title('Q通道y2');
xlabel('Bit Index'); 
ylabel('amplitude')

figure(2)
subplot(2,1,1);
plot(tdi,y3);
axis([0 N*T -1.5 1.5]);
title('I通道双极性');
xlabel('时间轴')
ylabel('amplitude');

figure(3)
subplot(2,1,1);
plot(tdi,y4);
axis([0 N*T -1.5 1.5]);
title('Q通道双极性');
xlabel('时间轴')
ylabel('amplitude');
end



⌨️ 快捷键说明

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