ตัวอย่างการใช้งาน Hardware Serial esp32

มีพอร์ตอนุกรม 3 พอร์ตบน ESP32 ที่เรียกว่า U0UXD, U1UXD และ U2UXD พอร์ตทั้งหมดทำงานที่ระดับแรงดัน 3.3V TTL มีอินเทอร์เฟซแบบอนุกรมที่รองรับฮาร์ดแวร์ 3 ชุดบนบอร์ด ESP32 ได้แก่ UART0, UART1 และ UART2 เช่นเดียวกับอุปกรณ์ต่อพ่วงทั้งหมด Pin สำหรับ UART สามารถแมปแบบตรรกะกับ Pin ที่มีอยู่บน ESP32

ตารางพินพอร์ต

UART RX IO TX IO CTS RTS
UART0 GPIO3 GPIO1 N/A N/A
UART1 GPIO9 GPIO10 GPIO6 GPIO11
UART2 GPIO16 GPIO17 GPIO8 GPIO7

โค้ตที่ใช้

#define RXD2 16
#define TXD2 17
 
void setup() {
  // รูปแบบสำหรับการตั้งค่าพอร์ตอนุกรมมีดังนี้: Serial2.begin (อัตราการส่งข้อมูล, โปรโตคอล, พิน RX, พิน TX);
  Serial.begin(115200);
  //Serial1.begin(9600, SERIAL_8N1, RXD2, TXD2);
  Serial2.begin(9600, SERIAL_8N1, RXD2, TXD2);
  Serial.println("Serial Txd is on pin: "+String(TX));
  Serial.println("Serial Rxd is on pin: "+String(RX));
}
 
void loop() { //เลือก Serial1 หรือ Serial2 ตามต้องการ
  while (Serial2.available()) {
    Serial.print(char(Serial2.read()));
  }
}

ขอบคุณครับ