通信原理matlab课程设计报告.doc
《通信原理matlab课程设计报告.doc》由会员分享,可在线阅读,更多相关《通信原理matlab课程设计报告.doc(17页珍藏版)》请在三一办公上搜索。
1、一、问题描述1. 使用matlab编程完成HDB3的编码与解码。2. 课程设计需要运用MATLAB编程实现2ASK,2FSK,2PSK,2DPSK调制解调过程,并且输出其源码,调制后码元以及解调后码元的波形。二、实验原理1.HDB3编码解码原理HDB3码:三阶高密度双极性码。 HDB3码与二进制序列的关系: (1)二进制信号序列中的“0”码在HDB3码中仍编为“0”码,二进制信号中“1”码,在HDB3码中应交替地成+1和-1码,但序列中出现四个连“0”码时应按特殊规律编码(引入传号交替反转码的“破坏点”V码); (2)二进制序列中四个连“0”按以下规则编码:信码中出现四个连“0”码时,要将这四
2、个连“0”码用000V或B00V取代节来代替(B和V也是“1”码,可正、可负)。这两个取代节选取原则是,使任意两个相邻v脉冲间的传号数为奇数时选用000V取代节,偶数时则选用B00V取代节。2.二进制数字调制技术原理数字信号的传输方式分为基带传输和带通传输,在实际应用中,大多数信道具有带通特性而不能直接传输基带信号。为了使数字信号在带通信道中传输,必须使用数字基带信号对载波进行调制,以使信号与信道的特性相匹配。这种用数字基带信号控制载波,把数字基带信号变换为数字带通信号的过程称为数字调制。通常使用键控法来实现数字调制,比如对载波的振幅、频率和相位进行键控。(1)2ASK信号的产生方法通常有两种
3、:模拟调制和键控法。解调有相干解调和非相干解调。P=1时f(t)=Acoswt;p=0时f(t)=0;其功率谱密度是基带信号功率谱的线性搬移(2) 一个2FSK信号可以看成是两个不同载波的2ASK信号的叠加。其解调和解调方法和ASK差不多。2FSK信号的频谱可以看成是f1和f2的两个2ASK频谱的组合。(3) 2PSK以载波的相位变化作为参考基准的,当基带信号为0时相位相对于初始相位为0, 当基带信号为1时相对于初始相位为180。(4) 2DPSK调制原理方框图如下图。S(t) 载波移相p码变换 A(t) 间接法信号调制器原理方框图2DPSK信号的解调,主要有两种方法,即相位比较法和相干解调法
4、。相干解调法原理方框图如下图: 带通滤波相乘低通滤波抽样判决逆码变换本地载波 提取相干解调法原理方框图三、源程序clearclca=20; %a表示元素个数,可以修改码元为任意个数如1024r=unidrnd(2,1,a-1); %随机产生离散均匀二值分布(1,2),共a-1个rn=r-1; %每个元素减1变为(0,1)二值随机数列rn=1,rn; %跟书上一致,从1开始随机产生离散均匀二值分布(1,2),共a个ori=rn; %将原序列保存起来,便于后面解码后比较oril=1; for k=1:a-3 if abs(rn(k)=1 m=rn(k); %m记录可能存在的连续4个0前面非零码元的
5、符号 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 endendrn ; %插入V(2)后 checked l=1; %l=1表示两个V之间有偶数个非零码,0是偶数,所以初始为1,l=-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
6、 if l=1 l=1; %不需要插入B时若检测到V也应把计数器清零 %最初版本的升级处1 else %检测到下一个V时,若为偶数个,则插入B rn(d-3)=3*(-(rn(d-4)/(abs(rn(d-4); %3代表B,插入不带符号的B rn(d:a)=-rn(d:a); end %V后的符号再交替 end end endendrn %到此处完成了插入不带符号的B%for s=1:a % if abs(rn(s)=3 %找到B %rn(s)=rn(s)*(-(rn(s-1)/(abs(rn(s-1); %B(3)与前一个位置的带符号的归一值相乘再取反,实现符号B(3)的极性与前一非符号的
7、相反 %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; %每个V(2)都变成0,V前面第三个有可能是B(3)有可能是0也恢复为0 end if abs(rn(k)=1 rn(k)=1; endendrn %解码后的恢复序列rn-ori %解码与原码比较全为0则解码正确 s=menu(通信原理,2ASK,2PSK,2FSK,2DPSK)switch s case 1
8、,scolor=2ASK;n=8;N=100;K=4;a=randint(1,n);bita=;sl=;bitRate=1e3;fc=1e3;%载频1KHZt=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;endfigure(1);subplot(K,1,1);plot(bita,LineWidth,1.5),title(基带信号),grid on;axis(0,N*le
9、ngth(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,阻带衰减40DBsf=filter(b,a,signal);%信号通过该滤波器figure(
10、2);K1=4;subplot(K1,1,1);plot(sf,LineWidth,1.5),grid on;title(BPF)signal2=abs(sf); %乘同频同相sinsubplot(K1,1,2);plot(signal2,LineWidth,1.5),grid on;title(全波整流器); Fs=3e3;%抽样频率400HZb,a=ellip(4,0.1,40,50*2/Fs);%设计IIR低通滤波器sf1=filter(b,a,signal2);%信号通过该滤波器,输出信号sfsubplot(K1,1,3);plot(sf1,LineWidth,1.5),grid on
11、;title(LPF); sf2=;LL=fc/bitRate*N;i=LL/2;bitb=;while (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;endfigure(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=linspa
12、ce(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 -
13、1.2 1.2),xlabel(t),ylabel(f2);%画出f2信号波形a=0 1 0 0 0 1 1 0 1for 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 endendfor 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
14、)-f2(j)=0 m=m+1; end end end if nm b(i)=0; else b(i)=1; endend bfor i=1:9 %画出解码后的波形 ,包括原码和解码出的码,进行对比 for j=1+50*(i-1):50*i f(j)=a(i); g(j)=b(i); endendfigure(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
15、(调制好的波形);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;%=生成随机码元、基带信号、调制=%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,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 通信 原理 matlab 课程设计 报告
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-4142346.html