代码能仿真出基础的数字基带信号传输过程,采纳双极性不归零编码,其中奈奎斯特滤波器是通过加载由 fda 工具生成的 mat 文件。在仿真过程中,加入的高斯白噪声越大,误码率越高.滤波器的滚降系数越小,误码率越高。clc;clear all;N=100;%生成的比特个数n=16; %每个比特的抽样点数signal=rand(1,N)>0.5; %生成低密度的个数为 N 的 01 比特流Rb=16;Ts=1/(Rb*n);%抽样间隔%画原信号t1=0:1/Rb:(N-1)/Rb;figure(1)subplot(6,1,1)plot(t1,signal,’b。')axis([0,20/Rb,-1.2,1。2])grid ontitle('原始信号’) %双极性编码code_signal=ones(1,1600);for j=1:100 if signal(j)==0 for i=0:15 code_signal(16*j-i)=—1; end endend %扩展了原信号的抽样点数,并生成双极性编码%画双极性编码信号t2=0:Ts:(N*n—1)*Ts;%T=N*Rb 为生成的信号的长度subplot(6,1,2)plot(t2,code_signal,’b.')axis([0,20/Rb,-1.2,1。2])grid ontitle(’双极性编码’) transmissionsignal=awgn(code_signal,10); %加入高斯白噪声%画出高斯白噪声后的信号subplot(6,1,3)plot(t2,transmissionsignal)axis([0,20/Rb,—1。2,1。2])grid ontitle(’加入高斯白噪声后的信号') %奈奎斯特滤波器myNyquist=load (’myNyquist0.5。mat');%Rolloff=0。5,fs=256,Band=8den=1;filtersignal=filter(myNyquist。Num,den,transmissionsignal);%经升余弦滚降系统之后信号subplot(6,1,4)plot(t2,filtersignal)axis([0,20/Rb,-2,2])grid ontitle('经升余弦滚降系统之后信号') %抽样判决samplesignal=[];for i=n/2:n:length(filtersignal) if filtersignal(i)〉0 for j=1:n samplesignal=[samplesignal,1]; end else for j=1:n samplesignal=[samplesignal,—1]; end endend%画抽样判决之后的信号subplot(6,1,5)plot(t2,samplesignal,’b.’)grid onaxis([0,20/Rb,-1.2,1.2])title(’抽样判决之后的信号') %反向恢复原编码ssignal=[];for i=n/2:n:length(samplesignal) if samplesignal(i)>0 ssignal=[ssignal,1]; else ssignal=[ssignal,0]; endend%恢复信号subplot(6,1,6)00.20.40.60.811.2-101原 始 信 号00.20.40.60.811.2-101双 极 性 编 码00.20.40.60.811.2-101加 入 高 斯 白 噪 声 后 的 信 号00.20.40.60.811.2-202经 升 余 弦 滚 降 系 统 之 后 信 号00.20.40.60.811.2-101抽 样 判 决 之 后 的 信 号00.20.40.60.811.2-101恢 复 信 号plot(t1,ssignal,'b。’)grid onaxis([0,20/Rb,-1.2,1.2])title('恢复信号') %误码率的计算syms cntcnt=0;for c=1:100 if signal(c)==ssignal(c) cnt=cnt+0; else cnt=cnt+1; endenderror=cnt/n仿真图: