3 / Lecture de la température

Ayant choisi le mode 1SHOT, le cycle de lecture se déroulera en 3 phases :

  1. déclencher la conversion

  2. attendre la fin de la conversion

  3. lire la température

Phase 1 : déclencher la conversion

Le chronogramme ci_dessous décrit l'envoie d'une commande, pour notre programme, il se décompose en quatre parties :

  1. Start condition + envoi de l'adresse I2C du composant en mode écriture

  2. envoi du code de la commande

  3. Stop condition

Donner les 3 lignes de codes nécessaires pour pour déclencher la conversion.

Phase 2 : attendre la fin de la conversion

Ici la fonction delay() peu suffire --> delay(600) ; //par exemple

On peut aussi savoir quand la conversion est terminée en lisant le registre de configuration.

La fin de la conversion est indiquée par la mise à 1 du bit DONE du registre de configuration.

Le code ci_contre lit en boucle le registre de configuration jusqu'à la mise à 1 de DONE.

Ci-dessous : le chronogramme décrivant l'envoi d'une commande puis la lecture de l'octet renvoyé .

Phase 3 : lire la température

Rechercher le nom de la commande qui permet de lire la température puis donner (en hexadécimal) le code à envoyer pour exécuter cette commande : (page 10-11)

Le chronogramme ci_dessous décrit l'envoie d'une commande, pour notre programme, il se décompose en 6 parties :

  1. Start condition + envoi de l'adresse I2C du composant en mode écriture

  2. envoi du code de la commande

  3. Stop condition

  4. Start condition + envoi de l'adresse I2C du composant en mode lecture (pour 2 octets)

  5. lecture du premier octet

  6. lecture du dernier octet et Stop condition.

Donner les 6 lignes de codes nécessaires pour lire la température ( les valeurs lues seront stockées dans des variables de type int nommées 'temp' (pour la première) et 'temp_d'.