La carte CMPS03 de Devantech est une boussole électronique : deux capteurs Philips KMZ51 orientés à 90° l’un de l’autre mesurent une résistance variant selon le champ magnétique terrestre, et un micro-contrôleur PIC 18F transmet les informations selon le mode souhaité (PWM ou I2C).
C’est la plus ancienne des boussoles électroniques dans le monde amateur (première utilisation au club en 2002) et depuis des solutions plus robustes (correction d’inclinaison sont apparues) ou moins chères (modèles ZZC210 (...)
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
-
CMPS03 : une boussole I2C simple
22 décembre 2011, par Julien H. -
Communication entre deux cartes
25 novembre 2009, par Julien H.Pour les besoins d’un nouveau projet, je dois faire communiquer deux cartes entre elles.
Il y a plusieurs raisons qui peuvent vous amener à faire ce choix : pas assez de puissance ou de place dans votre carte principale pas assez d’entrées/sorties (surtout le port série par exemple) communication à distance
Dans mon cas, il s’agit de la troisième possibilité mais le problème reste le même.
Connexion matérielle
Pour faire communiquer deux circuits électronique, il faut les relier avec un moyen (...) -
Tutoriel complet sur I2C
12 août 2012, par Julien H.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 utiliser un (...) -
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 quelques (...) -
Adapter les niveaux électriques
7 juillet 2012, par Julien H.Si vous avez réussi à fournir une alimentation à chacune des cartes de votre robot, bravo ! Mais peut-être certaines cartes doivent-elles communiquer ensemble ? Et là, il faut faire attention à ne pas provoquer d’incident avec un risque de griller les composants les plus sensibles.
Le problème
Le cas le plus fréquent est la connexion d’un capteur fonctionnant en 5 volts sur une carte programmable fonctionnant en 3.3 volts. Nous ne referons pas l’histoire mais vous pouvez consulter cet article de (...) -
Capteurs supplémentaires pour NXT / I2C
26 janvier 2008, par Julien H.Tour d’horizon des capteurs disponibles pour la brique NXT.
-
Test d’une Rainbowduino
3 avril 2010, par Julien H.La Rainbowduino est une carte électronique capable de piloter des dispositifs lumineux : leds de forte intensité, matrices RGB, etc..
Voici une prise en main rapide pour la découvrir.
Matériel nécessaire
Pour profiter rapidement du potentiel de cette carte, il est préférable d’avoir : une Rainbowduino une matrice RGB 8x8 de 60mm une alimentation 9v à forte intensité (500 mA) une carte USB-série TTL de type "FTDI breakout"
Cette dernière peut être remplacée par n’importe quelle autre carte capable (...) -
Modules I2C
14 juin 2006, par Julien H.Objectif
La liaison I2C est pratique pour connecter plusieurs composants sur seulement 2 entrées/sorties d’un microcontrôleur. Nous avons eu une première expérience de l’I2C en 2006 avec la communication entre cartes CNP pour la Coupe et depuis nous développons notre connaissance grâce à l’explosion de l’offre.
Le but de ce projet est de développer différents capteurs, actionneurs, afficheurs, etc. communiquant en I2C.
Télémètre à ultrason
Les SRF04 et SRF08, célèbres capteurs ultrasons utilisés en (...) -
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 Squeeze basée (...) -
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 choisir la (...)