Analyse de la trame I2C : forme des signaux SDA et SCL
On a vu que le bus I2C utilise deux lignes très importantes : SDA et SCL.
Il est maintenant nécessaire de connaître comment utiliser SDA et SCL pour :
Commencer une transmission
écrire des données (c'est le maître qui écrit)
Lire des données (c'est le maître qui demande des données à un esclave)
Finir une transmission
Forme des signaux pour SDA et SCL:
Start : Condition de départ
Écriture ou lecture d'un 0 ou 1 logique
Stop : Condition d'arrêt
Q4/ - A partir des signaux SDA et SCL vus ci-dessus, déterminer :
l'état repos (pas de transmission de données)
une condition de start
l'émission d'un 1 logique
l'émission d'un 0 logique
une condition de stop
Il existe un autre principe très important dans la transmission I2C :
L'esclave doit toujours mettre à 0 logique le bit d’acquittement soit ACK .
Si l'esclave ne peut pas acquitter la réception d'un octet alors le bit d'acquittement restera à 1 soit NACK
Q5/ -Étudier la trame ci-dessus et donner le nombre de bits nécessaires pour écrire un octet sur le bus I2C.
Exemple d'une transmission entre un maître et un esclave :
Soit le chronogramme ci-dessus.
Q6/ -Que représente l'octet 0x48 ?
Donner le nombre d'octets de données, envoyé par le maître.
Soit le chronogramme ci-dessus.
Q7/ -Que représente l'octet 0x48 ?
Quel est le niveau logique du bit d’acquittement ?
Quelle peut être la raison d'un NACK ?
Justifier votre réponse.