I2C Micro Cours
Dissertation : I2C Micro Cours. Rechercher de 53 000+ Dissertation Gratuites et MémoiresÁ transit des donnees dans les deux sens en mˆ me temps. e ´ ´ Horloge et Data melanges ou pas ´ Á 1 mˆ me fil pour les donnees et l’horloge, ou 2 fils, ou pas d’hologe. e ´ Signal differentiel ou pas ´ ´ Á une donnee utilise 2 fils de valeurs opposees ou 1 seul valant 0 ou 1. ` ´ Signal point-a-point ou busse Á 1 seul pilote par fil ou plusieurs pilotes par fil. RS232 I2C full duplex, pas d’horloge et 2 data (3 fils), ´ ` signal non differentiel, signal point a point. ´ ´ half duplex, horloge et data separe (3 fils), ´ ´ signal non differentiel, signal busse.
w
w
w
Cours MicroContrˆ leur - Protocoles rs232 et I2C - 5 - UPMC/LMD/LI326 o
ˆ ´ RS232 Caracteristiques principalesˆ Ig Ig
w w w w w w w
´ Protocole des annees 60. ` ` ´ Protocole tres simple et tres diffuse. ´ Faible debit 100 kbauds. ´ ´ Pas d’horloge: l’emetteur et le recepteur s’entendent avant. ´ Protocole de demarrage optionnel : CTS, RTS, ... ` Liaison point-a-point, pas de notion d’adresse. ´ ` ´ Trame de donnees de 5 a 8 bits avec parite.
0 1 2 3 4 5 6 7
Start bit
Data : de 5 à 8 bits
Parité Stop 1, 1.5 ou 2 bits
Cours MicroContrˆ leur - Protocoles rs232 et I2C - 6 - UPMC/LMD/LI326 o
ˆ RS232 cablage null-modemˆ Ig Ig
w w w w
´ RS232 definit deux types d’interlocuteurs : terminal et modem. ´ Un cablage null-modem definit la communication entre 2 terminals. La liaison minimale utilise 3 fils : TX, RX et GND ´ ` La valeur 0 = Niveau electrique de +8 a +12V ´ ` La valeur 1 = Niveau electrique de -8 a -12V
TX RX GND
3 2 5 numéro des broches DB9
3 2 5
TX RX GND
Cours MicroContrˆ leur - Protocoles rs232 et I2C - 7 - UPMC/LMD/LI326 o
ˆ ´ ´ RS232 synchronisation emetteur/recepteurˆ Ig Ig
w
´ ` ´ ´ L’emetteur transmet a une frequence standardisee (1200, 2400, 4800,...) ´ ´ ´ Le recepteur connait cette frequence, et surechantillonne pour ´ ´ ´ ` reperer le start : deux echantillons a 0. ´ ´ Le recepteur a une petite marge d’erreur possible sur la frequence.
w
w
horloge d’émission trame rs232 0 1 2 3 4 5 6 7
horloge de réception
Cours MicroContrˆ leur - Protocoles rs232 et I2C - 8 - UPMC/LMD/LI326 o
ˆ ´ RS232 schema interneˆ Ig Ig
´ Emetteur ´ Recepteur ´ ´ ´ ` la trame est generee par un automate qui vide un registre a ´ decalage. ` la trame est lue par un automate qui remplie un registre a ´ decalage.
horloge d’emission start stop 76543210 TX calcul parité RX
horloge de réception start
0 1 2 3 4 5 6 7
détecteur stop 01234567 calcul parité ok/ko
Cours MicroContrˆ leur - Protocoles rs232 et I2C - 9 - UPMC/LMD/LI326 o
ˆ caracteristiques principalesˆ ´ I2C Ig Ig
w w w w
I2C = IIC = Inter Integrated Circuit ´ ´ Protocole defini dans les annees 80 par Philips. ` ´ Protocole simple et tres diffuse. ` ´ Jusqu’a 128 abonnes (version de base) communiquent sur 3 fils : ´ ´ SCL (horloge) , SDA (data) , GND (tension de reference). ´ Abonnes Plug and Play acceptant le Hot Plug. ´ Bus multi-maitres, tout abonne peut devenir maˆ du bus. ıtre ´ ´ Arbitrage decentralise. ´ ` debit de 100 Kbauds a 3.4 Mbauds. ´ ´ Adaptation du debit en fonction de l’abonne. ´ Permet la communication entre differentes technologies (5V et 3.3V).
w w w w w w
Cours MicroContrˆ leur - Protocoles rs232 et I2C - 10 - UPMC/LMD/LI326 o
ˆ glossaireˆ I2C Ig Ig
´ ´ ´ abonne. . . . .tout element connecte sur le bus. ´ ´ ´ emetteur . . . tout abonne qui envoie des donnees sur SDA. ´ ´ ´ recepteur . . tout abonne qui recoit des donnees de SDA. ¸ ´ ´ ´ maˆ . . . . . . tout abonne qui demarre et termine un echange. ıtre
Le maˆ place l’horloge sur SCL. ıtre
´ ´ esclave . . . . . tout abonne adresse par un maˆ ıtre.
` ´ Un esclave a la possibilite d’arrˆ ter l’horloge du maitre. e
´ ´ ` adresse. . . . .numero attribue a un esclave.
Sur le bus tous les esclaves ont une adresse unique.
´ echange . . . diablogue entre un maitre et un esclave.
´ Il commence par une adresse emise par le maitre, suivie d’une ou ´ ´ peut chainer plusieurs echanges d’affile. ´ ´ plusieurs donnees emises par le maitre ou l’esclave. Un maitre
´ ` ´ arbitrage . . . resolution du conflit d’un acces simultanne par 2 maitres.
Cours MicroContrˆ leur - Protocoles rs232 et I2C - 11 - UPMC/LMD/LI326 o
ˆ cablageˆ I2C Ig Ig
w w
` Les lignes SCL et SDA sont a VDD si personne ne parle. ´ Pour mettre 1 sur SCL ou SDA, un abonne programme le port en ´ ´ ` entree, la resitance Rp se charge de tirer la ligne a 1 ´ ´ Pour mettre 0 sur SCL ou SDA, un abonne doit ecrire un 0, ` ` c.-a-d. relier la ligne a la masse. ´ Il ne peut jamais y avoir de conflit electrique (court-circuit VDD-GND).
VDD Rp SDA SCL GND
¡ ¡ ¡ ¡ ¡ ¡
w
w
Rp
abonné n°1
abonné n°2
abonné n°x
Cours MicroContrˆ leur - Protocoles rs232 et I2C - 12 - UPMC/LMD/LI326 o
ˆ caracteristiques electriquesˆ ´ ´ I2C Ig Ig
VDD Rp SDA SCL GND
¨ © ¨ © ¨ ©
Rp
SCL out SCL in
¦ ¦ § ¦ § ¦ § § ¦ §
SCL out
0 ouvert 1 fermé
¦ ¢ £ ¢ £ §
SCL in
¢ £
0 ouvert 1 fermé
¢ £
SDA out SDA in
¤ ¥
SDA out
0 ouvert 1 fermé
¤ ¥
SDA in
¡
0 ouvert 1 fermé
¡
abonné n°1
abonné n°2
Cours MicroContrˆ leur - Protocoles rs232 et I2C - 13 - UPMC/LMD/LI326 o
¤
¥
¤
¥
¡
¡
ˆ etats des lines SDA et SCLˆ I2C ´ Ig Ig
bit data bit data bit data
CAS NORMAL SI SDA stable pendant tout le pulse de SCL
SDA stable SCL SCL
supérieur à pulse SCL à 1
SCL
CHANGEMENT DE MAITRES SI SCL reste à 1 plus d’un pulse haut de SCL
START FREE time
SDA
SDA
SDA
¡ ¡ ¡ ¡ ¡ ¡
¡
...