arrays have incompatible sizes for this operation help me PLZ
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
clear;close all;clc
counter=1;
min_nl=-10;
step_nl=1;
max_nl=0;
noise_levelsdB=min_nl:step_nl:max_nl;
for k=min_nl:step_nl:max_nl
k
data_size = 10000;
data =randi([0 1], data_size, 1); data=data';
bp=0.000001;
expand=100;
baseband=zeros(1,length(data)*expand);
for n=1:1:length(data)
if data(n)==1
se=ones(expand,1);
else
data(n)=0;
se=zeros(expand,1);
end
baseband((n-1)*expand+1:n*expand)=se;
end
end
A=sqrt(2); %Amplitude carrier
br=1/bp;%bit rate 1 mbps
f=br*11; % carrier freq 2Mz
t_bit=bp/expand:bp/expand:bp;
ss=length(t_bit);
transmitterCarrier=A*sin(2*pi*f*t_bit);
%show modulated signal%
basebandNRZ=(2*baseband-1);
modulated_signal=transmitterCarrier.*basebandNRZ;
sigma2=1/10^(k/20);
noise=sigma2*randn(1, length(modulated_signal));
noisy_modulated_signal=modulated_signal+noise;
demodulated_data=[];
carrier_receiver=sin(2*pi*f*t_bit);
for n=ss:ss:length(noisy_modulated_signal)
demodulated_signal=carrier_receiver.*noisy_modulated_signal((n-(ss-1)):n);
z=trapz(t_bit,demodulated_signal);
zz=round((2*z/bp));
if(zz>0)
a=1;
else
a=0;
end
demodulated_data=[demodulated_data a];
end
close all
semilogy(noise_levelsdB,BER)
xlabel('Eb/No(dB)')
ylabel('BER BPSK')
grid on
title('(Aaesha Mahra A, Mahra M)')
hold on
error in line 35
0 comentarios
Respuestas (1)
VBBV
el 18 de Nov. de 2021
clear;close all;clc
counter=1;
min_nl=-10;
step_nl=1;
max_nl=0;
noise_levelsdB=min_nl:step_nl:max_nl;
for k=min_nl:step_nl:max_nl
k;
data_size = 10000;
data =randi([0 1], data_size, 1); data=data';
bp=0.000001;
expand=100;
baseband=zeros(1,length(data)*expand);
for n=1:1:length(data)
if data(n)==1
se=ones(expand,1);
else
data(n)=0;
se=zeros(expand,1);
end
baseband((n-1)*expand+1:n*expand)=se;
end
end
A=sqrt(2); %Amplitude carrier
br=1/bp;%bit rate 1 mbps
f=br*11; % carrier freq 2Mz
t_bit=logspace(bp/expand,bp,length(br));
ss=length(t_bit);
transmitterCarrier=A*sin(2*pi*f*t_bit);
%show modulated signal%
basebandNRZ=(2*baseband-1);
modulated_signal=transmitterCarrier.*basebandNRZ
sigma2=1/10^(k/20);
noise=sigma2*randn(1, length(modulated_signal));
noisy_modulated_signal=modulated_signal+noise;
demodulated_data=[];
carrier_receiver=sin(2*pi*f*t_bit);
for n=ss:100*ss:length(noisy_modulated_signal)
demodulated_signal=carrier_receiver.*noisy_modulated_signal((n-(ss-1)):n);
z=t_bit*trapz(demodulated_signal);
zz=round((2*z/bp));
if(zz>0)
a=1;
else
a=0;
end
demodulated_data=[demodulated_data a];
end
you can use normalize the dimensions of two vectors transmitterCarrier, basebandNRZ before multiplying them together
Ver también
Categorías
Más información sobre BPSK en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!