Serial.print() vs Serial.println() dans Arduino

Serial Print Vs Serial Println Dans Arduino



L'Arduino est une carte de microcontrôleur populaire qui est couramment utilisée pour les projets de bricolage, la robotique et les appareils IoT. L'une des caractéristiques essentielles d'Arduino est d'échanger des données avec des ordinateurs via une communication série.

Serial.print() et Serial.println() sont deux des commandes les plus fréquemment utilisées pour la communication série dans Arduino. Cet article couvrira les différences entre Serial.print() et Serial.println() et comment ils affectent votre projet Arduino.

Table des matières







Qu'est-ce que la communication série

Avant de plonger dans les différences entre Serial.print() et Serial.println() , comprenons d'abord ce que Communication série est. Communication série est le processus de transmission et de réception de données. L'utilisation de cet Arduino peut transférer un bit de données à la fois, avec le protocole de communication série. Dans Arduino, nous utilisons l'objet Serial pour échanger des données avec un PC via un port USB.



Communication série est essentiel pour le débogage et la surveillance du comportement d'un projet Arduino. Vous pouvez l'utiliser pour imprimer les lectures des capteurs, déboguer le code ou afficher des messages sur un écran d'ordinateur.



Serial.print()

Serial.print() est une fonction qui envoie des données au port série dans un flux continu. Il vous permet d'envoyer des données sous forme de chaîne, de caractère ou de valeur numérique. Par exemple, le code donné envoie une chaîne ' Bonjour le monde! ' vers le port série Arduino :





Serial.print ( 'Bonjour le monde!' ) ;

Serial.print() n'ajoute aucun saut de ligne ou retour chariot à la fin des données, de sorte que les données sont imprimées en continu sur la même ligne.

Serial.println()

Serial.println() est similaire à Serial.print() , mais il ajoute un caractère de saut de ligne (\n) à la fin des données. Cela nous montre qu'à chaque fois Serial.println() fonction est appelée, la prochaine instruction d'impression commencera sur une nouvelle ligne. Par exemple, le code donné envoie la chaîne ' Bonjour le monde! ” et ajoute un saut de ligne :



Serial.println ( 'Bonjour le monde!' ) ;

Cela imprimera ' Bonjour le monde! ” sur le terminal série d'Arduino.

Différence entre Serial.print() et Serial.println()

La principale différence entre Serial.print() et Serial.println() est-ce Serial.print() envoie des données dans un flux continu, tandis que Serial.println() envoie des données avec un saut de ligne à la fin.

Nous allons maintenant couvrir l'exemple de code qui explique le fonctionnement de ces deux fonctions.

Serial.print() Exemple

Voici le code qui explique l'utilisation de Serial.print() :

void setup ( ) {
Serial.begin ( 9600 ) ; // initialiser la communication série à 9600 débit en bauds
}

boucle vide ( ) {
int valeur aléatoire = aléatoire ( 0 , 1023 ) ; // générer une valeur aléatoire entre 0 et 1023

Serial.print ( 'Valeur aléatoire : ' ) ; // imprimer l'étiquette
Serial.print ( valeuraléatoire ) ; // imprimer la valeur aléatoire sur une nouvelle ligne

retard ( 2000 ) ; // attendez pour 500 millisecondes avant d'imprimer à nouveau
}

Ce code initialise la communication série avec un débit en bauds de 9600 dans la fonction setup(). La fonction loop() génère ensuite une valeur entière aléatoire entre 0 et 1023 à l'aide de la fonction random() et la stocke dans le nom de la variable valeuraléatoire .

Le Serial.print() fonction est ensuite utilisée pour imprimer l'étiquette ' Valeur aléatoire : ' au moniteur série, suivi de la valeur aléatoire réelle, qui est imprimée sur la même ligne sans caractère de nouvelle ligne en utilisant Serial.print() .

Le retard() La fonction permet de suspendre l'exécution de la boucle pendant 2000 millisecondes (2 secondes).

Sortir
Dans la sortie, nous pouvons voir que toutes les valeurs sont imprimées sur une seule ligne sans aucun saut de ligne.

Serial.println() Exemple

Le code donné montre l'utilisation de la Serial.println() fonction dans Arduino.

void setup ( ) {
Serial.begin ( 9600 ) ; // initialiser la communication série à 9600 débit en bauds
}

boucle vide ( ) {
int valeur aléatoire = aléatoire ( 0 , 1023 ) ; // générer une valeur aléatoire entre 0 et 1023

Serial.print ( 'Valeur aléatoire : ' ) ; // imprimer l'étiquette
Serial.println ( valeuraléatoire ) ; // imprimer la valeur aléatoire sur une nouvelle ligne

retard ( 2000 ) ; // attendez pour 500 millisecondes avant d'imprimer à nouveau
}

Le code pour Serial.println() est similaire à ce qui précède Serial.print() code. La seule différence ici est les valeurs aléatoires qui sont générées et imprimées avec un saut de ligne qui manque dans le Serial.print() code.

Sortir
Toutes les valeurs sont imprimées dans une nouvelle ligne comme nous l'avons utilisé Serial.print() au lieu de Serial.println() :

Conclusion

Communication série est un aspect essentiel de la programmation Arduino. Le Serial.print() et Serial.println() Les fonctions sont utiles pour afficher des données sur le terminal série Arduino. Comprendre la différence entre eux et les utiliser de manière appropriée peut vous aider à déboguer votre code et à communiquer avec des périphériques externes.