Protocole I2C

Transcription

Protocole I2C
Protocole I2C
Principe de fonctionnement
• Le protocole i2c également appelé TWI (Two Wire Interface) est un principe de dialogue
pour composants programmables.
• Il fonctionne sur une liaison série et utilise un câble pour les données, un second pour la
synchronisation, ainsi que deux pour l’alimentation.
• Ces 4 câbles forment le BUS I2C.
• Le BUS I2C nous permet de connecter de multiples esclaves à un maître mais également
de faire communiquer plusieurs maîtres entre eux.
Avantages
Inconvénients
• Utilisation de 2 lignes seulement pour
transmettre les informations.
• Les données peuvent circuler dans les
deux sens sur le bus.
• Le bus est multi-maîtres.
• Chaque équipement relié au bus dispose
d’une adresse codée sur 7 bits, soit une
possibilité de connecter 128 équipements.
• Les composants programmables récents
comprennent des fonctions permettant de
gérer le protocole I2C.
• Le principe de dialogue série est
complexe et difficile à s’approprier.
• Le bus limite le débit et ne permet pas
des applications dans lesquelles la vitesse
de transmission est importante. (100Kbits
maximum, 400Kbits sur des équipements
récents)
• En plus d’être limité par les adresses, le
nombre d’équipement maximum est
limité par la charge capacitive du bus
maximale: 400pF.
Capteur sur I2C
Nunchuk de Wii
• Le projet initial consistait à trouver
un équipement compatible I2C et
de le faire communiquer avec
l’ATMEGA 16 du Kit STK500 de l’IUT.
• L’équipement utilisé est un
capteur de température LM75
technologie
CMOS
et
communiquant par protocole I2C.
• Le travail a consisté à router une
carte autour de ce capteur et
programmer le microcontrôleur afin
qu’ils communiquent ensemble.
•Une fois le projet terminé, nous nous sommes
aperçus que le Nunchuk de la célèbre console Wii
communiquait avec sa Wiimote par liaison I2C.
Ci-contre, la connectique du
Nunchuk comportant les
deux fils de données
l’alimentation et la masse.
LM75
• La suite du projet consiste à faire communiquer
le Nunchuk avec le Kit STK500
•Le Nunchuk contient un accéléromètre 3 axes.
• Il est capable de renvoyer les données de celui-ci
ainsi que celles du joystick et des 2 boutons.