% Parameter_Name={'Transmitted Bits Number: Nb','Sample Frequency: Fs','Carrier Frequency: Fc','Pulse Widths: T0','Signal Amplitude: A'};
function [ReceiveBits]=DSSS_Signal_Demodule(SJR_in_dB,Fc,Nb,Fs,T0,A,Fj,Kfm,SourceBits)
SJR=exp(SJR_in_dB*log(10)/10);% 信噪比
sgma=A/sqrt(2*SJR);%噪声的标准差
SGmode=0;
[SSC]=SpreadSpectrumCodeSelectGenerate(SGmode);
Nsc=length(SSC);
[DSSSS,T_Vector,Ns]=DSSS_signal(Nb,Fs,Fc,T0,A,SSC,SourceBits);
[LBTS]=LocalBitsTimeSeries(SourceBits,Fs,T0);
LBTS=2*LBTS-1;
%宽带噪声干扰
WBN=width_band_noise(SJR_in_dB,Fs,Fj,Kfm,T0,SSC,Nb,Fc,A);
% sine=half_sine(Fj,T_Vector);
% rect_out=rect1(Ns);
%接收机接受到的信号是调制信号和干扰的相加
DSS_and_Jam=DSSSS+sgma*WBN;
Z1=DSS_and_Jam.*cos(2*pi*Fc*T_Vector);
Z2=Z1.*LBTS;
% Z3=cumsum(Z2);
Z3=Z2<0;
ReceiveBits=zeros(1,Nb);
for i=1:Nb
ReceiveBits(i)=Z3( floor(i*Nsc*Fs*T0) );
end
评论2