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

📄 snr2pb.m

📁 提供了使用matlab仿真2FSK误码率的源程序
💻 M
字号:
function p=snr2pb(snr_in_db)
N=10000;
eb=1;
snr=10^(snr_in_db/10);
sgma=sqrt(eb/(2*snr));
phi=0;
%生成输入数据
for i=1:N,
    temp=rand(i);
    if(temp<0.5),
        dsource(i)=0;
    else
        dsource(i)=1;
    end
end;
%检测并计算误码率
numoerr=0;
for i=1:N,
    %解调输出
    if (dsource(i)==0),
        r0c=sqrt(eb)*cos(phi)+gausamp(sgma);
        r0s=sqrt(eb)*sin(phi)+gausamp(sgma);
        r1c=gausamp(sgma);
        r1s=gausamp(sgma);
    else
        r0c=gausamp(sgma);
        r0s=gausamp(sgma);
        r1c=sqrt(eb)*cos(phi)+gausamp(sgma);
        r1s=sqrt(eb)*sin(phi)+gausamp(sgma);
    end;
    %平方率检测输出
    r0=roc^2+r0s^2;
    r1=r1c^2+r1s^2;
    %判决
    if (r0>r1),
        decis=0;
    else
        decis=1;
    end;
    %如果检测结果不正确,无码计算器加1
    if (decis~=dsource(i)),
        numoferr=numoferr+1;
    end;
end;
p=numoferr/(N);

⌨️ 快捷键说明

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