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

📄 qamber.m

📁 数字调制解调的MATLAB仿
💻 M
字号:
clear
echo on
SNRindB1=0:2:15;
SNRindB2=0:0.1:15;
M1=4;
M2=8;
M3=16;
M4=64;
k1=log2(M1);
k2=log2(M2);
k3=log2(M3);
k4=log2(M4);

for i=1:length(SNRindB1),
  smld_err_prb_4(i)=QAM_4(SNRindB1(i));	% 仿真误符号率
  smld_err_prb_8(i)=QAM_8(SNRindB1(i));	
  smld_err_prb_16(i)=QAM_16(SNRindB1(i));
  smld_err_prb_64(i)=QAM_64(SNRindB1(i));
  echo off;
end;
echo on ;
for i=1:length(SNRindB2),
  SNR=exp(SNRindB2(i)*log(10)/10);    	
  %理论上误符号率
  theo_err_prb_4(i)=4*Qfunct(sqrt(3*k1*SNR/(M1-1)));
  theo_err_prb_8(i)=4*Qfunct(sqrt(3*k2*SNR/(M2-1)));
  theo_err_prb_16(i)=4*Qfunct(sqrt(3*k3*SNR/(M3-1)));
  theo_err_prb_64(i)=4*Qfunct(sqrt(3*k4*SNR/(M4-1)));
  echo off ;
end;
echo on ;
% 绘制误符号率对比图
figure(1);
semilogy(SNRindB2,theo_err_prb_4);
hold on
semilogy(SNRindB2,theo_err_prb_8,'y');
hold on
semilogy(SNRindB2,theo_err_prb_16,'g');
hold on
semilogy(SNRindB2,theo_err_prb_64,'r');
legend('4QAM理论曲线','8QAM理论曲线','16QAM理论曲线','64QAM理论曲线',4);
figure(2);
subplot(2,2,1);
semilogy(SNRindB1,smld_err_prb_4,'*');
hold on
semilogy(SNRindB2,theo_err_prb_4);
legend('4QAM仿真曲线','4QAM理论曲线',2);
subplot(2,2,2);
semilogy(SNRindB1,smld_err_prb_8,'*');
hold on
semilogy(SNRindB2,theo_err_prb_8);
legend('8QAM仿真曲线','8QAM理论曲线',2);
subplot(2,2,3);
semilogy(SNRindB1,smld_err_prb_16,'*');
hold on
semilogy(SNRindB2,theo_err_prb_16);
legend('16QAM仿真曲线','16QAM理论曲线',2);
subplot(2,2,4);
semilogy(SNRindB1,smld_err_prb_64,'*');
hold on
semilogy(SNRindB2,theo_err_prb_64);
legend('64QAM仿真曲线','64QAM理论曲线',2);

⌨️ 快捷键说明

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