Dernière mise à jour :
30/04/2017
Présentation
Cet espion/moniteur a été conçu pour
visualiser les données transitant sur un bus I2C ou SMBus, tout en
restant discret (non intrusif et non perturbateur). Les octets transmis
sur le bus surveillé sont "transformés" en données série/RS232/USB pour
analyse sur un PC.
Schéma
Le circuit fait appel à un PIC 18F25K22, lequel possède nativement des
modules MSSP et UART.
Schéma volontairement
embrouillé (demande pro)
Les octets véhiculés sur le bus I2C ou SMBus sont récupérés et
retransmis sur une sortie
UART/RS232. Les données passent ensuite dans un convertisseur RS232/USB
traditionnel. Le circuit est conçu pour ne pas perturber la liaison
analysée.
Entrée "discrète"
Le moniteur se place en parallèle sur un bus
I2C ou SMBus
existant et "écoute" les changements d'état sur les lignes de données
SDA et d'horloge SCL. L'étage d'entrée (SDA_In et SCL_In) a
été
étudié pour ne pas perturber le circuit sous analyse. Pour le reste,
rien de sorcier, les octets sont traités au fil de l'eau,
stockés
temporairement dans un buffer circulaire avant d'être "traduits" pour
envoi sur liaison série à la vitesse de 115200 bauds.
Sélection de l'adresse "esclave"
Le
logiciel du PIC traite les données circulant sur le bus
analysé,
uniquement si l'adresse spécifiée par les micro-interrupteurs (DSW1)
correspond à l'adresse émise par le maître du bus ayant entamé le
dialogue. La valeur d'adresse spécifiée correspond aux opérations
d'écriture, l'adresse correspondant aux opérations de lecture en est
automatiquement déduite.
I2C ou SMBus
Le choix s'effectue avec le cavalier / micro-interrupteur câblé sur la
ligne RB1.
- RB1 = 0 : liaison I2C
- RB1 = 1 : liaison SMBus
Logiciel du PIC
Pro - Non disponible sur ce site.
Historique
30/04/2017
- Première mise à disposition.