(完整word版)16QAM_星形和矩形星座圖調(diào)制解調(diào)MATLAB代碼_第1頁
(完整word版)16QAM_星形和矩形星座圖調(diào)制解調(diào)MATLAB代碼_第2頁
(完整word版)16QAM_星形和矩形星座圖調(diào)制解調(diào)MATLAB代碼_第3頁
(完整word版)16QAM_星形和矩形星座圖調(diào)制解調(diào)MATLAB代碼_第4頁
(完整word版)16QAM_星形和矩形星座圖調(diào)制解調(diào)MATLAB代碼_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、% % 軟件無線電課程設(shè)計(jì)% 方形、星形16QAM 調(diào)制解調(diào)仿真%主程序clc clear%碼元速率250M%濾波器采樣率%載波頻率2.5G%對載波采樣%數(shù)據(jù)長度% 定義參數(shù)fd=250*10A6;fs=2500*10A6;fc=2500*10A6;f=10000*10A6;data_len=200000;sym_len=data_len/4; % 碼元序列長度M_QAM=16;%QAM 數(shù)k=log2(M_QAM);SNR=1:12;% 白噪聲信噪比,% bit_tx=randint(1,data_len);% 產(chǎn)生隨機(jī)序列 echo off;%方形16QAM 調(diào)制% 星形 16QAM 調(diào)制

2、%基帶成型濾波% 基帶成型濾波% 信噪比從1dB 到 12dB 計(jì)算誤碼率rec_qam16=QamMod(bit_tx,16);star_qam16=SrarQamMod(bit_tx);base_rec=base_shape(fd,fs,f,rec_qam16);base_star=base_shape(fd,fs,f,star_qam16);for i=1:length(SNR)SNR=i%方形映射16QAMrf_rec_qam16=CarrierMod(fc,f,base_rec);%載波調(diào)制rf_rec_qam16_n=awgn(rf_rec_qam16,SNR(i),measure

3、d);%加噪聲rec_qam16_rx base_rec_rx=CarrierDemod(fd,fs,fc,f,rf_rec_qam16_n); %載波解調(diào)bit_rec_rx=QamDemod(rec_qam16_rx,16);%MQAM 解調(diào)num_qam16,perr_qam16_rec(i)=biterr(bit_tx,bit_rec_rx);% 誤碼率 qam16_data_rec(i,:)=rec_qam16_rx;%scatterplot(rec_qam16_rx);%星形映射16QAMrf_star_qam16=CarrierMod(fc,f,base_star);%載波調(diào)制r

4、f_star_qam16_n=awgn(rf_star_qam16,SNR(i),measured);%加噪聲star_qam16_rx base_star_rx=CarrierDemod(fd,fs,fc,f,rf_star_qam16_n);%載波解調(diào)bit_star_rx=StarQamDemod(star_qam16_rx);%MQAM 解調(diào)num_qam16,perr_qam16_star(i)=biterr(bit_tx,bit_star_rx);% 誤碼率qam16_data_star(i,:)=star_qam16_rx;%scatterplot(star_qam16_rx);

