ǰλãҳ > 通信原理matlab课程设计报告-matlab课程设计报告 - 百度文库
Դ
clear clc
a=20; %aʾԪظԪΪ1024
r=unidrnd(2,1,a-1); %ɢȶֲֵ12a-1
rn=r-1; %ÿԪؼ1Ϊ01ֵ rn=[1,rn]; %һ£1ʼɢȶֲֵ12a
ori=rn; %ԭбںȽ ori
l=1; for k=1:a-3
if abs(rn(k))==1
m=rn(k); %m¼ܴڵ40ǰԪķ
end if rn(k)==0
if rn(k+1)==0 if rn(k+2)==0
if rn(k+3)==0 %Ƿ4Ԫ0 rn(k+3)=2*m; %2ʾϵV end end end end end
rn ; %V(2) checked l=1; %l=1ʾV֮ż룬0żԳʼΪ1l=-1ʾV֮ for s=1:a
if abs(rn(s))==2 for d=s+1:a if abs(rn(d))==1 %V֮ķֻ+1-1һһʹlһκţʾż l=-l; end
if abs(rn(d))==2 if l~=1
l=1; %ҪBʱVҲӦѼ
5
%汾1 else %һVʱΪżB
rn(d-3)=3*(-(rn(d-4))/(abs(rn(d-4)))); %3B,벻ŵB
rn(d:a)=-rn(d:a);
end %Vķٽ end end end end
rn %˴˲벻ŵB %for s=1:a
% if abs(rn(s))==3 %ҵB
%rn(s)=rn(s)*(-(rn(s-1))/(abs(rn(s-1)))); %B3ǰһλõĴŵĹһֵȡʵַB(3)ļǰһǷŵ෴
%BǽV,ʼŽ仯 %end %end
HDB=rn; %B(3)˷ţʵVķٽ
HDB
%ϱʵHDB3ı
%н for k=1:a
if abs(rn(k))==2
rn(k-3)=0;rn(k)=0; %ÿV20VǰпB(3)п0ҲָΪ0 end
if abs(rn(k))==1 rn(k)=1; end end
rn %Ļָ
rn-ori %ԭȽȫΪ0ȷ
6
s=menu('ͨԭ','2ASK','2PSK','2FSK','2DPSK') switch s
case 1,scolor='2ASK'; n=8;N=100;K=4; a=randint(1,n); bita=[];sl=[];
bitRate=1e3;fc=1e3;%Ƶ1KHZ t=linspace(0,1/bitRate,N); for i=1:length(a) if a(i)==0
bit1=zeros(1,N); else
bit1=ones(1,N); end
bita=[bita,bit1]; c=sin(2*pi*t*fc); sl=[sl c]; end
figure(1);
subplot(K,1,1);plot(bita,'LineWidth',1.5),title('ź'),grid on;axis([0,N*length(a),-2.5,2.5]);
tz=bita*6.*sl;
subplot(K,1,2);plot(tz,'LineWidth',1.5);title('ASKƺź');grid on;
signal=awgn(tz,80,'measured');
subplot(K,1,3);plot(signal,'LineWidth',1.5),grid on;title('ź+')
Fs=3e3;
[b,a]=ellip(4,0.1,40,[999.9,1000.1]*2/Fs);%IIRͨ˲Ϊ4ͨƲ0.1˥40DB
sf=filter(b,a,signal);%źͨ˲ figure(2); K1=4;
subplot(K1,1,1);plot(sf,'LineWidth',1.5),grid on;title('BPF')
signal2=abs(sf); %ͬƵͬsin
subplot(K1,1,2);plot(signal2,'LineWidth',1.5),grid on;title('ȫ');
Fs=3e3;%Ƶ400HZ
7
[b,a]=ellip(4,0.1,40,[50]*2/Fs);%IIRͨ˲ sf1=filter(b,a,signal2);%źͨ˲źsf
subplot(K1,1,3);plot(sf1,'LineWidth',1.5),grid on;title('LPF');
sf2=[];
LL=fc/bitRate*N; i=LL/2; bitb=[];
while (i<=length(sf1)) %о sf2=[sf2,sf1(i)>=0.001]; i=i+LL; end
for i=1:length(sf2) if sf2(i)==0
bit1=zeros(1,N); else
bit1=ones(1,N); end
bitb=[bitb,bit1]; end
figure(1);
subplot(K,1,4); plot(bitb,'LineWidth',1.5),grid on;title('ź'); axis([0,N*length(sf2),-2.5,2.5]);
case 2,scolor='2PSK';
l=linspace(0,pi,50);% ݳʼ t=linspace(0,9*pi,450); b=1:1:9; out=1:1:450; f=1:1:450; g=1:1:450;
w1=2 %Ҳf1Ƶ,ԸԼҪƵڴ˸д %Ҳf2Ƶ,ԸԼҪƵڴ˸д f1=sin(w1*l); figure(1);
f2=sin(w1*l+pi); figure(1);
subplot(2,1,1),plot(l,f1),axis([0 pi -1.2 1.2]),xlabel('t'),ylabel('f1');%f1źŲ subplot(2,1,2),plot(l,f2),axis([0 pi -1.2 1.2]),xlabel('t'),ylabel('f2');%f2źŲ a=[0 1 0 0 0 1 1 0 1]
8
92ƪĵ