is this matlab code of 8psk ??
    4 views (last 30 days)
  
       Show older comments
    
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:16
errorcounter=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
  end
semilogy(snr,ber,'r','LineWidth',2)
xlabel('snr db');ylabel('ber');grid;
5 Comments
  Rick Rosson
    
 on 2 Mar 2013
				- Please use proper indentation in your code.
- Please do not use lower-case l as a variable. It looks almost the same as the numeral 1 and is very confusing. Use upper-case L instead.
- Please add comments explaining what each variable represents.
Thanks.
Accepted Answer
  Rick Rosson
    
 on 2 Mar 2013
        
      Edited: Rick Rosson
    
 on 2 Mar 2013
  
      No. As far as I can tell, this code is BPSK, not 8PSK. Also, there are several mistakes in the code.
4 Comments
More Answers (0)
See Also
Categories
				Find more on PSK in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


