Go Down

Topic: comment fabrique un Word (16 bits) (Read 1 time) previous topic - next topic


GD1992

oui! b@tto c'est un peu ça .

Mais, ici j'ai deux cartes avec chacun 2 PCF et qui sont reliées à l'aide des fils à d'autres cartes avec aussi chacune 2 PCF

fdufnews

Quote
Mais, ici j'ai deux cartes avec chacun 2 PCF et qui sont reliées à l'aide des fils à d'autres cartes avec aussi chacune 2 PCF

L'histoire se répète....
J'ai le souvenir d'une histoire identique l'année dernière. Cela doit être enfouie quelque part sur le forum.

GD1992

je crois que j'ai essayé de lire ce topic là .
Mais, je n'ai pas non plus compris le code qui a été poster pour aider le membre Mathy.

fdufnews


je crois que j'ai essayé de lire ce topic là .
Mais, je n'ai pas non plus compris le code qui a été poster pour aider le membre Mathy.

tu m'étonnes, elle était pas mal à la ramasse et cela partait dans tous les sens j'ai fini par laisser tomber.

GD1992

Moi j'espère seulement qu'elle s'est en sortie .

Car, c'est vraiment difficile la programmation =( quand t' on ne comprend pas et heureusement que ce forum existe

En tout cas , c'est mon avis !  :D

fdufnews

Ton algorithme à l'air de tenir la route. Juste une remarque
Quote
if(lecture!=0xFFFF) {
        // on à detecté une ou plusieurs entrées à 0, elles sont donc connectées à la sortie i
        liste_raccords[compte_conection].frompin=i;  // on sauvegarde la pin sortie dans la liste
        decompose(lecture,compte_conection); // on regarde et sauvegarde la ou les pin d'entrées connectées     
        compte_conection++; // et une connexion détectée de plus
       }

Dans cette partie si tu relies une valeur différente de FFFF tu considères que la liaison est bonne et tu mémorise le numéro de la broche. C'est aller un peu vite il faudrait quand même vérifier que c'est le bon fil car s'il y a un court-circuit entre 2 fils ou un croisement tu ne le signaleras pas.

fred133084

l'arduino est en 8bits.
si tu utilises un word qui est en 16 bits tu vas perdres un temps monstrueux.
si tu as besoin de performance il te faut utiliser un array of byte pour avoir ainsi un maximum de perf.
et ensuite ecrire les fonctions qui vont bien afin de définir les bits aux bons endroits dans ton array.

skywodd


l'arduino est en 8bits.
si tu utilises un word qui est en 16 bits tu vas perdres un temps monstrueux.
si tu as besoin de performance il te faut utiliser un array of byte pour avoir ainsi un maximum de perf.
et ensuite ecrire les fonctions qui vont bien afin de définir les bits aux bons endroits dans ton array.

Deux cycles d'horloge contre un c'est pas non plus une perte "monstrueuse de temps" ;)
Tu perdras plus de temps avec ton appel à fonction, l'adressage indirecte du tableau et l'accès à une cellule du dit tableau.
Des news, des tutos et plein de bonnes choses sur http://skyduino.wordpress.com !

fred133084

#24
Mar 09, 2013, 06:22 pm Last Edit: Mar 09, 2013, 06:23 pm by fred133084 Reason: 1
j'avais du temps a tuer :

Benchmark comparatif entre différents data type en mode inline ou appel de fonction du code de la page 1 de ce post :

condition  > 10000 itérations

mode : inline

  data type : byte
  file size : 4 062 octets
  delay : 5060

  data type : int
  file size : 3 990 octets
  delay : 5692

  data type : word
  file size : 4 004 octets
  delay : 5692



mode : function call

  data type : byte
  file size : 3 994 octets
  delay : 5060

  data type : int
  file size : 4 004 octets
  delay : 5692

  data type : word
  file size : 4 004 octets
  delay : 5692

Go Up