ESP32 - Moniteur série

Ce tutoriel vous explique comment utiliser le moniteur série sur Arduino IDE avec ESP32.

À propos du moniteur série

Lorsque vous programmez pour l'ESP32, vous devez savoir comment fonctionne le code ESP32 ⇒ utilisez l'outil Moniteur Série dans l'IDE Arduino. Il est conçu à deux fins :

  • ESP32 → PC : Votre code sur ESP32 envoie des données via le port série. Le moniteur série sur le PC reçoit les données et les affiche. Cela est très utile pour le débogage et la surveillance.
  • PC → ESP32 : Vous tapez des données et les envoyez du PC à l'ESP32. Cela est utile pour envoyer des commandes de votre PC à l'ESP32.

Vous avez besoin d'un câble micro USB entre le PC et l'ESP32. Ce câble sert également à télécharger le code sur l'ESP32.

Comment utiliser le moniteur série

Ouvrir le moniteur série

Il vous suffit de cliquer sur une icône sur l'IDE Arduino comme dans l'image ci-dessous :

Comment ouvrir le moniteur série sur Arduino IDE

Composants sur le moniteur série

Le moniteur série est composé de 8 composants.

  1. Console de sortie : ce composant affiche les données reçues de l'ESP32.
Newbiely | Arduino IDE 2.3.8
──
File
Edit
Sketch
Tools
Help
ESP32 Dev Module
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'ESP32 Dev Module' on 'COM15')
New Line
9600 baud
Ln 11, Col 1
ESP32 Dev Module on COM15
2

i. Case à cocher de défilement automatique : ce composant propose des options pour activer/désactiver le défilement automatique sur la console de sortie.

Newbiely | Arduino IDE 2.3.8
──
File
Edit
Sketch
Tools
Help
ESP32 Dev Module
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'ESP32 Dev Module' on 'COM15')
New Line
9600 baud
Ln 11, Col 1
ESP32 Dev Module on COM15
2

i. Case à cocher Afficher l'horodatage : ce composant propose des options pour ajouter un horodatage avant les données.

Newbiely | Arduino IDE 2.3.8
──
File
Edit
Sketch
Tools
Help
ESP32 Dev Module
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'ESP32 Dev Module' on 'COM15')
New Line
9600 baud
Ln 11, Col 1
ESP32 Dev Module on COM15
2

i. Bouton de nettoyage de la sortie : Lorsque ce bouton est cliqué, le texte sur la console de sortie est effacé.

Newbiely | Arduino IDE 2.3.8
──
File
Edit
Sketch
Tools
Help
ESP32 Dev Module
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'ESP32 Dev Module' on 'COM15')
New Line
9600 baud
Ln 11, Col 1
ESP32 Dev Module on COM15
2

i. Sélection du débit en bauds : ce composant offre des options pour sélectionner la vitesse de communication (débit en bauds) entre le PC et l'ESP32. Cette valeur DOIT être identique à celle utilisée dans le code ESP32 (dans la fonction Serial.begin()).

Newbiely | Arduino IDE 2.3.8
──
File
Edit
Sketch
Tools
Help
ESP32 Dev Module
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'ESP32 Dev Module' on 'COM15')
New Line
9600 baud
Ln 11, Col 1
ESP32 Dev Module on COM15
2

i. Zone de texte : ce composant vous permet de saisir des caractères qui seront envoyés à la carte ESP32 lorsque vous cliquez sur Bouton Envoyer

