91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 8KB
    文件類型: .m
    金幣: 1
    下載: 1 次
    發布日期: 2021-06-02
  • 語言: Matlab
  • 標簽: 16QAM??MATALB??

資源簡介

信號源產生 0、 1 等概分布的隨機信號,映射到 16QAM 的星座圖上,同時一路信號已經被分成了 I 路和 Q 路,后邊的處理建立在這兩路信號的基礎上。I 路和 Q 路信號分別經過平方根升余弦 濾波器,再加入高斯白噪聲,然后通過匹配濾波器(平方根升余弦濾波器) 。最后經過 采樣,判決,得到 0、1 信號,同原信號進行比較,給出 16QAM 數字系統的誤碼。

資源截圖

代碼片段和文件信息

clc
clear?variables
close?all

%%?隨機信號的生成
%=====定義待仿真序列的維數
global?N
N=10000;
%=====定義產生“1”的概率為p
global?p
p=0.5;
%==========================
%首先產生隨機二進制序列
source=randsrc(1N[10;p1-p]);
%===========================
%畫出二進制序列
figure(1)
stem(source(11:50)‘filled‘);
title(‘隨機二進制序列‘);
%=============================
%對產生的二進制序列進行QAM調制
[source1source2]=Qam_modulation(source);
%=============================
%畫出星座圖
figure(2)
scatter(source1source2‘b*‘);
title(‘16QAM星座圖‘);
axis([-5?5?-5?5])
%==============================
%對兩路信號進行插值
sig_insert1=insert_value(source18);
sig_insert2=insert_value(source28);
%===============================
%畫出插值后兩路信號的波形圖
figure(3)
subplot(211);
plot(sig_insert1(11:80));
title(‘插值后兩路信號的波形圖:實部信號‘);
subplot(212);
plot(sig_insert2(11:80));
title(‘插值后兩路信號的波形圖:虛部信號‘);
%===============================
%通過低通濾波器
rolloff?=?0.25;??%?Filter?rolloff
span?=?6;????????%?Filter?span
sps?=?4;?????????%?Samples?per?symbol
[sig_rcos1sig_rcos2]=rise_cos(sig_insert1sig_insert2rolloffspansps);
%===============================
%畫出通過低通濾波器的兩路波形圖
figure(4)
subplot(211);
plot(sig_rcos1(11:80));
title(‘通過低通濾波器的兩路波形圖:實部信號‘);
subplot(212);
plot(sig_rcos2(11:80));
title(‘通過低通濾波器的兩路波形圖:虛部信號‘);
%=================================
%10倍載波調制
[tsig_modulate]=modulate_to_high(sig_rcos1sig_rcos20.252);
%=================================
%畫出傳輸的實信號圖形
figure(5)
plot(t(1:500)sig_modulate(1:500));
title(‘傳輸的實信號圖形‘);
%=================================
%將濾波后的信號加入高斯白噪聲
snr=10;
[x1x2]=generate_noise(sig_rcos1sig_rcos2snr);
sig_noise1=x1.‘;
sig_noise2=x2.‘;
%=================================
%畫出加入高斯白噪聲的波形
figure(6)
subplot(211);
plot(sig_noise1(1:80));
title(‘加入高斯白噪聲的信號波形:實部信號‘);
subplot(212);
plot(sig_noise2(1:80));
title(‘加入高斯白噪聲的信號波形:虛部信號‘);
%==================================
%經過匹配濾波器
[sig_match1sig_match2]=filt_match(sig_noise1sig_noise2rolloffspansps);
%===============================
%畫出通過匹配濾波器的兩路波形圖
figure(7)
subplot(211);
plot(sig_match1(1:80));
title(‘通過匹配濾波器的兩路波形圖:實部信號‘);
subplot(212);
plot(sig_match2(1:80));
title(‘通過匹配濾波器的兩路波形圖:虛部信號‘);
%================================
%采樣
%?sample=8;
[x1x2]=pick_sig(sig_match1sig_match28);
sig_pick1=x1.‘;
sig_pick2=x2.‘;
%================================
%畫出采樣后的星座圖
figure(8)
scatter(sig_pick1sig_pick2‘b*‘);
title(‘采樣后的16QAM星座圖‘);
axis([-5?5?-5?5])
%=================================
%解調
signal=demodulate_sig(sig_pick1sig_pick2);
%================================
%畫出解調后的二進制信號
figure(9)
stem(signal(11:50));
title(‘解調后的二進制信號‘);
%?%計算誤bit率
%?error_b=length(find(signal~=source))/N;


%%?誤碼率計算
%?=======理論誤bit率
snr=1:1:11;
error_theory=(1-(1-(2*(1-1/sqrt(16))*1/2*erfc(1/sqrt(2)*sqrt(3*4*10.^(snr/10)/(16-1))))).^2)/4;
%?=======用理論的誤bit率來決定需要仿真的點數
n=floor(1./error_theory)*1000+100;
n(n<5000)=5000;
%?開始仿真
for?i=1:length(n)
%?首先產生隨機二進制序列
source=randsrc(1n(i)[10;p1

評論

共有 條評論