Manchester Matlab

Bonjour,

je programmer un code matlab qui permet de coder la séquence de bit en codage Manchester mais l'affichage n'est pas correct,en sait que en Manchester le '0' présente un front montant et le '1' présente un front descendant

le code

close all;
clear all;
a=[0 1 0 1 1 0 0 1 1 0 1]
t=0:0.5:10 ;
l=length(t);
for i=1:l/2
if a(i)==1

x(2*i-1)= 1;
x(2*i)=-1;

else

x(2*i)= -1;
x(2*i-1)= 1;

end;

end;
figure;
stairs(x);
axis([0 length(t)-1 -4 4]);
grid on;
title('Manchester');

1 réponse

  • Votes
  • Date
  • Date décroissante
  1. Contributeur
    d'après ce que tu dis, j'aurai fait :
    x(1)=0;
    for i=2:l
        x(i)=x(i-1)-a(i-1)*2+1;
    end
    1. votre code est incorrect,mon code affiche une courbe presque retardé
    2. try this : axis([1 length(t)-1 -4 4]) pour eviter le decalage