当前位置:首页 > 通信原理matlab课程设计报告-matlab课程设计报告
for i=1:9 %2pSK编码 if a(i)==0
for k=1:50 %如果二进制原码为0则输出f1波形 out(k+50*(i-1))=f1(k); end else
for j=1:50
out(j+50*(i-1))=f2(j); %r如果二进制原码为1则输出f2波形 end end end
for i=1:9 %2PSK解码 n=0;m=0; for j=1:50
if out(j+50*(i-1))-f1(j)==0 n=n+1;
else if out(j+50*(i-1))-f2(j)==0 m=m+1; end end end if n>m
b(i)=0; else b(i)=1; end end b
for i=1:9 %画出解码后的波形 ,包括原码和解码出的码,进行对比 for j=1+50*(i-1):50*i f(j)=a(i); g(j)=b(i); end end
figure(2);
subplot(3,1,1),plot(t,f),axis([0 9*pi -0.2 1.2]),xlabel('t'),ylabel('数字基带调制原码');
subplot(3,1,2),plot(t,out),axis([0 9*pi -1.2 1.2]),xlabel('t'),ylabel('调制好的波形');
subplot(3,1,3),plot(t,g),axis([0 9*pi -0.2 1.2]),xlabel('t'),ylabel('解码得到的码');
[Num,Rat]=biterr(f,g)
case 3,scolor='2FSK';
%==生成随机码元、基带信号、调制================%
9
n=8;%随机码元个数
N=100;%模拟一个码元的点数 K=4;%figure1画四个小图 a=randint(1,n)%码元生成
bita=[];%定义空数组,存放基带信号 for i=1:length(a) if a(i)==0
bit1=zeros(1,N); else
bit1=ones(1,N); end
bita=[bita,bit1];%基带信号 end
figure(1);
subplot(K,1,1);plot(bita,'LineWidth',1.5),title('基带信号'),grid on;axis([0,N*length(a),-2.5,2.5]);
bitRate=1e3;%每一个码元中采样点的间隔宽度0.001s fc=1e3;%载频1KHZ
t=linspace(0,1/bitRate,N); tz=[];
c1=sin(2*pi*t*fc);%载波 c2=sin(2*pi*t*fc*2);%载波 for i=1:length(a) if a(i)==1 tz=[tz,c1]; else
tz=[tz,c2]; end end
subplot(K,1,2);plot(tz,'LineWidth',1.5);title('2FSK已调信号');grid on;
signal=awgn(tz,20,'measured');%加噪
subplot(K,1,3);plot(signal,'LineWidth',1.5),grid on;title('信号+噪声')
%===========解调============% Fs=5e3;%采样频率
[b1,a1]=ellip(4,0.1,40,[999.9,1000.1]*2/Fs);%设计IIR带通滤波器,阶数为4,通带纹波0.1,阻带衰减40DB
[b2,a2]=ellip(4,0.1,40,[1999.9,2000.1]*2/Fs); sa=filter(b1,a1,signal);%信号通过该滤波器 sb=filter(b2,a2,signal); figure(2);
K1=3;%figure2画(3*2)幅图表示解调过程
10
subplot(K1,2,1);plot(sa,'LineWidth',1.5),grid on;title('BPF') subplot(K1,2,2);plot(sb,'LineWidth',1.5),grid on;title('BPF') %======相乘器=============% t=linspace(0,1/bitRate,N); c1=sin(2*pi*t*fc); c2=sin(2*pi*t*fc*2); sia=[]; sib=[];
for i=1:n
sia=[sia,c1]; sib=[sib,c2]; end
siga=sa.*sia;%乘同频同相sia sigb=sb.*sib;%乘同频同相sib
subplot(K1,2,3);plot(siga,'LineWidth',1.5),grid on;title('相乘器'); subplot(K1,2,4);plot(sigb,'LineWidth',1.5),grid on;title('相乘器'); %========LPF================% Fs=5e3;%抽样频率400HZ
[b1,a1]=ellip(4,0.1,40,[50]*2/Fs);%设计IIR低通滤波器 [b2,a2]=ellip(4,0.1,40,[50]*2/Fs);%设计IIR低通滤波器 sfa=filter(b1,a1,siga);%信号通过该滤波器,输出信号sfa sfb=filter(b2,a2,sigb);%信号通过该滤波器,输出信号sfb
subplot(K1,2,5);plot(sfa,'LineWidth',1.5),grid on;title('LPF'); subplot(K1,2,6);plot(sfb,'LineWidth',1.5),grid on;title('LPF'); %===========抽样判决==================% s2a=[];s2b=[]; LL=fc/bitRate*N; i1=LL/2;i2=LL; bitb=[];
while (i1<=length(sfa)) %判决过程 s2a=[s2a,sfa(i1)>=0]; i1=i1+LL; end
while (i2<=length(sfb)) s2b=[s2b,sfb(i2)<=0]; i2=i2+LL; end for i=1:n
if s2a(i)>s2b(i) bit1=zeros(1,N); else
bit1=ones(1,N); end
bitb=[bitb,bit1];
11
end
figure(1);
subplot(K,1,4); plot(bitb,'LineWidth',1.5),grid on;title('解调后信号'); axis([0,length(bitb),-2.5,2.5]);
case 4,scolor='2DPSK'; %- 2DPSK 调制与解调
%--------------------------------------------------- %>>>>>>>>>>>>>>>>>>Initial_Part>>>>>>>>>>>>>>>>>>>>> %--------------------------------------------------- fs = 30000;
Time_Hold_On = 0.1;
Num_Unit = fs * Time_Hold_On;
High_Level = ones ( 1, Num_Unit ); Low_Level = zeros ( 1, Num_Unit ); w = 300; A = 1;
%--------------------------------------------------- %>>>>>>>>>>>>>>>>>>Initial_The_Signal>>>>>>>>>>>>>>> %--------------------------------------------------- Sign_Set = [0,1,1,0,1,0,0,1]
Lenth_Of_Sign = length ( Sign_Set );
st = zeros ( 1, Num_Unit * Lenth_Of_Sign );
sign_orign = zeros ( 1, Num_Unit * Lenth_Of_Sign ); sign_result = zeros ( 1, Num_Unit * Lenth_Of_Sign ); t = 0 : 1/fs : Time_Hold_On * Lenth_Of_Sign - 1/fs;
%--------------------------------------------------- %>>>>>>>>>>>产生基带信号>>>>>>>>>>>>
%--------------------------------------------------- for I = 1 : Lenth_Of_Sign if Sign_Set(I) == 1
sign_orign( (I-1)*Num_Unit + 1 : I*Num_Unit) = High_Level; else
sign_orign( (I-1)*Num_Unit + 1 : I*Num_Unit) = Low_Level; end end
%--------------------------------------------------- %>>>>>>>>>>>>>>>>>>调制部分>>>>>>>>>>>>>>>>>>
%---------------------------------------------------
12
共分享92篇相关文档