I2C-Scanner
I2C-Scanner
I2C Scanner est un croquis/Sketch Arduino écrit par Nick Gammon et disponible dans ce billet.
SI vous avez un périphérique I2C mais que vous n'êtes pas certain de son adresse sur le bus ALORS vous pouvez exécuter le croquis suivant.
Le croquis essaye toutes les adresses possible du bus I2C (de 1 à 119) et s'il reçoit une réponse, il affiche l'adresse.
Cela fonctionne avec la plupart des périphériques I2C mais sachez qu'il existe quand même quelques périphérique I2C "non standard".
Croquis Arduino
// I2C Scanner
// Written by Nick Gammon
// Date: 20th April 2011
#include <Wire.h>
void setup() {
Serial.begin (115200);
// Leonardo: Attendre la connexion du port serie
while (!Serial)
{
}
Serial.println ();
Serial.println ("I2C scanner. Scanning ...");
byte count = 0;
Wire.begin();
for (byte i = 8; i < 120; i++)
{
Wire.beginTransmission (i);
if (Wire.endTransmission () == 0)
{
Serial.print ("Found address: ");
Serial.print (i, DEC);
Serial.print (" (0x");
Serial.print (i, HEX);
Serial.println (")");
count++;
delay (1); // peut être pas necessaire?
} // fin d une bonne reponse
} // Fin de la boucle
Serial.println ("Done.");
// Indique le nombre de peripherique trouve
Serial.print ("Found ");
Serial.print (count, DEC);
Serial.println (" device(s).");
} // fin de setup()
void loop() {}
Ce qui produit un résultat comme celui-ci
I2C scanner. Scanning ...
Found address: 42 (0x2A)
Done.
Found 1 device(s).
Réalisé par Meurisse D. pour MCHobby.be.
Toute référence, mention ou extrait de cette traduction doit être explicitement accompagné du texte suivant : « Traduction par MCHobby (www.MCHobby.be) - Vente de kit et composants » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.
L'utilisation commercial de la traduction (texte) et/ou réalisation, même partielle, pourrait être soumis à redevance. Dans tous les cas de figures, vous devez également obtenir l'accord du(des) détenteur initial des droits. Celui de MC Hobby s'arrêtant au travail de traduction proprement dit.