Modifications

Sauter à la navigation Sauter à la recherche
Ligne 33 : Ligne 33 :  
=== Envoi d'une valeur décimale (float) ===
 
=== Envoi d'une valeur décimale (float) ===
   −
Si votre valeur décimale est contenue dans un type '''float''', il faudra faire un transtypage du pointeur (casting).
+
Si votre valeur décimale est contenue dans un type '''float''', il faudra faire un transtypage du pointeur (casting) avant l'envoi sur le bus I2C.
    
Le code d'envoi I2C pour un type '''double''' ressemble à ceci
 
Le code d'envoi I2C pour un type '''double''' ressemble à ceci
Ligne 46 : Ligne 46 :  
valeurFloat = 312.777;
 
valeurFloat = 312.777;
 
Wire_SendDouble( (double*)&valeurFloat );</nowiki>
 
Wire_SendDouble( (double*)&valeurFloat );</nowiki>
 +
 +
{{ambox|text=Sur un ATMEGA, les types double et float sont rigoureusement identiques (4 bytes).<br />
 +
Cette opération de transtypage ne sera pas valide sur un DUE ou un double fait 4 bytes et un float 8 bytes!}}
    
=== Code source ===
 
=== Code source ===
29 917

modifications

Menu de navigation