南京航空航天大學(xué) 實(shí)驗(yàn)報 告 課程名稱:通信原理實(shí)驗(yàn) 實(shí)驗(yàn)名稱:基于Matlab的數(shù)字基帶傳輸系統(tǒng)實(shí)驗(yàn) 評定成績: 審閱教師: 一. 實(shí)驗(yàn)?zāi)康? 1.1 掌握數(shù)字基帶傳輸系統(tǒng)和振幅鍵控調(diào)制/解調(diào)的原理和方法; 1.2 掌握數(shù)字基帶和振幅鍵控信號的波形和功率譜特點(diǎn); 1.3 掌握振幅鍵控調(diào)制系統(tǒng)的MATLAB仿真實(shí)現(xiàn)方法。 二.原理框圖 二進(jìn)制振幅鍵控信號的產(chǎn)生方法(調(diào)制方法)有兩種:模擬調(diào)制法(相乘器)和鍵控法。 三.程序源代碼 %2ASK信號的調(diào)制與解調(diào)源代碼 bit=[1 0 1 0 1 0 1 0];%g為比特流 N=100; %碼元速率 fc=1000;%載波頻率 swr=10;%信噪比 M=8;%碼元個數(shù) 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]); %數(shù)字基帶信號產(chǎn)生 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]; %數(shù)字基帶信號 s=[s,cos(2*pi*fc*t).*bits];%已調(diào)信號 end figure(3) plot(sig,'r'); title('數(shù)字基帶信號波形'); axis([0,900,-0.5,2]); y2=fftshift(abs(fft(sig))); figure(4) plot(y2,'r'); title('數(shù)字基帶信號頻譜'); axis([0,900,0,450]); %基帶信號功率譜 nfft=1024; cxn=xcorr(sig,'unbiased'); %計算序列的自相關(guān)函數(shù) 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('數(shù)字基帶信號功率譜'); %已調(diào)信號的波形以及頻譜 figure(6) plot(s,'y'); title('已調(diào)信號波形'); y3=fftshift(abs(fft(s))); figure(7) plot(y3,'y'); title('已調(diào)信號頻譜'); axis([-100,1000,0,250]) %加噪聲 figure(8) y4= awgn(s,swr); plot(y4,'r'); title('加噪聲后的已調(diào)信號'); %求加噪聲后的功率譜密度 nfft=1024; cxn=xcorr(y4,'unbiased'); %計算序列的自相關(guān)函數(shù) 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('加噪聲后數(shù)字基帶信號功率譜'); %帶通濾波 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('帶通濾波后的數(shù)字基帶信號'); %帶通濾波后信號功率譜密度 nfft=1024; cxn=xcorr(s1,'unbiased'); %計算序列的自相關(guān)函數(shù) 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('帶通濾波后信號功率譜'); %抽樣判決(解調(diào)過程) 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('抽樣判決后的解調(diào)信號波形'); axis([0,900,-0.5,1.5]); %解調(diào)信號功率譜密度 nfft=1024; cxn=xcorr(sigout,'unbiased'); %計算序列的自相關(guān)函數(shù) 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('濾波后的解調(diào)信號功率譜'); %最后將原基帶信號和解調(diào)后的基帶信號統(tǒng)一繪圖作比較 figure(14) subplot(2,1,1); plot(sig,'r'); title('原數(shù)字基帶信號'); axis([0,1000,-0.5,1.5]); subplot(2,1,2); plot(sigout,'r'); title('解調(diào)信號'); axis([0,1000,-0.5,1.5]); 四.對應(yīng)波形及頻譜圖 
原文件from寶杰童鞋~
修改后的另一種碼元調(diào)制與解調(diào)源代碼~
|