Newbiely | Arduino IDE 2.3.8
──
File
Edit
Sketch
Tools
Help
ESP32 Dev Module
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'ESP32 Dev Module' on 'COM15')
New Line
9600 baud
Ln 11, Col 1
ESP32 Dev Module on COM15
2
  • I. Fin de sélection : ce composant offre des options pour sélectionner les caractères de fin ajoutés aux données envoyées à l'ESP32. Les options disponibles comprennent :
    • Aucune fin de ligne : n'ajoute rien
    • Nouvelle ligne : ajoute un caractère de nouvelle ligne (LF, ou '\n')
    • Retour chariot : ajoute un caractère de retour chariot (CR, ou '\r')
    • NL et CR : ajoute à la fois les caractères de nouvelle ligne et de retour chariot
    Newbiely | Arduino IDE 2.3.8
    ──
    File
    Edit
    Sketch
    Tools
    Help
    ESP32 Dev Module
    Newbiely.ino
    ···
    8 Serial.println("Hello World!");
    Output
    Serial Monitor
    Message (Enter to send message to 'ESP32 Dev Module' on 'COM15')
    New Line
    9600 baud
    Ln 11, Col 1
    ESP32 Dev Module on COM15
    2

    Bouton d'envoi : lorsque ce bouton est cliqué, le moniteur série envoie les données situées dans la zone de texte ainsi que les caractères de fin à l'ESP32.

    Newbiely | Arduino IDE 2.3.8
    ──
    File
    Edit
    Sketch
    Tools
    Help
    ESP32 Dev Module
    Newbiely.ino
    ···
    8 Serial.println("Hello World!");
    Output
    Serial Monitor
    Message (Enter to send message to 'ESP32 Dev Module' on 'COM15')
    New Line
    9600 baud
    Ln 11, Col 1
    ESP32 Dev Module on COM15
    2

ESP32 vers PC

Comment envoyer des données de la carte ESP32 au PC :

  • Définissez le débit en bauds et initialisez le port série en utilisant la fonction Serial.begin().
Serial.begin(baudrate);
  • Envoyez des données au moniteur série en utilisant l'une des fonctions ci-dessous :
  • Par exemple, envoyez « Hello World ! » au moniteur série.

    Serial.println("Hello World!");

    Exemple d'utilisation

    L'exemple de code ci-dessous envoie « newbiely.fr » depuis l'ESP32 vers le moniteur série chaque seconde.

    /* * Ce code ESP32 a été développé par newbiely.fr * Ce code ESP32 est mis à disposition du public sans aucune restriction. * Pour des instructions complètes et des schémas de câblage, veuillez visiter: * https://newbiely.fr/tutorials/esp32/esp32-serial-monitor */ void setup() { Serial.begin(9600); } void loop() { Serial.println("newbiely.fr"); delay(1000); }

    Étapes rapides

    • Si c'est la première fois que vous utilisez ESP32, consultez Installation du logiciel ESP32..
    • Copiez le code ci-dessus et collez-le dans Arduino IDE.
    • Compilez et téléchargez le code sur la carte ESP32 en cliquant sur le bouton Upload de l'Arduino IDE.
    • Ouvrez le moniteur série sur Arduino IDE.
    • Sélectionnez le baudrate 9600.
    • Visualisez la sortie sur le moniteur série.
    Newbiely | Arduino IDE 2.3.8
    ──
    File
    Edit
    Sketch
    Tools
    Help
    ESP32 Dev Module
    Newbiely.ino
    ···
    8 Serial.println("Hello World!");
    Output
    Serial Monitor
    Message (Enter to send message to 'ESP32 Dev Module' on 'COM15')
    New Line
    9600 baud
    newbiely.fr newbiely.fr newbiely.fr newbiely.fr
    Ln 11, Col 1
    ESP32 Dev Module on COM15
    2
    • Essayez de remplacer la fonction Serial.println() par la fonction Serial.print()

PC vers ESP32

