clear;
clc;
close all;
N = 100000 ;
sinal = randi([0 1],1,N);
for ii = 1:N
if sinal(ii) == 0
SK(ii) = -1;
else
SK(ii) = 1;
end
end
snr_dB = 0:1:10;
snr = zeros(0,[length(snr_dB)]);
BER = zeros(0,[length(snr_dB)]);
RK = zeros(0,[length(SK)]);
Rs = 100e3;
T = 1/Rs;
T=1; % Bit duration
Eb=T/2;
erro = 0;
n = 1/sqrt(2)*(randn(1,N));
for i = 1:1:length(snr_dB)
for ii = 1:1:N
RK(ii) = SK(ii) + 10^(-snr_dB(i)/20)*n(ii);
if RK(ii) > 0
SsK(ii) = 1;
else
SsK(ii) = 0;
end
if SsK(ii) ~= sinal(ii)
erro = erro + 1;
end
end
BER(i) = erro/N;
erro = 0;
end
snr = 10.^( snr_dB/10 );
vteorico = 0.5*erfc(sqrt(snr));
figure(1)
plot(sinal);
axis([0 500 -2 2]);
title('SINAL DE ENTRADA');
figure(2)
plot(RK);
axis([0 500 -2 2]);
title('SINAL COM RUIDO');
figure(3)
plot(SsK);
axis([0 500 -2 2]);
title('SINAL REFITICADO / SAIDA');