Comment fonctionne l'I2C ?

Qu'est ce que l'I2C et comment ça fonctionne ?

Définition

L'I2C (Inter-Integrated Circuit) est un protocole de communication série utilisé pour connecter des composants électroniques sur une carte de circuit imprimé (PCB) ou dans des systèmes embarqués. Il permet la communication entre différents composants tels que des capteurs, des actionneurs, des microcontrôleurs et d'autres périphériques, en utilisant seulement deux fils : un pour la transmission des données (SDA - Serial Data) et un pour la synchronisation (SCL - Serial Clock).
L'I2C offre une communication bidirectionnelle et peut fonctionner à des vitesses variées, allant de quelques kilohertz à plusieurs mégahertz, en fonction des exigences du système.

Comment fonctionne l'I2C ?

 

1) Maître et Esclaves

Dans un système utilisant le bus I2C, il y a généralement un périphérique maître qui initie et contrôle les communications, ainsi que des périphériques esclaves qui répondent aux commandes du maître.

2) Lignes de Communication

SDA (Serial Data Line) : C'est la ligne utilisée pour la transmission de données. Tant le maître que les esclaves peuvent envoyer et recevoir des données sur cette ligne.
SCL (Serial Clock Line) : C'est la ligne utilisée pour synchroniser la transmission des données entre les périphériques. Le signal sur cette ligne est généré par le maître et contrôle le rythme de transmission des données.

3) Protocole de Communication

Initiation de la Communication : Le maître commence une communication en envoyant un signal de démarrage (Start) sur le bus I2C.

4) Transmission de l'Adresse

Le maître envoie ensuite l'adresse du périphérique esclave avec lequel il souhaite communiquer. Chaque périphérique esclave possède une adresse unique qui lui permet d'être identifié.

5) Lecture/Ecriture de Données

Après avoir sélectionné un esclave, le maître peut soit lire des données du périphérique esclave, soit écrire des données vers celui-ci.

6) Acknowledge (ACK) ou Not Acknowledge (NACK)

Après chaque octet de données, le récepteur (maître ou esclave) envoie un signal d'acquittement (ACK) ou de non-acquittement (NACK) pour indiquer la réussite ou l'échec de la réception.

7) Arrêt de la Communication

Le maître termine une communication en envoyant un signal d'arrêt (Stop) sur le bus I2C.

8) Timing

Le bus I2C utilise des signaux de synchronisation sur la ligne SCL pour coordonner la transmission des données. La vitesse de transmission est contrôlée par la fréquence du signal SCL.

09) Capacité Multi-Maitre

Le bus I2C prend en charge plusieurs maîtres, mais un seul maître peut contrôler le bus à la fois. Un protocole d'arbitrage est utilisé pour résoudre les conflits si plusieurs maîtres tentent d'accéder au bus simultanément.

Conclusion

Le bus I2C est un système de communication série simple et robuste qui permet la connexion de multiples périphériques sur un seul bus, en utilisant seulement deux fils de communication.

Abonnez-vous

On vous aide sur la veille des computers on module.

Recevez les actus une fois par mois.

Gratuitement.

Retour en haut