KẾT NỐI UART Arduino UNO và ESP32

Code truyền:

#include <SoftwareSerial.h>

#define Rx 11

#define Tx 12

SoftwareSerial mySerial(Rx, Tx);

void setup(){

Serial.begin(115200);

mySerial.begin(115200);

}

void loop(){

char ch;

ch = Serial.read();

if(Serial.available()){

if (ch=='t'){

mySerial.print("Phim T");

} else {

mySerial.print("Phim ");

mySerial.print(char(mySerial.read()));

}

}

}

Code nhận:

#define LED 2

void setup() {

Serial.begin(115200);

pinMode(LED, OUTPUT);

}


void loop() {

if(Serial.available()){

String RxBuffer="";

while(Serial.available()){

RxBuffer = Serial.readString();

}

if(RxBuffer=="Phim T"){

digitalWrite(LED, LOW);

Serial.println("Led on");

} else {

digitalWrite(LED, HIGH);

Serial.println("Led Off");

}

}

}

  • Mass chung (GND Arduino chung với GND ESP).

  • Cấp nguồn 3.3V cho ESP nếu cần

  • Chọn cặp UART thứ 2 của ESP32, chân 16 17 để truyền nhận giao tiếp với chân 11 12 của Arduino