1、程序源代码Fs=1e4; %采样频率len=20; %码元长度in=randint(1,len,4); %产生初始码元序列sig=;out=;for t=1:2000 %产生基带信号 n=fix(t/100); if n=0 in_a(t)=0; else in_a(t)=in(n); endendsubplot(2,1,1); %基带信号plot(in_a,LineWidth,3);title(基带信号,FontWeightboldFontSize,20);xlabel(t/s,18);axis(100,2100,-0.5,3.5);set(gca,XTick,0:100:2000);gri
2、d on;cxn=xcorr(in_a,unbiased); %计算序列的自相关函数nfft=1024;CXk=fft(cxn,nfft);Pxx=abs(CXk);index=0:round(nfft/2-1);k=index*Fs/nfft;subplot(2,1,2);plot_Pxx=10*log10(Pxx(index+1);plot(k,plot_Pxx,2);基带信号功率谱axis(0,5000,-10,40);Hz,18,for i=1:len %产生单极性归零码信号 if in(i)=0 ins=0,0; elseif in(i)=1 ins=1,0; elseif in(i
3、)=2 ins=2,0; ins=3,0; endsig=sig,ins;4000 s(t)=0; s(t)=sig(n);figure; %单极性归零码plot(s,单极性归零码axis(100,4100,-0.5,3.5);200:4100);cxn=xcorr(s, nfft=1024;单极性归零码功率谱s1=awgn(s,20); %添加噪声plot(s1);添加噪声后的信号500:cxn=xcorr(s1,添加噪声后的信号功率谱%滤波器设计fp=500;%通带截止fs= 550;%阻带截止ws=fs*2/Fs;wp=fp*2/Fs;N, Wp = ellipord(wp,ws,1,40);b,a=ellip(N,1,40,Wp);sf0=filter(b,a,s1) ; %滤掉部分噪声后的信号plot(sf0);滤掉部分噪声后的信号cxn=xcorr(sf0,滤掉部分噪声后的信号功率谱for m=1:20 %抽样判决 p=round(sf0(200*m-20); out=out,p; %原始码元序列stairs(in,原始码元序列axis(1,21,-0.5,3.5);1:20); %抽样判决后恢复的信号序列stairs(out,抽样判决后恢复的信号序列