效果图
BPSK
clear
SNR_dB=1:1:15;
SNR=10.^(SNR_dB/10);
N=1e6;
M=2;
msg=randi([0,1],1,N);
y=pskmod(msg,M);
for i=1:length(SNR_dB)
N0_dB=10*log10(0.5/SNR(i));%噪声功率变成dB
w=wgn(1,N,N0_dB);
h=raylrnd(1/sqrt(2),1,N);%瑞利信道
y_AWGN=y+w;
y_AWGN_y1=pskdemod(y_AWGN,M);
bit_AWGN=length(find(msg~=y_AWGN_y1));
BPSK_AWGN_sim(i)=bit_AWGN/N;%误码率
y_R=y.*h+w;
y_R_y1=pskdemod(y_R,M);
bit_R=length(find(msg~=y_R_y1));
BPSK_R_sim(i)=bit_R/N;%误码率
end
%QPSK_AWGN_the=0.5*erfc(sqrt(SNR));
%QPSK_R_the=0.5*(1-sqrt((SNR)./(1+SNR)));
%绘图
figure;
semilogy(SNR_dB,BPSK_AWGN_sim,'-ko');hold on;
%semilogy(SNR_dB,QPSK_AWGN_the,'-k');hold on;
semilogy(SNR_dB,BPSK_R_sim,'-b*');hold on
%semilog