Arduino : Observer I2C

  • Version
  • Télécharger 1
  • Taille du fichier 0.00 KB
  • Date de création
  • Télécharger

Contrairement à un scanner I²C classique (basé sur la bibliothèque Wire), ce lecteur fonctionne en écoute seule :

  • Il ne génère aucun START,
  • Il n’envoie aucune adresse,
  • Il ne répond jamais sur le bus,
  • Il se contente d’observer les signaux SDA et SCL.

Il permet de voir ce qui se passe réellement sur le bus, sans intervenir, et sans risquer d’introduire des comportements indésirables.

Le programme détecte :

  • les conditions START / STOP,
  • le premier octet de chaque trame I²C,
  • l’adresse I²C (7 bits) du périphérique,
  • le bit R/W (lecture ou écriture).

Les informations sont ensuite affichées sur le moniteur série.

Ce lecteur est particulièrement utile pour :

  • Identifier l’adresse d’un module déjà intégré,
  • Comprendre le comportement d’un driver I²C,
  • Vérifier qu’un périphérique est réellement sollicité,
  • Détecter des conflits ou parasites sur le bus.

Le lecteur n’est pas un analyseur logique. À très haute vitesse I²C, certaines trames peuvent être perdues. Les données complètes ne sont pas décodées (seulement l’adresse + R/W).