ESP32 - SoftwareSerial Livrary - PullRequest
       4

ESP32 - SoftwareSerial Livrary

0 голосов
/ 06 февраля 2020

У меня есть ESP32, и мне нужно работать с большим количеством последовательных портов, но я не могу использовать Software Serial Library в ESP32, потому что Arduino IDE не распознает библиотеку.

Как можно Я буду его использовать?

   #include <Arduino.h>
   #include <SoftwareSerial.h>

   SoftwareSerial SoftSerial(4, 5);

   void setup() 
   {
     Serial.begin(9600);
     SoftSerial.begin(115200); 
   }

   void loop() 
   {
     while (Serial.available())
     {
       SoftSerial.write("on");
     }
   }

Спасибо

1 Ответ

1 голос
/ 06 февраля 2020

ESP32 имеет 3 различных последовательных порта (UART). Вы можете просто использовать один из них:

Serial0: RX0 на GPIO3, TX0 на GPIO1
Serial1: RX1 на GPIO9, TX1 на GPIO10 (+ CTS1 и RTS1)
Serial2: RX2 на GPIO16, TX2 на GPIO17 (+ CTS2 и RTS2)

Вам не нужен программный последовательный порт, так как ESP32 может внутренне отключить контакт последовательного порта с другими контактами.

Для этого вы необходимо использовать библиотеку <HardwareSerial.h> -

Эта библиотека уже установлена ​​вместе с вашей платой:
https://github.com/espressif/arduino-esp32/blob/master/cores/esp32/HardwareSerial.cpp

Редактировать: как сказал Juraj, если вам нужно более 3 последовательных портов, вы можете использовать эту библиотеку для ESP:
https://github.com/plerup/espsoftwareserial

...