www.pudn.com > dsss01.rar > ss_Pe94.m


function [p]=ss_Pe94(snr_in_dB,Lc,A,w0); 
snr=10^(snr_in_dB/10); 
sgma=1; 
Eb=2*sgma^2*snr; 
E_chip=Eb/Lc; 
N=10000; 
num_of_err=0; 
for i=1:N 
    temp=rand; 
    if temp<0.5 
        data=-1; 
    else 
        data=1; 
    end 
    for j=1:Lc 
        repeated_data(j)=data; 
    end 
    for j=1:Lc 
        temp=rand; 
        if temp<0.5 
            pn_seq(j)=-1; 
        else 
            pn_seq(j)=1; 
        end 
    end 
    trans_sig=sqrt(E_chip)*repeated_data.*pn_seq; 
    noise=sgma*randn(1,Lc); 
    n=(i-1)*Lc+1:i*Lc; 
    interference=A*sin(w0*n); 
    rec_sig=trans_sig+noise+interference; 
    temp=rec_sig.*pn_seq; 
    decision_variable=sum(temp); 
    if decision_variable<0 
        decision=-1; 
    else 
        decision=1; 
    end 
    if decision~=data 
        num_of_err=num_of_err+1; 
    end 
end 
p=num_of_err/N;