南京航空航天大学 实验报 告 课程名称:通信原理实验 实验名称:基于Matlab的数字基带传输系统实验 评定成绩: 审阅教师: 一. 实验目的 1.1 掌握数字基带传输系统和振幅键控调制/解调的原理和方法; 1.2 掌握数字基带和振幅键控信号的波形和功率谱特点; 1.3 掌握振幅键控调制系统的MATLAB仿真实现方法。 二.原理框图 二进制振幅键控信号的产生方法(调制方法)有两种:模拟调制法(相乘器)和键控法。 三.程序源代码 %2ASK信号的调制与解调源代码 bit=[1 0 1 0 1 0 1 0];%g为比特流 N=100; %码元速率 fc=1000;%载波频率 swr=10;%信噪比 M=8;%码元个数 bitrate=100; fs=N*bitrate; t=linspace(0,1/bitrate,N); ts=1/fs; %载波信号 c=cos(2*pi*fc*t); figure(1) plot(c,'g'); title('载波信号波形'); y1=fftshift(abs(fft(c))); figure(2) plot(y1,'g'); title('载波信号频谱'); axis([-100,200,0,100]); %数字基带信号产生 bits=[]; sig=[]; s=[]; for i=1:length(bit)%%length(m)表示信号m的长度 if bit(i)==0 bits=zeros(1,N); else bits=ones(1,N); end sig=[sig,bits]; %数字基带信号 s=[s,cos(2*pi*fc*t).*bits];%已调信号 end figure(3) plot(sig,'r'); title('数字基带信号波形'); axis([0,900,-0.5,2]); y2=fftshift(abs(fft(sig))); figure(4) plot(y2,'r'); title('数字基带信号频谱'); axis([0,900,0,450]); %基带信号功率谱 nfft=1024; cxn=xcorr(sig,'unbiased'); %计算序列的自相关函数 CXk=fft(cxn,nfft); Pxx=abs(CXk); index=0:round(nfft/2-1); k=index*fs/nfft; plot_Pxx=10*log10(Pxx(index+1)); figure(5) plot(k,plot_Pxx); title('数字基带信号功率谱'); %已调信号的波形以及频谱 figure(6) plot(s,'y'); title('已调信号波形'); y3=fftshift(abs(fft(s))); figure(7) plot(y3,'y'); title('已调信号频谱'); axis([-100,1000,0,250]) %加噪声 figure(8) y4= awgn(s,swr); plot(y4,'r'); title('加噪声后的已调信号'); %求加噪声后的功率谱密度 nfft=1024; cxn=xcorr(y4,'unbiased'); %计算序列的自相关函数 CXk=fft(cxn,nfft); Pxx=abs(CXk); index=0:round(nfft/2-1); k=index*fs/nfft; plot_Pxxn=10*log10(Pxx(index+1)); figure(9) plot(k,plot_Pxxn); title('加噪声后数字基带信号功率谱'); %带通滤波 a=[700,1300];c=0.1;d=35; Wp=a/(fs/2); %%若为低通,a 为一个频率值,若为带通a 为一个频率范围[a1 a2] Rp=c; %% c 为通带最大衰减分贝 Rs=d; %% d 为阻带最小衰减分贝 [b,a]=ellip(4,Rp,Rs,Wp); s1=filter(b,a,s); figure(10) plot(s1,'g'); title('带通滤波后的数字基带信号'); %带通滤波后信号功率谱密度 nfft=1024; cxn=xcorr(s1,'unbiased'); %计算序列的自相关函数 CXk=fft(cxn,nfft); Pxx=abs(CXk); index=0:round(nfft/2-1); k=index*fs/nfft; plot_Pxx=10*log10(Pxx(index+1)); figure(11) plot(k,plot_Pxx); title('带通滤波后信号功率谱'); %抽样判决(解调过程) sigout=[]; for i=1:M if s1(N*(i-1)+N/2)>0.5 bits=ones(1,N); else bits=zeros(1,N); end sigout=[sigout,bits]; end figure(12) plot(sigout,'g'); title('抽样判决后的解调信号波形'); axis([0,900,-0.5,1.5]); %解调信号功率谱密度 nfft=1024; cxn=xcorr(sigout,'unbiased'); %计算序列的自相关函数 CXk=fft(cxn,nfft); Pxx=abs(CXk); index=0:round(nfft/2-1); k=index*fs/nfft; plot_Pxx=10*log10(Pxx(index+1)); figure(13) plot(k,plot_Pxx); title('滤波后的解调信号功率谱'); %最后将原基带信号和解调后的基带信号统一绘图作比较 figure(14) subplot(2,1,1); plot(sig,'r'); title('原数字基带信号'); axis([0,1000,-0.5,1.5]); subplot(2,1,2); plot(sigout,'r'); title('解调信号'); axis([0,1000,-0.5,1.5]); 四.对应波形及频谱图 
原文件from宝杰童鞋~
修改后的另一种码元调制与解调源代码~
|