1.完整项目描述和程序获取
>面包多安全交易平台:https://mbd.pub/o/bread/ZJaZl5tq
>如果链接失效,可以直接打开本站店铺搜索相关店铺:
>如果链接失效,程序调试报错或者项目合作也可以加微信或者QQ联系。
2.部分仿真图预览
3.算法概述
最大比合并是分集合并技术中的最优选择,相对于选择合并和等增益合并可以获得最好的性能,性能提升是由Array Gain带来的更高的信噪比,进而带来更好的误码率特性决定的。
4.部分源码
......................................................
SNRs1 = [0:2:18];
figure;
%MRC
mrcber = [];
for snr=SNRs1
snr
signal = round(rand(LENS, 1));
datqpsk = bi2de(reshape(signal, [], 2));
Vqpsk = qammod(datqpsk, 4)/sqrt(2);
channel1 = ch_Rayleigh(zeros(length(Vqpsk), 1), 0);
channel2 = ch_Rayleigh(zeros(length(Vqpsk), 1), 0);
CHqpsk1 = channel1.*Vqpsk;
CHqpsk2 = channel2.*Vqpsk;
Nqpsk1 = ch_Rayleigh(CHqpsk1, snr);
Nqpsk2 = ch_Rayleigh(CHqpsk2, snr);
demod_symb = zeros(length(Vqpsk), 1);
for i=1:length(Vqpsk)
channel = [channel1(i) ; channel2(i)];
received_value = [Nqpsk1(i) ; Nqpsk2(i)];
ls_est_value = [channel'*received_value]/(channel'*channel);
demod_symb(i) = OfdmSym(ls_est_value, @(x)(x));
end
mrcber = [mrcber ; [1-(sum(demod_symb==datqpsk)/length(Vqpsk))]];
end
semilogy(SNRs1, mrcber,'-bs',...
'LineWidth',1,...
'MarkerSize',6,...
'MarkerEdgeColor','k',...
'MarkerFaceColor',[0.9,0.0,0.0]);
hold on;
xlabel('SNR[db]');
ylabel('BER');
LENS = 30000;
SNRs2 = [0:2:16];
...............................................................
semilogy(SNRs2, stcber,'-mo',...
'LineWidth',1,...
'MarkerSize',6,...
'MarkerEdgeColor','k',...
'MarkerFaceColor',[0.5,0.9,0.0]);
..........................................
semilogy(SNRs3, bfber,'-b^',...
'LineWidth',1,...
'MarkerSize',6,...
'MarkerEdgeColor','k',...
'MarkerFaceColor',[0.2,0.9,0.5]);
.................................................................................
semilogy(SNRs4, smber,'-r>',...
'LineWidth',1,...
'MarkerSize',6,...
'MarkerEdgeColor','k',...
'MarkerFaceColor',[0.9,0.9,0.0]);
grid on
legend('MRC 1X2', 'STC 2X2', 'BF 2X2', 'SM 2X2');
A475