Référence du Langage Arduino : Mini | Standard | Etendue | Librairies | Comparaison
Affiche les données sur le port série.
Affiche les données sous le port série sous forme lisible pour les humains (texte ASCII). Cette instruction peut prendre plusieurs formes.
Par exemple :
Serial.print(78); // affiche "78"
Serial.print(1.23456); // affiche "1.23"
Serial.print(byte(78)); // affiche "N" (dont la valeur ASCII est 78)
Serial.print('N'); // affiche "N"
Serial.print("Hello world."); // affiche "Hello world."
Un second paramètre optionnel (format) spécifie :
Par exemple :
Serial.print(78, BYTE); // affiche "N" Serial.print(78, BIN) ; // affiche "1001110" Serial.print(78, OCT); // affiche "116" Serial.print(78, DEC); // affiche "78" Serial.print(78, HEX); // affiche "4E" Serial.println(1.23456, 0); // affiche "1" Serial.println(1.23456, 2); // affiche "1.23" Serial.println(1.23456, 4); // affiche "1.2346"
Serial.print(val) Serial.print(val, format)
Aucune
Cette commande peut prendre de nombreuses formes :
Serial.print(b) avec aucun format spécifié, affiche b en tant que nombre decimal sous la forme d'une chaîne de caractère ASCII. Par exemple,
int b = 79; Serial.print(b);
affiche la chaîne de caractère "79".
Serial.print(b, DEC) affiche b en tant que nombre décimal sous la forme d'une chaine de caractères ASCII. Par exemple :
int b = 79; Serial.print(b, DEC);
affiche la chaîne de caractères "79".
Serial.print(b, HEX) affiche b en tant que nombre hexadécimal sous la forme d'une chaîne de caractère ASCII. Par exemple :
int b = 79; Serial.print(b, HEX);
affiche la chaîne de caractères "4F".
Serial.print(b, OCT) affiche b en tant que nombre octal sous la forme d'une chaîne de caractère ASCII. Par exemple :
int b = 79; Serial.print(b, OCT);
affiche la chaîne de caractères "117".
Serial.print(b, BIN) affiche b en tant que nombre binairesous la forme d'une chaîne de caractère ASCII. Par exemple :
int b = 79; Serial.print(b, BIN);
affiche la chaîne de caractères "1001111".
Serial.print(b, BYTE) affiche b en tant que simple octet, ce qui est interprété comme un caractère ASCII. Par exemple :
int b = 79; Serial.print(b, BYTE);
renvoie le caractère "O", ce caractère ASCII étant représenté par la valeur 79. Pour plus d'informations, voir le Code ASCII.
Serial.print(str) si str est une chaîne ou un tableau de variables char, affiche str sous la forme d'une chaîne de caractère ASCII. Par exemple :
Serial.print("Hello World!");
affiche la chaîne de caractère "Hello World!".
/*
Utilise une boucle FOR pour afficher un nombre dans des formats variés
*/
int x = 0; // variable
void setup() {
Serial.begin(9600); // ouvre le port série à 9600 bauds
}
void loop() {
// affiche une entête de présentation en colonnes
Serial.print("SANS FORMAT"); // affiche le texte
Serial.print("\t"); // affiche un tab
Serial.print("DEC");
Serial.print("\t");
Serial.print("HEX");
Serial.print("\t");
Serial.print("OCT");
Serial.print("\t");
Serial.print("BIN");
Serial.print("\t");
Serial.println("BYTE"); // affiche le texte suivi d'un saut de ligne
for(x=0; x< 64; x++){ // affiche une partie de la table ASCII
// affichage sous différents formats
Serial.print(x); // affiche un decimal en chaîne ASCII- comme "DEC"
Serial.print("\t"); // affiche un tab
Serial.print(x, DEC); // affiche un décimal en chaîne ASCII
Serial.print("\t"); // affiche un tab
Serial.print(x, HEX); // affiche un hexadecimal en chaîne ASCII
Serial.print("\t"); // affiche un tab
Serial.print(x, OCT); // affiche un octal en chaîne ASCII
Serial.print("\t"); // affiche un tab
Serial.print(x, BIN); // affiche un binaire en chaîne ASCII
Serial.print("\t"); // affiche un tab
Serial.println(x, BYTE); // affiche un octet,
// et ajoute le retour du chariot avec "println"
delay(200); // pause de 200 millisecondes
}
Serial.println(""); // affiche un autre retour de chariot
}
Attention si vous faites des opérations mathématiques dans les parenthèses, par exemple :
Serial.print(x-2, DEC);
Le type de donnée unsigned et le type de donnée byte donneront des résultats incorrects et laisser à penser qu'ils sont de type signé (tel que le type de donnée char).
La fonction Serial.print met les données dans le buffer série. Il faut attendre qu'un caractère soit émis avant d'envoyer le caractère suivant. Sinon la fonction recommence avant d'envoyer le dernier caractère.
Aucun commentaire
Page d'accueil de la référence Arduino en français
Corrections, suggestions et nouvelle documentation peuvent être postées sur le Forum Arduino.
Le texte original de la référence Arduino est sous licence Creative Commons Attribution-ShareAlike 3.0 . Les exemples de code dans la référence sont dans le domaine public.
La présente traduction française commentée a été réalisée par Xavier HINAULT (2010) (www.mon-club-elec.fr) et est sous licence Creative Commons Attribution-ShareAlike 3.0.