======== Connexion de 2 esp32 via Uart ======== =====Liaison UART entre 2 esp32 :===== === Commentaires === Le but c'est de faire clignoter une LED sur l'esp32 Slave qui sera pilotée par l'esp32 Master en envoyant 0 pour eteindre et 1 pour allumé la LED et cela via une liaison serie ou UART entre les 2 esp32 . L'UART 2 sera utilisée dans notre exemple. === Materiels === -- 2 ESP32 -- 1 breadboard -- 1 Led 5 mm -- 1 resistance 1/4w 1khoms -- 2 PC avec ports USB ou 2 alimentations 5V 1A -- Fils de cablage dupont 15 cm ===le schéma:=== ^ESPMaster^ESPSlave^ | br 17 TX2 | br 16 RX2 | | br 16 RX2 | br 17 TX2 | | GND (A cote 5V) | GND (A cote 5V) | | | br 15 LED verte | | | GND ( A cote P23) | {{ :start:esp32:0uiijxnie0vv0gq7.png?direct&300 |}} === Programmes Master et Slave === #include HardwareSerial SerialPort(2); // use UART2 void setup() { SerialPort.begin(15200, SERIAL_8N1, 16, 17); } void loop() { SerialPort.print(1); delay(5000); SerialPort.print(0); delay(5000); } #include HardwareSerial SerialPort(2); // use UART2 char number = ' '; int LED = 15; void setup() { Serial.begin(9600); SerialPort.begin(15200, SERIAL_8N1, 16, 17); pinMode(LED, OUTPUT); } void loop() { if (SerialPort.available()) { char number = SerialPort.read(); if (number == '0') { digitalWrite(LED, LOW); Serial.print("0"); /* verification reception 0 */ } if (number == '1') { digitalWrite(LED, HIGH); Serial.print("1"); /* verification reception 1 */ } } } NOTA important : *** BRANCHER les ESP32 sur des PC ou des alimentations différentes** , branché sur la même alimentation cela ne fonctionne pas.... ???? -j ai essayé à 115200 Bauds : cela fonctionne aussi -J ai essayé 1 secondes pour le "delay" sur l'esp32 master : cela fonctionne .