1.完整项目描述和程序获取
>面包多安全交易平台:https://mbd.pub/o/bread/ZZ2UlZpx
>如果链接失效,可以直接打开本站店铺搜索相关店铺:
>如果链接失效,程序调试报错或者项目合作也可以加微信或者QQ联系。
2.部分仿真图预览
3.算法概述
在无线通信系统中,接收端收到的信号由于各种原因可能会存在载波频率偏差(Frequency Offset, FO)。在32-QAM系统中,频偏会导致星座图旋转和幅度失真,严重影响解调性能。因此,准确快速地估计并补偿频偏至关重要。
4.部分源码
..........................................................................
for i = 1:length(SNR)
i
for j = 1:10
[i,j]
%产生信号
signal = round(rand(1,LEN));
signal_modulated1 = Modulator(signal,K);
signal_receive1 = awgn(signal_modulated1,SNR(i),'measured');
signal_receive2 = signal_receive1.*exp(sqrt(-1)*2*pi*OFFSET*t );
offset2 = func_phase_est_dnn(signal_receive2);%基于深度学习的相位估计
RR = signal_receive2.*exp(-sqrt(-1)*2*pi*mean2(offset2)*t);
%加相位补偿
output = DeModulator(RR,K);
msgr = ones(size(output));
idx = find(output<=0);
msgr(idx) = 0;
len = length(find(signal==msgr));
errrate(i,j)= 1-len/length(signal);
%没有相位补偿
output2 = DeModulator(signal_receive2,K);
msgr2 = ones(size(output2));
idx2 = find(output2<=0);
msgr2(idx2) = 0;
len2 = length(find(signal==msgr2));
errrate2(i,j)= 1-len2/length(signal);
end
end
figure;
semilogy(SNR,mean(errrate2,2),'b-o');
hold on
semilogy(SNR,mean(errrate,2),'r-s');
grid on
xlabel('SNR');
ylabel('误码率');
legend('32QAM无频偏补偿误码率','32QAM频偏补偿误码率');
0X_047m
---