BUS%20I2C - PowerPoint PPT Presentation

About This Presentation
Title:

BUS%20I2C

Description:

L'ensemble constituera 1 TRAME, comportant 4 OCTETS, soit 16 BITS auxquels s'ajoutent divers signaux, l 'ensemble circulant sur les 2 FILS ... – PowerPoint PPT presentation

Number of Views:479
Avg rating:3.0/5.0
Slides: 38
Provided by: al60109
Category:
Tags: 20i2c | bus | constituera

less

Transcript and Presenter's Notes

Title: BUS%20I2C


1
BUS I2C

2
Principe
  • Le bus I2C ou Inter-IC-Communication a été conçu
    pour réaliser la liaison entre les circuits
    intégrés d'une même platine. II se charge de la
    communication entre les périphériques qui est
    assurée d'ordinaire par un bus parallèle.
  • En développant ce bus, Philips avait pour
    objectif de relier de manière économique des
    appareils électroniques destinés au grand public
    (appareils TV et radio, systèmes audio et radio,
    postes téléphoniques, systèmes électrique
    automobile, appareils électroménager).

3
Principe
  • Pour ce type d'appareils, la vitesse de transfert
    de données entre périphériques n'est pas très
    importante (100 kbits / seconde max). De plus,
    l'utilisation d'un bus parallèle pour assurer la
    liaison entre chaque composant demanderait une
    surface sur la platine relativement importante.
  • Comme le bus I2C ne comporte que deux fils, le
    nombre de liaisons entre les composants est
    réduit la surface utilisée et par conséquent
    les coûts de fabrication sont ainsi moins
    importants. Pour Philips, le bus I2C est devenu
    un standard pour les liaisons lentes sur une même
    platine.

4
Principe
  • Les informations sont échangées au moyen de deux
    lignes bidirectionnelles
  • SDA (Serial DAta)
  • et SCL (Serial CLock).
  • Chaque circuit intégré possède une adresse unique
    qui le distingue des autres.
  • Chaque composant peut émettre ou recevoir des
    informations suivant sa fonction.
  • Le bus est piloté par un circuit appelé maître
    qui prend l'initiative du transfert des
    informations, décide du sens de ce transfert et
    gère la ligne SCL. Les autres composants sont
    alors désignés par le terme esclave.

5
Principe
  • Un bus peut prendre une configuration
    multi-maître si plusieurs composants peuvent être
    à tour de rôle maître ou esclave. A tout moment,
    un seul maître actif doit être présent sur le
    bus.
  • Une procédure darbitrage est prévue pour éviter
    la perte ou la détérioration des informations
    lorsque plusieurs maîtres essaient de prendre la
    commande du bus simultanément. Mais sur la
    plupart des circuits, seul un seul composant
    réalise la fonction de maître étant donné la
    complexité de cette fonction.

6
Analyse du BUS I2C 4 niveauxLe BUS I2C
fonctionnecomme un petit réseaulocal
7
Niveau 1 CABLE
4.TRAME
3.OCTET
2.BIT
1.CABLE
8
CABLE
2 fils masse
9
CABLE
Tous les composants sont câblés en parallèle
Tous les composants sont câblés en parallèle
10
CABLE
Les niveaux logiques hauts sont réalisés par des
résistances de pull-up 
11
CABLE
Les niveaux logiques bas sont réalisés par des
transistors MOS en drain ouvert  ( collecteur
ouvert)
12
CABLE
Exemple de câblage Un microcontroleur PIC
associé à une EEPROM
13
Exemple de Fonctionnement
Exemple Le PIC veut lire le contenu dune case
dans la Mémoire
Mémoire
14
Exemple Le PIC veut lire le contenu dune case
dans la Mémoire
Le PIC doit - prendre le contrôle du BUS, -
envoyer ladresse de loctet quil veut lire, -
analyser les réactions de la Mémoire - récupérer
loctet envoyé par la Mémoire - libérer le BUS
15
Exemple Le PIC veut lire le contenu dune case
dans la Mémoire
Le PIC doit - prendre le contrôle du BUS, -
envoyer ladresse de loctet quil veut lire, -
analyser les réactions de la Mémoire - récupérer
loctet envoyé par la Mémoire - libérer le BUS
Lensemble constituera 1 TRAME, comportant 4
OCTETS, soit 16 BITS auxquels sajoutent divers
signaux, l ensemble circulant sur les 2 FILS
16
Niveau 2 BITS
17
BIT
BIT  0 
18
BIT
BIT  0 
BIT  1 
19
BIT
BIT  0 
BIT  1 
1 BIT 1 NIVEAU de SDA 1 impulsion de SCL
20
BIT
REGLESDA ne peut changer de niveau que
lorsque SCL est à létat BAS
21
BIT
Deux exceptions START et STOP
22
BIT
La transmission d'un octet
Après avoir imposé la condition de départ, le
maître applique sur SDA le bit de poids fort
D7. Il valide ensuite la donnée en appliquant
pendant un instant un niveau '1' sur la ligne
SCL. Lorsque SCL revient à '0', il recommence
l'opération jusqu'à ce que l'octet complet soit
transmis. Il envoie alors un bit ACK à '1' tout
en scrutant l'état réel de SDA. L'esclave doit
alors imposer un niveau '0' pour signaler au
maître que la transmission s'est effectuée
correctement. Les sorties de chacun étant à
collecteurs ouverts, le maître voie le '0' et
peut alors passer à la suite.
  • Exemple de transmission réussie.
  • Dans cet exemple
  • SCL Horloge imposée par le maître.
  • SDAM Niveaux de SDA imposés par le maître.
  • SDAE Niveaux de SDA imposés par l'esclave.
  • SDAR Niveaux de SDA réels résultants.

