Manchester Matlab

STICISECES Messages postés 8 Statut Membre -  
 anis -
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

  1. Char Snipeur Messages postés 10112 Date d'inscription   Statut Contributeur Dernière intervention   1 331
     
    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
    0
    1. STICISECES Messages postés 8 Statut Membre
       
      votre code est incorrect,mon code affiche une courbe presque retardé
      0
    2. anis
       
      try this : axis([1 length(t)-1 -4 4]) pour eviter le decalage
      0