3 / Lecture de la température
Ayant choisi le mode 1SHOT, le cycle de lecture se déroulera en 3 phases :
déclencher la conversion
attendre la fin de la conversion
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 :
Start condition + envoi de l'adresse I2C du composant en mode écriture
envoi du code de la commande
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 :
Start condition + envoi de l'adresse I2C du composant en mode écriture
envoi du code de la commande
Stop condition
Start condition + envoi de l'adresse I2C du composant en mode lecture (pour 2 octets)
lecture du premier octet
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'.