%  Simulação do desempenho da transmissao binária no canal AWGN

clear all;
i=1;
    for ebno=0:1:10
        sigma = sqrt(10^(-ebno/10)/2);           
        amostras = 2500000;
        ynoisy = normrnd(-1,sigma,1,amostras);   %Consideramos a transmissão de bits '0' com energia unitária (símbolos -1) 
        x_est=ynoisy>0;                          %Decisor no receptor               
        Num_Erros = sum(x_est)                   %Contagem de erros de bit
        ber_teorica(i) = 0.5*erfc(sqrt(10^(ebno/10)));
        ber(i) = Num_Erros/amostras;
        snr(i) = ebno;
        i=i+1;
    end
semilogy(snr,ber(1,:),'-r');
hold on;
semilogy(snr,ber_teorica(1,:),'-b');
grid on; 
ylabel('BER'); 
xlabel('Eb/No (dB)'); 
title('Desempenho da Modulação BPSK no Canal AWGN');
legend('Simulada','Teórica');