Fonction arduino dtoStrf -Tour de vos flotteurs en cordes

Fonction arduino dtoStrf -Tour de vos flotteurs en cordes
Pendant la programmation des tableaux Arduino, nous devons traiter différentes techniques de programmation pour manipuler les données en conséquence. Pour gérer les données, nous avons besoin de plusieurs fonctions qui nous aident à écrire du code pour notre projet. L'une des fonctions largement utilisées est dtoStrf () qui convertit double et flotte les valeurs en chaîne avec une précision définie.

Fonction arduino dtoStrf ()

La fonction arduino dtoStrf () convertit les valeurs doubles et à virgule flottante en une chaîne. En utilisant cette fonction, une double valeur est passée et convertie en une valeur de représentation ASCII qui sera stockée à l'intérieur de la chaîne. L'appelant est responsable de fournir un stockage suffisant à l'intérieur de la chaîne.

dtoStrf () La fonction aide lors de l'affichage d'un texte sur un écran de matrice LCD à l'aide d'Arduino. Une fois les données converties en une chaîne, elle agira comme un texte qui peut être affiché partout, il peut être un écran OLED ou tout autre module d'affichage.

Voyons la syntaxe qu'il suit.

Syntaxe

Voici la syntaxe de la fonction dtoStrf ():

dtoStrf (floatValue, MinstringWidth, numafterDecimal, charbuf_to_store_string);

Paramètres

Cette fonction prend quatre paramètres pour convertir Double en une valeur ASCII stockée à l'intérieur de la chaîne:

1. FloatValue: C'est le premier paramètre qui prend la valeur de flottante que nous voulons convertir en chaîne.

2. Minstringwidth: Il s'agit du deuxième paramètre qui définit la largeur de champ minimum de la chaîne de sortie. Si nous définissons la largeur de chaîne minimale inférieure à celle des valeurs de conversion à virgule flottante, les chiffres supplémentaires s'afficheront toujours et pour compter la décimale et le signe négatif est également inclus comme des espaces. D'un autre côté, si la largeur définie pour la chaîne est plus que de conversion de valeur, les valeurs supplémentaires seront remplies des espaces vides.

3. numafterdecimal: Le troisième paramètre est la précision qui décrit le nombre de chiffres après un point décimal. Il arrête les chiffres supplémentaires au nombre spécifié en précision après point décimal.

4. Charbuffer: L'argument final est l'endroit où la chaîne sera stockée. C'est une sorte de tableau char ayant une taille définie. Tout en considérant le panneau, assurez-vous de considérer:

  • Doit être suffisamment grand pour stocker la valeur.
  • Considérant la taille doit se souvenir de l'espace pour décimal "." et éventuel négatif "-" signe.
  • 1 pour le caractère terminant nul "\ 0".

Voici le type de données que ces quatre paramètres prennent:

  • Le premier paramètre est une variable qui est de type double.
  • Le deuxième paramètre est de type carboniser qui spécifie le largeur de la chaîne de sortie.
  • Le troisième paramètre est de type carboniser qui spécifie le nombre de chiffres Après la décimale.
  • Le quatrième paramètre est une variable de type carboniser qui Magasins de valeurs converties.

Retour des données

Un pointeur vers la chaîne convertie est renvoyée en utilisant dtoStrf () fonction.

Exemple de code

double source = 789.127; / * La source en double variable est initialisée * /
destination char [8]; / * Taille du tableau de destination défini * /
void setup()
En série.commencer (9600); / * La communication série commence * /
dtoStrf (source, 5,2, destination); / * Double converti en chaîne * /
En série.println (destination); / * La chaîne de destination est imprimée * /

VOID LOOP ()

Ici, dans le code ci-dessus, une variable source à double point est définie avec une valeur «789.127 ” Ensuite, un tableau de tampon de destination est initialisé avec une taille de «8». Dans la partie de configuration à l'aide de la source de fonction dtoStrf (), la valeur à double point sera convertie en une chaîne ayant une largeur minimale de 5 et une précision décimale de 2 chiffres après décimal. À la fin du code, nous avons imprimé le résultat sur le moniteur en série.

Sortir

Le terminal de sortie nous montre une chaîne qui est complétée à 2 décimales.

Conclusion

Pour convertir la double valeur en une chaîne, une fonction de programmation Arduino AVR est utilisée connu sous le nom dtoStrf (). Cette fonction prend quatre paramètres: une source qui est une valeur à virgule flottante qui sera convertie en une chaîne de destination ayant défini une valeur de largeur minimale et pour la précision, un paramètre est défini qui s'arrête à des valeurs décimales spécifiques. Cet article aidera à comprendre tout cela d'une meilleure manière.