Protocole série i2c


Cette page est destinée à apporter quelques informations sur l'utilisation du bus de communication I2C ; on propose également une interface PC et des logiciels "maison" de programmation I2C.


BUS I2C :

Le bus I2C ( Inter Integrated Circuit ) a été dévellopé au début des années 80 par Philips semiconductors pour permettre de relier facilement des sytèmes électroniques. Prévu initialement pour des équipements domestiques, il est devenu un moyen privilègié de configuration de composants électroniques complexes (encodeur vidéo bt819, par exemple).

Le bus I2C permet de faire communiquer entre eux des composants électroniques très divers grace à seulement trois fils : Un signal de donnée ( SDA ), un signal d'horloge ( SCL ), et un signal de référence électrique ( Masse ).

Les interfaces électriques sont de type "collecteur ouvert" avec résistance de Pull-Up à 5 V ; cela permet de réduire les confits entre équipements et permet la présence de plusieurs maitres sur le bus.

Le protocle utilisé sur le bus I2C est très bien décrit par ces pages :
Bus I2C
Bus I2C


Hardware :

Voici une petite interface permettant de relier un PC à un bus I2C via le port parallèle:

Schéma :

La réalisation de l'interface est très simple, il suffit d'utiliser des inverseurs "Collecteur Ouvert" et des résistances de Pull-Up ; sur le schéma ci-dessous, il a été placé des résistances en série sur les lignes pour éviter tout problème électrique en cas de conflit (sur le port et sur le bus).

Il a été aussi placé des diodes permettant d'autoalimenter l'interface par l'intermédiaire du port parallèle ; cela permet aussi de pouvoir tester des petits composants (EEPROM série, par exemple) sans besoin d'une alimentation extérieure.


Réalisation :

Le circuit imprimé est très facile à réaliser, la figure suivanter en présente son implantation.


Vous pouvez trouver tous les détails de réalisation et d'utilisation de cette carte dans le fichier suivant : i2c_pc.pdf

N'oubliez pas d'aller voir la pages des logiciels "maison"


Retour vers les autres docs