Hi
I have to generate a specific type of Pulse position modulation for which i am generating 100 random bits and have to check every two adjacent bits and generate a waveform accordingly.
For example
lets say the generated bits are 11001001
first I need to check the first two bits which are 11 and then the next two bits which are 00 and the following two bits are 10 and the last to bits 01 I have written the following code to check the bits
clear all;
N=10000;
Nbit=100;
t=0:.001:6.4;
% Generate Binary signal
wb=round(rand(1,Nbit));
% wb=wb';
y=size(wb);
i=1:Nbit
j=i+1;
if wb(i) ==0 & wb(j)==0
y(i)=0;
elseif wb(i) ==0 & wb(j)==1
y(i)=1;
elseif wb(i) ==1 & wb(j)==0
y(i)=0;
else
y(i)=0;
end
the output always gives 0.
Would really appreciate if someone could help me with this
Thank you

 Akzeptierte Antwort

Walter Roberson
Walter Roberson am 9 Sep. 2015

0 Stimmen

Change the
i=1:Nbit
to
for i=1:Nbit
and add
end
after your the last "end" of your "if" chain.

1 Kommentar

Mila C
Mila C am 9 Sep. 2015
Bearbeitet: Walter Roberson am 9 Sep. 2015
Hi, thank you so much for the help.
I changed the code according to it and modified abit :)
clear all;
N=10000;
Nbit=100;
t=0:.001:6.4;
% Generate Binary signal
wb=round(rand(1,Nbit));
wb=wb';
y=size(wb);
for k=1:Nbit;
i=1:2:Nbit
j=2:2:Nbit;
if wb(i) ==0 & wb(j)==0
y(i)=0;
elseif wb(i) ==0 & wb(j)==1
y(i)=1;
elseif wb(i) ==1 & wb(j)==0
y(i)=0;
else
y(i)=1;
end
end

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Software Development finden Sie in Hilfe-Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by