Affichage de la température dans le terminal
Pour afficher la température, il faut faire un calcul sur les deux octets notés : LSB et MSB. Dans le programme, ils correspondent à :
data[0] pour LSB
data[1] pour MSB
COMPLÉTER le programme avec les instructions suivantes :

Q12 / EFFECTUER les essais et CONCLURE.
Q13 / PROPOSER une méthode pour vérifier que la température influe bien sur l'information numérique lue sur le terminal.
Complément : Interprétation du programme
un OU logique (|
) est effectué entre :
le MSB, décalé (
<<
) de 8 rangs vers la gauchele LSB
Le résultat est stocké dans raw
, entier (codé sur 16 bits) qui représente le nombre de seizième de degré.
Pour obtenir la valeur de la température, il faut donc diviser raw
par 16.0. Cette division (dont le résultat est stocké dans celsius
) nécessite de convertir l'entier raw
en nombre à virgule (float
).
Exemple : 37.5°C
LSB = 0101 1000
MSB = 0000 0010
raw
= 0000 0010 0101 1000
soit 512 + 64 + 16 +8 = 600 seizièmes de degré
600/16,0 =37.5