l=100000; %L length of si the input one dimension array
nni=randn(1,l);%generate L by L array of random scalare
si=randsrc(1,l,[+1,-1;.5,.5]);%generate 1 by L array of -1&+1
snr=[0:15]; for i=1:16errorcounter=0;stdn=sqrt(10^(-snr(i)/10)) ni=nni*stdn;% ni is 1 by L dimension
for m=1:l ri(m)=ni(m)+si(m); if ri(m)>0 sdi(m)=1; elseif ri(m)<=0 sdi(m)=-1; end if sdi(m)~=si(m) errorcounter=errorcounter+1; end end ber(i)=errorcounter/l endsemilogy(snr,ber,'r','LineWidth',2)xlabel('snr db');ylabel('ber');grid;
MATLAB: Is this matlab code of 8psk ?
8psk code
Best Answer