Bonjour à tous,
Un petit problème de mise en oeuvre de dtostrf(), à savoir :
//*************************************************************************************
//Directives
//*************************************************************************************
#include <Wire.h> //Utilisation de la bibliothèque I2C
#include <LCD03.h> //Utilisation de la bibliothèque LCD03
//*************************************************************************************
//Déclarations des variables et constantes
//*************************************************************************************
LCD03 lcd; //Afficheur utilisé LCD03
float pi = 3.141592654; //Précision supérieure float arduino
float nb1 = 12.25e+15; //Notation avec puissance de 10
char valTexte[21] = ""; //Variable texte
void setup()
{
lcd.Cls(); //Efface écran
delay(1000); //Attente de confort
lcd.superPrint(1,1,"Bonjour"); //Affiche bonjour sur la première ligne
dtostrf(pi,14,8,valTexte); //Convertit pi en texte
//Profondeur sur 14 emplacements avec 8 chiffres après le .
lcd.superPrint(1,2,valTexte); //Affiche pi sur la 2 ème ligne
dtostrf(nb1,3,7,valTexte); //Convertit pi en texte
//Profondeur mini de 14 emplacements avec 7 chiffre après le.
lcd.superPrint(1,3,valTexte); //Affiche nb1 sur la 3ème ligne
}
void loop()
{
}
Pour l'affichage de pi, il n'y a pas de problème et tout ce passe comme programmé, par contre nb1 est affiché sans la notation scientifique !
Résultat:
Bonjour
3.14159270
12250000000000000.00
00000
Et je souhaite un affichage du style :
Bonjour
3.14159270
12.25E+15
Quelle commande faut-il utiliser pour que l'affichage se fasse en notation scientifique ?
Merci
Icare