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