23
Résumé Fonctionnement standard
Conditions de validité des données sur le bus I2C.
24
Résumé Fonctionnement standard
  • Certaines combinaisons particulières de niveaux
    et de fronts des deux lignes déterminent la
    condition de départ ou d'arrêt de la transmission
    des données.
  • Condition de départ un front descendant sur SDA
    quand SCL est à létat haut.
  • Condition darrêt un front montant sur SDA
    quand SCL est à létat haut.

Remarque les conditions de départ et darrêt
sont toujours générées par le maître du bus.
25
NIVEAU 4 La TRAME
4.TRAME
3.OCTET
2.BIT
1.CABLE
26
TRAME
Le composant qui a un moment donné prendle
contrôle de SCL par un START est appelé
MAITRELes aures fonctionnent alors en ESCLAVES
. jusquau prochain STOP
27
TRAME
?
?
Chaque ESCLAVE est identifié par une ADRESSELe
MAITRE indique lESCLAVE à qui il sadresse
Seul lESCLAVE concerné réagit.
28
TRAME
  • Ne pas confondre MAITRE /ESCLAVEavec LECTURE /
    ECRITURE !
  • Le MAITRE peut LIRE ou ECRIRE

29
TRAME
1 TRAME
START
STOP
30
TRAME
s
TRAME Plusieurs OCTETS
La TRAME
Octet 1
Octet 2
Octet 3
Octet 4
31
TRAME
s
TRAME Plusieurs OCTETS qui doivent se terminer
par un Accusé de réception ACKnowledge
La TRAME
Octet 1
Octet 2
Octet 3
Octet 4
Le second START qui précède le 3ème octet est un
cas particulier
32
TRAME
Détail des informations successives
Ad10 -gt Ad0 représente ladresse physique du
récepteur ATTENTION Cas particulier des
mémoires !!!!       L'espace adressable d'un
circuit de mémoire étant sensiblement plus grand
que la plupart des autres types de circuits,
l'adresse d'une information y est codée sur deux
octets ou plus. Ici Ad10 -gt Ad8 (A2 -gt A0)
représente toujours l'adresse du circuit, et les
suivants l'adresse interne de la mémoire.
33
TRAME
Détail des informations successives
ATTENTION!!!      La génération dun Acknoledge
à la place dun NOACK permet denchaîner une
autre lecture. Larrêt effectif seffectue avec
le bit de stop.
34
TRAME
  • Exemple de lecture d'une donnée

.
  • Dans cet exemple
  • SCL Horloge imposée par le maître.
  • SDAM Niveaux de SDA imposés par le maître.
  • SDAE Niveaux de SDA imposés par l'esclave.
  • SDAR Niveaux de SDA réels résultants.

35
TRAME
La même TRAME peut permettre la lecture de
plusieurs OCTETS successifs dans la Mémoire
36
TRAME
37
Généralisation
  • Nous avons vu içi la gestion dune EEPROM grâce
    au bus I2C
  • La simplicité matérielle du bus I2C et ses
    performances ont donné naissance a un grand
    nombre de périphériques I2C
  • Cest devenu un standard dans le domaine de la
    liaison des composants sur une carte imprimée.
  • Attention gestion des conflits existe!!!
Write a Comment
User Comments (0)
About PowerShow.com