clear all;
max_loop=1*10^3;
size=100;
x=[2:9];
for snr=2:9
totalerror=0;
for loop=1:max_loop
signal=randint(1,size);
modsignal=signal*2-1
Es=sum(modsignal.^2)/size;
Pnoise=sqrt(0.5*Es*10.^(-snr/10));
noise=randn(1,size)*Pnoise;
receivedsignal=modsignal+noise;
demosignal=receivedsignal>0;
error=sum(abs(signal-demosignal));
totalerror=totalerror+error;
end
Eb(snr-1)=totalerror/(size*max_loop);
Pro(snr-1)=0.5*erfc(sqrt(10.^(snr/10)));
%fprint('%d',snr);
end
Eb
Pro
figure;
semilogy(x,Pro,'r');
grid on;
hold on;
semilogy(x,Eb,'b');
title('BPSK simulation');
legend('theoritical case','simulation');
xlabel('eb/n0(dB)');
ylabel('Errorprob');