Comment envoyer des données d'un PC à un ESP32

  • Sur l'ordinateur :
    • Tapez du texte sur le moniteur série
    • Cliquez sur le bouton Envoyer.

    Et ensuite, vous écrivez le code ESP32 pour lire les données et les traiter :

    • Définissez le débit en bauds et commencez le port série.
    Serial.begin(baudrate);
    • Vérifiez si les données entrantes sont disponibles.
    if(Serial.available()) { // À FAIRE }
    • Lisez les données depuis le port série en utilisant une des fonctions ci-dessous :
    • Par exemple :

      String data = Serial.readStringUntil("\r\n");

      Exemple d'utilisation

      L'exemple de code ESP32 ci-dessous lit les commandes depuis le port série pour allumer/éteindre une LED intégrée.

      • Si le texte reçu (commande) est « ON », allumez la LED
      • Si le texte reçu (commande) est « OFF », éteignez la LED

      Comment l'ESP32 peut-il reconnaître une commande ? Par exemple, lorsque nous envoyons les caractères « OFF », comment l'ESP32 peut-il distinguer si la commande est « O », « OF » ou « OFF » ?

      Nous devons envoyer un terminateur avec une commande ⇒ nous pouvons ajouter un caractère de nouvelle ligne ('\n'). Pour ajouter un caractère de nouvelle ligne, sélectionnez l'option "nouvelle ligne" sur le moniteur série avant d'envoyer les données. L'ESP32 lira les données jusqu'au caractère de nouvelle ligne. Dans ce cas, le caractère de nouvelle ligne est appelé terminateur ou délimiteur.

      /* * Ce code ESP32 a été développé par newbiely.fr * Ce code ESP32 est mis à disposition du public sans aucune restriction. * Pour des instructions complètes et des schémas de câblage, veuillez visiter: * https://newbiely.fr/tutorials/esp32/esp32-serial-monitor */ void setup() { Serial.begin(9600); pinMode(LED_BUILTIN, OUTPUT); // définir la broche numérique comme sortie : } void loop() { if (Serial.available()) { // s'il y a des données entrantes String command = Serial.readStringUntil('\n'); // lire la chaîne jusqu'au caractère de nouvelle ligne if (command == "ON") { digitalWrite(LED_BUILTIN, HIGH); // allumer la LED Serial.println("Turn LED ON"); } else if (command == "OFF") { digitalWrite(LED_BUILTIN, LOW); // éteindre la LED Serial.println("Turn LED OFF"); } } }

      Étapes rapides

      • Si c'est la première fois que vous utilisez un ESP32, consultez Installation du logiciel ESP32..
      • Copiez le code ci-dessus et collez-le dans l'Arduino IDE.
      • Compilez et téléchargez le code sur la carte ESP32 en cliquant sur le bouton Upload dans l'Arduino IDE.
      • Ouvrez le moniteur série sur l'Arduino IDE.
      • Sélectionnez le débit baurate 9600 et l'option de nouvelle ligne.
      • Tapez « ON » ou « OFF » et cliquez sur le bouton Envoyer.
      Newbiely | Arduino IDE 2.3.8
      ──
      File
      Edit
      Sketch
      Tools
      Help
      ESP32 Dev Module
      Newbiely.ino
      ···
      8 Serial.println("Hello World!");
      Output
      Serial Monitor
      Message (Enter to send message to 'ESP32 Dev Module' on 'COM15')
      New Line
      9600 baud
      Ln 11, Col 1
      ESP32 Dev Module on COM15
      2
      • Voyez l'état de la LED intégrée sur la carte ESP32. Nous verrons si l'état de la LED est ON ou OFF, respectivement.
      • Nous voyons aussi l'état de la LED sur le moniteur série.
      Newbiely | Arduino IDE 2.3.8
      ──
      File
      Edit
      Sketch
      Tools
      Help
      ESP32 Dev Module
      Newbiely.ino
      ···
      8 Serial.println("Hello World!");
      Output
      Serial Monitor
      Message (Enter to send message to 'ESP32 Dev Module' on 'COM15')
      New Line
      9600 baud
      Turn LED ON
      Ln 11, Col 1
      ESP32 Dev Module on COM15
      2
      • Tapez la commande « ON » ou « OFF » plusieurs fois.

Vidéo

※ NOS MESSAGES

  • N'hésitez pas à partager le lien de ce tutoriel. Cependant, veuillez ne pas utiliser notre contenu sur d'autres sites web. Nous avons investi beaucoup d'efforts et de temps pour créer ce contenu, veuillez respecter notre travail !