5、end% 理論誤碼率計(jì)算SNRtheo=0:0.1:length(SNR);for i=1:length(SNRtheo)SNRdec=10.A(SNRtheo(i)/10);theo_perr_qam16(i)=(3/8)*erfc(sqrt(SNRdec*2/5);end% 基帶波形N=200;n=1:N;t=1:N*10;%發(fā)送端波形figure;stem(n,bit_tx(n); title( 發(fā)送序列);%發(fā)送序列figure(Name, 發(fā)送端基帶信號);subplot(411);plot(t,real(base_rec(t); title( 方形映射-Q 路 );subplot(

6、412);plot(t,imag(base_rec(t); title( 方形映射-I 路 );subplot(413);plot(t,real(base_star(t); title( 星形映射-Q 路 );subplot(414);plot(t,imag(base_star(t); title( 星形映射-I 路 );%接收端波形figure;subplot(211);stem(n,bit_rec_rx(n); title( 方形接收序列);subplot(212);stem(n,bit_star_rx(n);title(星形接收序列);figure(Name, 接收端基帶信號);subp

7、lot(411);plot(t,real(base_rec_rx(t);title( 方形映射-Q 路 );subplot(412);plot(t,imag(base_rec_rx(t);subplot(413);plot(t,real(base_star_rx(t);subplot(414);plot(t,imag(base_star_rx(t);%基帶眼圖N1=20000;Tn=f/fd;eye_rex=base_rec(1:N1);eyediagram(eye_rex,Tn*4,Tn);eye_star=base_star(1:N1);eyediagram(eye_star,Tn*4,T

8、n);title( 方形映射-I 路 );title(星形映射-Q路);title( 星形映射-I 路 );title(方形基帶眼圖);title( 星形基帶眼圖);% 接收端星座圖%scatterplot(qam16_data_rec(12,:);figure(Name, 方形 16QAM 接收端星座圖);for i=3:3:12subplot(2,2,i/3);plot(real(qam16_data_rec(i,:),imag(qam16_data_rec(i,:),.);xmax=5;axis(-xmax xmax -xmax xmax) title(Snr=,num2str(SNR(

9、i), dB);endfigure(Name, 星形 16QAM 接收端星座圖);for i=3:3:12subplot(2,2,i/3);plot(real(qam16_data_star(i,:),imag(qam16_data_star(i,:),.);xmax=3;axis(-xmax xmax -xmax xmax)grid on; title(Snr=,num2str(SNR(i), dB);end % 功率譜密度 f_plot;% 誤碼率分析%16QAM 誤碼率曲線figure(Name,16QAM 誤碼性能對比);% semilogy(SNRtheo,theo_perr_qam

10、16); % hold on;semilogy(SNR,perr_qam16_rec,*);hold on;semilogy(SNR,perr_qam16_star,o); xlabel(SNR in dB);ylabel(Prb of Err);legend(方形 16QAM,星形 16QAM);title(16QAM 誤碼性能對比);% 基帶成型function base_info=base_shape(fd,fs,f,seq_16QAM)%平方根升余弦濾波器,滾降系數(shù)0.5,延遲3 個采樣點(diǎn)flt=rcosine(fd,fs,sqrt,0.5);%I 路和 Q 路seq_Q=real(s

11、eq_16QAM);seq_I=imag(seq_16QAM);%增采樣R=fs/fd;up_seq_Q=upsample(seq_Q,R);up_seq_I=upsample(seq_I,R);%升余弦調(diào)制rcos_Q=conv(up_seq_Q,flt);rcos_I=conv(up_seq_I,flt);%提升rcos_Q_up=interp(rcos_Q,f/fs);rcos_I_up=interp(rcos_I,f/fs);base_info=rcos_Q_up+j*rcos_I_up;% 載波解調(diào)function data_rx base_rx=CarrierDemod(fd,fs

12、,fc,f,receive)% 分兩路乘正交高頻載波rc_length=length(receive);flt=rcosine(fd,fs,sqrt,0.5);t=0:rc_length-1;rc_Q=receive .* sin(2*pi*fc*t/f);rc_I=receive .* cos(2*pi*fc*t/f);%減采樣后根升余弦匹配濾波,注意對齊采樣點(diǎn)down_Q=downsample(0 rc_Q,f/fs);down_I=downsample(rc_I,f/fs);low_Q_rcos=conv(down_Q,flt);low_I_rcos=conv(down_I,flt);b

13、ase_rx=low_Q_rcos(1:length(low_I_rcos)+j*low_I_rcos;%兩次根升余弦濾波延遲,定位初始信號位置%delay+1:end-delay-1R=fs/fd;delay=3*R*2;rc_Q_seq=(downsample(low_Q_rcos(delay+1:end-delay-1),R);rc_I_seq=(downsample(low_I_rcos(delay+1:end-delay-1),R);%類型轉(zhuǎn)換data_rx=rc_Q_seq+j*rc_I_seq;% 載波調(diào)制function transmit=CarrierMod(fc,f,bas

14、e)%載波調(diào)制t=0:length(base)-1;high_freq_Q=real(base) .* sin(2*pi*fc*t/f);high_freq_I=imag(base) .* cos(2*pi*fc*t/f);transmit=high_freq_Q+high_freq_I;% QAM 解調(diào)程序,將MQAM 碼元還原為二進(jìn)制數(shù)據(jù)%入口參數(shù):data_QAM : QAM 碼元數(shù)據(jù)%M_QAM:MQAM 中 M 的大小%出口參數(shù):二進(jìn)制數(shù)據(jù)比特流%function data_out=QamDemod(data_QAM,M_QAM)k=log2(M_QAM);% 每個 M 進(jìn)制碼元的b

15、it 數(shù)data_len=length(data_QAM);% 碼元長度%QAM 信號放縮至與發(fā)送端相同比例data_temp=data_QAM(find(real(data_QAM0);aver=mean(real(data_temp);data_Qam_temp=data_QAM/aver*(2A(k/2-1);%平移到第一象限data_Qam_temp2=(data_Qam_temp+(2A(k/2)-1)*(1+j)/2;%將實(shí)部虛部分別映射為二進(jìn)制數(shù)據(jù)%實(shí)部data_real=round(real(data_Qam_temp2);% 實(shí)部判決data_real(find(data_real(2A(k/2)-1)=2A(k/2)-1;% 大于 2A(k/2)-1 的數(shù)據(jù)判定為 2A(k/2)-1 data_real(find(data_real(2A(k/2)-1)=2A(k/2)-1;% 大于 2A(k/2)-1 的數(shù)據(jù)判定為2A(k/2)-1data_imag(find(data_imag2)=2;% 幅度大于2 的判定為2am(find(am1.5)=1;% 幅度大于2 的判定為2%相位判定ang=angle(qam_rev)/pi*180;% 將 -180 度到 0

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論