Utilisation Streaming.h, à la place de
Serial.print("Var 1:");Serial.println(var1);
Serial.print(" Var 2:");Serial.println(var2);
Serial.print(" Var 3:");Serial.println(var3);
on peut écrire
Serial << "Var 1:" << var1) << " Var 2:" << var2 << " Var 3:" << var3 << endl;
La définition de <<in Streaming.htraduit en fait cela en une série d' Serial.print()appels ordinaires . C'est-à-dire qu'il <<s'agit d'un sucre syntaxique, mis en œuvre sans augmenter la taille du code.
Si vous n'avez pas Streaming.hinstallé, procurez-vous Streaming5.zipde arduiniana.org . Décompressez-le dans le répertoire de vos bibliothèques, par exemple, dans ~/sketchbook/libraries. Ajoutez la ligne #include <Streaming.h>dans les esquisses où vous utilisez en <<tant qu'opérateur de flux.
Les spécificateurs de conversion de base _HEX, _DEC, _OCT et _BIN sont fournis, ainsi qu'une fonction _FLOAT (avec le nombre de décimales) et endl. Par exemple, pour imprimer les valeurs de latitude et de longitude dans un formulaire du type "Vos coordonnées sont -23.123, 135.4567", on pourrait écrire:
Serial << "Your coordinates are " << _FLOAT(latitude,3) << ", " << _FLOAT(longitude,4) << endl;
Cela pourrait aussi être écrit comme
Serial << F("Your coordinates are ") << _FLOAT(latitude,3) << ", " << _FLOAT(longitude,4) << endl;
qui conserverait la chaîne la plus longue dans PROGMEM au lieu de la placer dans la RAM.
Remarque, Streaming.h ne construit aucune chaîne en tant que telle; il ne fait que transmettre le texte de ses <<arguments à un flux. Une classe PString chez arduiniana peut créer des chaînes à partir d'entrées de flux, si des chaînes au lieu d'une sortie en flux sont souhaitées ou nécessaires.