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

📄 ook.m

📁 模拟启闭载波信号的最佳接收机的情形,包含信号的产生,模拟调制,接收检测,并分析显示出实际和理论的误码率vs SNR,希望对大家有用!
💻 M
字号:
function Pe = OOK( snr_in_db )%UNTITLED1 Summary of this function goes here%  Detailed explanation goes herefc=50;T=0.15;N=10000;ts=0.0001;A=((10*(2^0.5))^(1/2))/50;  %awgn(x,snr_in_db)的x必须是1mw的功率的(0dbw),故须算出此时幅度大小为多少,A^2/2,故A=                                        % E=1;                     % lamta=1; t=[0:ts:T];  %这就是怎么把 for 转化成矩阵的方法    S0=zeros(1,length(t));%不能写s0(t)= ... ,因为括号里的 值必须是整数;     S1=A*sin(2*pi*fc.*t);    VT=1/2*int1(S1.^2,ts);                         % SNR=exp(snr_in_db*log(10)/10);                       % sgma=E/sqrt(2*SNR);k=length(t);r=zeros(N,k);numoferr=0;for i=1:N    temp=rand;    if(temp<0.5)        dsource(i)=0;    else        dsource(i)=1;    end    if(dsource(i)==0)        r(i,1:k)= awgn(S0,snr_in_db);    else        r(i,1:k)= awgn(S1,snr_in_db);    end    RT1(i)=int1(r(i,1:k).*S1,ts);% RT1=int(r(i).*S1)是错的,这样会只跟第一个量相乘而已    RT2(i)=int1(r(i,1:k).*S0,ts);   test1(i)=int1(S1.*S1,ts);   test2(i)=int1(S0.*S0,ts);    if( RT1(i)-RT2(i)>VT)        R(i)=1;    else        R(i)=0;    end    if(R(i)~=dsource(i))        numoferr=numoferr+1;    endendPe=numoferr/N;

⌨️ 快捷键说明

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