Main

Référence : Langage Arduino : [ Mini | Standard | Etendue | Maxi ] Librairies : [ Vue d'ensemble | Synthèse ] Infos : [ Comparaison | Changements ]
LibrairieOneWire

uint8_t search(uint8_t *newAddr)


Description

  • Recherche le composant "One Wire" suivant présent sur le bus "One Wire". La technologie "One Wire" permet en effet de connecter plusieurs capteurs One Wire sur une seule broche numérique de l'Arduino, la communication entre chaque composant se faisant par un système d'adressage de chaque composant.
  • La fonction reçoit l'adresse du tableau de 8 octets destiné à stocker l'adresse du composant trouvé.
  • Si un composant est trouvé, le tableau addrArray est rempli avec l'adresse du composant trouvé et la valeur VRAI est renvoyée. Si aucun nouveau composant est détecté, FAUX est renvoyé.
  • Le "rang" du composant détecté est mémorisé entre 2 appels de la fonction ce qui assure la détection du composant suivant. Pour réinitialiser la recherche au début, il faut appeler la fonction reset_search.

Si l'on utilise un seul capteur, on peut se dispenser de l'appel de la fonction search et utiliser la fonction skip().

Syntaxe

variable=capteur.search(addrArray); // cherche le capteur One Wire suivant présent sur le bus

Paramètres

  • capteur : un objet OneWire
  • addrArray : l'adresse d'un tableau de 8 octets. A savoir : pour un tableau appelé Array[8], l'identifiant Array utilisé seul correspond à l'adresse du début du tableau en mémoire (l'identifiant Array est en fait un pointeur...). Voir également Tableaux
  • variable : une variable entière

Exemple


//---- Teste la présence d'un capteur ---

if ( !capteur.search(addr)) { // si la fonction search renvoie un résultat différent de VRAI, càd FAUX...
// la fonction search renvoie la valeur 1 si un élément 1-wire est trouvé. Stocke son adresse dans le tableau addr
// addr correspond à l'adresse de début du tableau...
    Serial.print("Pas d'autre capteur détecté.\n"); // affiche message
    return; // sort de la fonction en cours
  }
 

Commentaires utilisateurs

Aucun commentaire


Page d'accueil de la référence Arduino en français

Corrections, suggestions et nouvelle documentation peuvent être postées sur le Forum Arduino ou à l'adresse suivante : support_at_mon-club-elec_point_fr

Le texte original de la référence Arduino est sous licence Creative Commons Attribution-ShareAlike 3.0 . Les exemples de code dans la référence sont dans le domaine public.

La présente traduction française commentée a été réalisée par Xavier HINAULT (2010-2012) (www.mon-club-elec.fr) et est sous licence Creative Commons Attribution-ShareAlike 3.0.

Cette page est une création originale de X. HINAULT