数字基带传输常用码型的MATLAB表示

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

数字基带传输常用码型的MATLAB表示在某些具有低通特性的有线信道中,特别是传输距离较近的情况下,数字基带信号不经调制可以直接传输,这种系统称为数字基带系统。而具有调制解调过程的数字系统称为数字带通传输系统。在第七章中,将列举数字带通传输系统仿真的例子,在本章中,我们重点讨论数字基带常用码型的产生,即数字基带信号的产生。教材中,我们以单极性不归零码和单极性不归零码的实现作为参考。单极性不归零码MATLAB程序如下:functiony=snrz(x)%本函数实现输入二进制码,输出编号的单极性非归零码%输入x为二进制码,输出y为单极性非归零码num=200;%单极性非归零码每一个码元包含的点t=0:1/num:length(x);fori=1:length(x);ifx(i)==1;forj=1:num;y((i-1)*num+j)=1;%对应的点赋值为1endelseforj=1:num;y((i-1)*num+j)=0;%对应的点赋值为0endendendy=[y,x(i)];%为了绘制图形,注意要将y序列加最后一位plot(t,y);gridon;axis([0i-0.21.2]);title('单极性非归零码100101');%绘图在MATLAB命令行窗口中键入x的值,并调用函数snrz(x),就可以得到对应的单极性不归零码。如输入以下指令,将出现图1所示的结果。0123456-0.200.20.40.60.81单极性非归零码100101图1单极性不归零码单极性不归零码MATLAB程序如下:functiony=srz(x)%本函数实现输入二进制码,输出编号的单极性归零码%输入x为二进制码,输出y为单极性归零码num=200;%单极性非归零码每一个码元包含的点t=0:1/num:length(x);fori=1:length(x);ifx(i)==1;forj=1:num/2;y((i*2-2)*num/2+j)=1;%对1而言,前半部分时间值为1y((i*2-1)*num/2+j)=0;%对1而言,后半部分时间值为0endelseforj=1:num;y((i-1)*num+j)=0;%对应的点赋值为0endendendy=[y,x(i)];%为了绘制图形,注意要将y序列加最后一位plot(t,y);gridon;axis([0i-0.21.2]);title('单极性非归零码100101');同上,在MATLAB命令行窗口中键入x的值,并调用函数srz(x),就可以得到对应的单极性归零码。如输入以下指令,将出现图2所示的结果。x=[100101];srz(x);0123456-0.200.20.40.60.81单极性归零码100101图2单极性归零码借鉴上面两种码型的产生方法,便可以轻松的写出双极性归零码、双极性不归零码、差分码等的程序。对基带数字调制与解调仿真,在MATLAB通信工具箱中分别提供了函数dmodce和ddemodce来实现,读者可以通过help命令来获取相关信息。下面列举了一个2FSK基带调制解调的仿真示例。MATLAB程序如下:%本程序实现FSK调制解调基带仿真x=randint(1,1000);%产生01随机序列fd=10;%基带信号速率fs=200;%采样频率M=2;%M-FSKtone=20;snr=-10;%信噪比basefsk=dmodce(x,fd,fs,'fsk',M,tone);%调用dmodce函数进行fsk调制basefsk_awgn=awgn(basefsk,snr);%叠加噪声demod_basefsk=ddemodce(basefsk,fd,fs,'fsk',M,tone);%未加噪声的已调信号demod_basefsk_awgn=ddemodce(basefsk_awgn,fd,fs,'fsk',M,tone);%加噪声后的已调信号m=1:length(x);figure(1);subplot(3,1,1);stairs(m,x);axis([1length(x)-0.51.5]);title('基带信号波形');%绘制基带信号subplot(3,1,2);stairs(m,demod_basefsk);axis([1length(x)-0.51.5]);title('未加噪声的已调信号波形');subplot(3,1,3);stairs(m,demod_basefsk_awgn);axis([1length(x)-0.51.5]);title('加噪声后的已调信号波形');disp('通过理想信道时,误码数及误码率为:');[n_error,err_rate]=symerr(x,demod_basefsk)disp('通过非理想信道时,误码数及误码率为:');[n_error1,err_rate1]=symerr(x,demod_basefsk_awgn)运行程序,可以得到2FSK基带信号、解调信号如图3。如果Num的值设为1000,snr的值设为-10dB,运行程序在MATLAB命令行窗口,可得到理想信道以及非理想信道2FSK解调产生的误码数及误码率如下。如果改变snr的值,会发现snr的值越大,误码数及误码率会越小,即噪声对信号的影响会越小。通过理想信道时,误码数及误码率为:n_error=0err_rate=0通过非理想信道时,误码数及误码率为:n_error1=78err_rate1=0.078051015202530-0.500.511.5基带信号波形51015202530-0.500.511.5未加噪声的已调信号波形51015202530-0.500.511.5加噪声后的已调信号波形图32FSK基带信号及解调信号波形

1 / 5
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功