我有一个 ESP32,我需要使用更多串口,但我无法将软件串行库用于 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");
}
}
谢谢
最佳答案
ESP32 有 3 个不同的串行端口 (UART)。您可以只使用其中之一:
Serial0:GPIO3 上的 RX0,GPIO1 上的 TX0
Serial1:GPIO9 上的 RX1,GPIO10 上的 TX1(+CTS1 和 RTS1)
Serial2:GPIO16 上的 RX2,GPIO17 上的 TX2(+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
https://stackoverflow.com/questions/60094545/
相关文章:
sql - Oracle 12c - 插入到选择查询中的列不明确,ORA-00918
scala - 玩json库和sbt assembly合并报错
powershell - Terraform azurerm_virtual_machine_ext
bash - 如何在 bash 中循环遍历 jq 唯一数组?
mongodb - 使用 mongodb 中的条件将字段添加到集合
python - 如何在 XGBoost 库的 plot_tree 函数中包含特征名称?
r - 确定一周中的某一天是否是 R 中每月的第 2/3 等星期一/星期二/等
css - 如何为 Material UI 按钮 'startIcon' 分配自定义图标?