ESP32 支持3个串口,ESP32 S2支持2个串口。但是,你终究会遇到需求比硬件支持多一个的情况。这种情况下就需要使用软串口。 这里推荐一个 ESP32 SoftSerial ,经过我的测试可以在ESP32 S2 上正常使用。 示例代码如下,使用 GPIO12 发送,未使用接收功能,比如,我们需要多出来的串口输出调试信息: |
#include <SoftwareSerial.h>
// RX TX
SoftwareSerial swSer(SW_SERIAL_UNUSED_PIN, 12, false, 256);
void setup() {
Serial.begin(115200);
swSer.begin(115200);
Serial.println("\nSoftware serial test started");
for (char ch = ' '; ch <= 'z'; ch++) {
swSer.write(ch);
}
swSer.println("");
}
void loop() {
while (swSer.available() > 0) {
Serial.write(swSer.read());
}
while (Serial.available() > 0) {
swSer.write(Serial.read());
}
}
库文件: