?? test2.asv
字號:
%% 測試 ofdm,畫測試曲線
%%
%% 本測試為 有無均衡對系統(tǒng)性能的影響
%%
close all;clear all; clc; tic ; %計(jì)時(shí)開始
global CP_len;
global nSubC;
global ifft_len;
global bitPerSymbol;
global symbolPerCarrier;
global s_len;
global fade; %信道衰弱
%% 測試參數(shù)
%SNR = 40; % dB
CP_len = 16;
nSubC = 48;
ifft_len = 256;
bitPerSymbol = 2;
symbolPerCarrier = 50;
fade = [0, 0, 0, 0.4, 0.3]; % 信道參數(shù),下標(biāo)為延時(shí)點(diǎn)數(shù),值為衰減系數(shù)
% 開始測試
s_len = nSubC*bitPerSymbol*symbolPerCarrier;
SNR = 0:2:20;
ber1 = zeros(1,length(SNR));
ber2 = zeros(1,length(SNR));
for kk = 1:length(SNR)
max = floor((2^kk)/10)+10;
fprintf('仿真信噪比: %d\n', SNR(kk));
fprintf('仿真點(diǎn)數(shù): %d\n', max*bitPerSymbol*symbolPerCarrier*nSubC);
CP_len = 16 ;
ber = 0;
for m = 1:max
% 生成用于測試的隨機(jī)比特
s_in = floor( rand(1, s_len )*2 );
sch = ofdm_mod_neq(s_in);
sch = channel(sch,SNR(kk));
s_out = ofdm_demod_neq(sch);
%計(jì)算誤比特率
err_count = sum(abs(s_in-s_out));
ber = ber + err_count/s_len;
end
ber1(kk) = ber/max;
fprintf('無均衡 BER = %f\n',ber1(kk));
CP_len = 16;
ber = 0;
for m = 1:max
% 生成用于測試的隨機(jī)比特
s_in = floor( rand(1, s_len )*2 );
sch = ofdm_mod_eq(s_in);
sch = channel(sch,SNR(kk));
s_out = ofdm_demod_eq(sch);
%計(jì)算誤比特率
err_count = sum(abs(s_in-s_out));
ber = ber + err_count/s_len;
end
ber2(kk) = ber/max ;
fprintf('均衡和CP BER = %f\n\n',ber2(kk));
end
figure(2);
semilogy(SNR,ber1,'o-');
hold on;
semilogy(SNR,ber2,'r*-');
xlabel('SNR in dB');
ylabel('Bit Error Rate');
legend('without equilizer','with equlizer');
grid;
toc
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -