ESP32 - Moniteur série

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

Préparation du matériel

1×ESP-WROOM-32 Dev Module
1×USB Cable Type-C
1×(Optional) DC Power Jack
1×Breadboard
1×Jumper Wires
1×(Recommended) ESP32 Screw Terminal Adapter

Or you can buy the following sensor kits:

1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)
Divulgation : Certains des liens fournis dans cette section sont des liens affiliés Amazon. Nous pouvons recevoir une commission pour tout achat effectué via ces liens, sans coût supplémentaire pour vous. Nous vous remercions de votre soutien.

À 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.
COM6
Send
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

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.

COM6
Send
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

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

COM6
Send
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

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

COM6
Send
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

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()).

COM6
Send
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

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

COM6
Send
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  
  • 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
    COM6
    Send
    Autoscroll Show timestamp
    Clear output
    9600 baud  
    Newline  

    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.

    COM6
    Send
    Autoscroll Show timestamp
    Clear output
    9600 baud  
    Newline  

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 comment configurer l'environnement pour ESP32 sur Arduino IDE.
    • 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.
    COM6
    Send
    newbiely.fr newbiely.fr newbiely.fr newbiely.fr
    Autoscroll Show timestamp
    Clear output
    9600 baud  
    Newline  
    • 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 comment configurer l'environnement pour ESP32 sur Arduino IDE.
      • 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.
      COM6
      Send
      Autoscroll Show timestamp
      Clear output
      9600 baud  
      Newline  
      • 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.
      COM6
      Send
      Turn LED ON
      Autoscroll Show timestamp
      Clear output
      9600 baud  
      Newline  
      • Tapez la commande « ON » ou « OFF » plusieurs fois.

Vidéo

※ OUR MESSAGES

  • Please feel free to share the link of this tutorial. However, Please do not use our content on any other websites. We invested a lot of effort and time to create the content, please respect our work!