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

📄 wumalu.m

📁 通信原理误码率的仿真程序MATLAB中开发
💻 M
字号:
%误码率
s0=0;s1=1;
p0=0.4;    %信源概率
p1=1-p0;
SNR_db=-5:0.5:20;  %仿真信噪比范围
SNR=10.^(SNR_db./10);
ma=s1^2./SNR;     %噪声方差范围
N=1e4;
for k=1:length(ma)
    X=(rand(1,N)>p0);   %信源产生
   n=sqrt(ma(k)).*randn(1,N);%噪声
    xi=s1.*X+n;
    C_vd=(s0+s1)/2+ma(k)/(s1-s0)*log(p0./p1);%计算最佳判决门限
    y=(xi>C_vd);%判决输出
   err(k)=(sum(X-y~=0))./N;%误码率统计
end
semilogy(SNR_db,err,'o');hold on;
for       k=1:length(ma)
              C_vd=(s0+s1)./2+ma(k)./(s1-s0).*log(p0./p1);%计算最佳判决门限
              pe0=0.5-0.5*erf((C_vd-s0)/(sqrt(2*ma(k))));%发零错误率
              pe1=0.5+0.5*erf((C_vd-s1)/(sqrt(2*ma(k))));%发一错误率
               pe(k)=p0*pe0+p1*pe1;                 %平均错误率
end
semilogy(SNR_db,pe);
xlabel('SNR(db)');
ylabel('p_e');
legend('仿真结果','理论曲线');

⌨️ 快捷键说明

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