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

📄 test_qpsk_picmud2.m

📁 PIC呀
💻 M
字号:
clc
clear 
k=4;                             %用户
numbits=1000;                    %比特序列数
exno=8:2:22;                      %Eb/N0
BER=zeros(k,length(exno));        %PIC k个用户的误码率
Ber=zeros(k,length(exno));
ber=zeros(k,length(exno));        %NOPIC k个用户的误码率
BER1=zeros(1,length(exno));       %PIC的误码率
BER2=zeros(1,length(exno));       %NOPIC的误码率
bits_add=bitgene(k);              %产生扩频码

S=zeros(1,numbits*31/2);          %经过QPSK调制的信号
SS=zeros(k,numbits*31/2);         %QPSK调制与扩频后的信号
S_out=zeros(k,numbits);
bits=zeros(k,numbits);            %产生的随机信号
bits_double=zeros(k,numbits);     %对产生的随机信号double
%%%%%%%%%%%%%%%%%%%%%%%%%%%%产生信号%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
for i=1:k
    bits(i,:)=Sbits(numbits);
    bits_double(i,:)=double(bits(i,:));
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%QPSK调制&&扩频%%%%%%%%%%%%%%%%%%%%%%%%%%%
for x=1:k
    S_qpsk(x,:)=QPSK_mod(bits_double(x,:));
    SS(x,:)=cdma(S_qpsk(x,:),bits_add(x,:));
    S(1,:)=SS(x,:)+S(1,:);
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%加入噪声%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
SNR=exno-10*log10(31/2);
output=Gnoise(S(1,:),SNR);
%%%%%%%%%%%%%%%%%%%%%%%%%%%PICMUD与解扩%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
for y=1:length(exno)
    [bits_out2,bits_out,S_out,r]=picmud2(output(y,:),bits_add,k);   %bis_ou2为二级PICMUD的信号,bis_out为一级PICMUD的信号 S_out为无PICMUD的信号,均为k行信号
    for z=1:k
        bits_qpskout2(z,:)=DEQPSK(bits_out2(z,:));
        bits_qpskout(z,:)=DEQPSK(bits_out(z,:));
        S_qpskout(z,:)=DEQPSK(S_out(z,:));
        BER(z,y)=Error(bits_qpskout2(z,:),bits_double(z,:));
        Ber(z,y)=Error(bits_qpskout(z,:),bits_double(z,:));
        ber(z,y)=Error(S_qpskout(z,:),bits_double(z,:));
    end
end


                           
semilogy(exno,BER(1,:),'^k-');   %%%%%%%%%%%%PIC2
hold on
semilogy(exno,Ber(1,:),'*r-');   %%%%%%%%%%%%PIC
hold on
semilogy(exno,ber(1,:),'xb-');   %%%%%%%%%%%%%NOPIC

⌨️ 快捷键说明

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