Nous utilisons le protocole de communication par bus série I2C depuis longtemps : beaucoup de micro-contrôleurs et même de microprocesseurs utilisent cette technologie.
Il était temps de faire un article complet, en se concentrant sur la détection du périphérique, la lecture et l’écriture par la liaison I2C plutôt que sur le composant en lui-même. Consultez les mots-clés en colonne de droite pour avoir accès à une liste d’articles traitant du sujet.
Pour qu’il soit complet, nous allons (…)
Accueil > Mots-clés > Communications > I2C
I2C
Le bus I2C (Inter Integrated Circuit) a été développé au début des années 80 par Philips. On le trouvait initialement dans des équipements domestiques (magnétoscope) pour faire communiquer les différents éléments à l’intérieur du même boitier.
Il est devenu ensuite un bus de communication très répandu, y compris pour relier des équipements différents (plusieurs circuits électroniques) à des distances plus grandes (grâce à des répéteurs).
Nous l’utilisons car il est présent sur beaucoup de microcontrôleurs et est très facile à prendre en main.
Articles
-
Tutoriel complet sur I2C
12 août 2012, par Julien H. -
Contrôle avec un Wii Nunchuck
6 mai 2009, par Julien H.On s’intéresse ici à un dispositif de contrôle original. On va se faire plaisir en utilisant le Nunchuck, une manette de la console de jeu Nintendo Wii.
Il ne s’agit pas de la manette principale Wiimote (décrite dans cet article) mais d’un périphérique qui s’y connecte via un câble. En tant que tel, il est donc beaucoup plus simple, mais au vu de toutes les innovations dont il est doté, c’est déjà un bond en avant dans les dispositifs de télé-commande classique, qui se limitaient jusqu’ici (…) -
Ecran CLCDxxx sur I2C avec Arduino
22 octobre 2011, par Julien H.Lextronic propose des écrans à cristaux liquides LCD économiques déclinés en plusieurs tailles (CLCD162 ou CLCD204) et plusieurs éclairages (vert, bleu et même RGB). Contrairement à d’autres écrans compatibles avec la bibliothèque native Liquid Crystal d’Arduino, nous n’avons pas trouvé de code source compatible avec les commandes I2C de cette gamme. C’est désormais chose faite !
Mise à jour : la bibliothèque est désormais disponible pour le logiciel Arduino 1.0, car les fonctions I2C ont (…) -
Echanges maître/esclaves en I2C
17 mars 2011, par Julien H.Voici un article qui décrit dans plusieurs langages les échanges qu’il faut mettre en œuvre entre deux dispositifs équivalents (deux micro-contrôleurs par exemple) pour une liaison I2C.
Il ne s’agit pas de piloter un périphérique I2C mais de programmer à la fois le maitre et l’esclave, afin d’expliquer les différentes étapes. Pour compléter cet exercice, on utilisera plusieurs langages et si possible plusieurs cibles.
Les principes
Pour établir une communication sur un bus I2C, il faut (…) -
Capteur de température I2C
2 janvier 2009, par Julien H.Cet article présente une mesure de température simple avec le capteur LM75 permettant de se rappeler l’adressage sur bus I2C et faire un peu de manipulation d’octets.
-
Leds RGB sur bus I2C : BlinkM
24 janvier 2010, par Julien H.Présentation d’un module I2C qui permet de piloter une led multicolore avec 24 bits de couleurs différentes, avec deux modes possibles, RGB (rouge / vert / bleu) ou HSV (teinte, saturation, brillance). Découvrez les relations entre couleurs RGB et HSV avec cette belle application en ligne : synthAxis.
Etude du circuit
Pour faire clignoter une led en utilisant le protocole I2C, on va utiliser une BlinkM, un petit circuit qui tient dans le creux de la main et qu’on a déjà utilisé pour (…) -
Commande à distance
25 novembre 2009, par Julien H.Nous avons déjà vu précédemment :
– comment réaliser une interface de contrôle en ligne de commande
– la théorie des communications entre deux cartes.
Dans cet article, nous passons à la pratique en réalisant une télécommande "nunchuck" pour servomoteurs. Le matériel
On dispose donc :
– de deux cartes Arduino
– de deux shields XBee
– d’un shield Easy pour connecter les servomoteurs
– d’un connecteur I2C pour Wii Nunchuck
– de quelques servomoteurs
– d’une alimentation se -
Projet Fleurance
21 février 2014, par Damien P., Frédéric R.L’UART et le protocole I2C entre Arduino et Raspberry Pi perturbe l’utilisation d’un shield RFID sur l’Arduino
-
La distribution Occidentalis Raspbian
7 août 2012, par Julien H.L’usage principal de la Raspberry Pi au sein du club est le contrôle ou l’interface avec des robots. Donc savoir qu’une distribution a été conçue par des professionnels de l’électronique (AdaFruit) et supporte tous les protocoles utilisés par des composants usuels en robotique est forcément une bonne nouvelle.
L’installation est très simple mais nécessite 5 Go d’espace disque sur votre ordinateur et une carte mémoire SD de 4 Go.
Site officiel de l’Occidentalis
Contrairement à la Debian (…) -
Évitement d’obstacles et de chutes de R2-D2
10 août 2012, par Julien H.Lors de la conception du robot droïde, la priorité a été mise sur la sécurité. Il s’agit d’un robot mobile autonome de plus d’un mètre de haut, pesant plus qu’un enfant de même taille. Il est donc primordial qu’il puisse s’arrêter de lui même en cas de problème : collision, perte d’équilibre, voire chute.
La solution ne peut pas simplement être un bouton d’arrêt d’urgence : nous n’aurons pas forcément accès au robot. Cela ne peut pas non plus être une télécommande : la personne qui la (…)
PoBot
