esp32s3使用多串口

esp32s3使用多串口

我按照别人博客中设置串口2,串口打印有问题,因为没有看到esp32s3 多串口,就总结了一下自己的经验

下图为esp32的引脚图

picture 0

下图为esp32s3的引脚图

picture 1

ESP32-S3 有三个 UART(通用异步收发器)控制器,即 UART0、UART1、UART2,支持异步通信(RS232 和 RS485)和 IrDA,通信速率可达到 5 Mbps。UART 控制器具有如下特性:

  • 支持三个可预分频的时钟源
  • 可编程收发波特率
  • 三个 UART 的发送 FIFO 以及接收 FIFO 共享 1024 x 8-bit RAM
  • 全双工异步通信
  • 支持输入信号波特率自检功能
  • 支持 5/6/7/8 位数据长度
  • 支持 1/1.5/2/3 个停止位
  • 支持奇偶校验位
  • 支持 AT_CMD 特殊字符检测
  • 支持 RS485 协议
  • 支持 IrDA 协议
  • 支持 GDMA 高速数据通信
  • 支持 UART 唤醒模式
  • 支持软件流控和硬件流控

每个UART都分配有默认的 GPIO,但是根据您的 ESP32 电路设计进行更改,这些引脚可能与嵌入式闪存、板载 PSRAM 或外围设备冲突。

任何 GPIO 都可以用于使用 GPIO 矩阵的硬件 UART,因此为避免冲突,只需在构造时提供tx和 rx 引脚即可。

下面是ESP32-S3 UART的默认引脚。

UART0UART1UART2
发送(TX)IO43IO17 / 任意IO任意IO
接收(RX)IO44IO18 / 任意IO任意IO

因为我看一般说明串口1最好不要有占用,一般去使用串口0和串口2

重点怎么去知道自己arduino库是默认哪个引脚

我使用的是platformio开发,arduino ide应该同理
下图该文件下,我的路径是如下图,找到该.c文件,
picture 2

这个是我的uart2的发送引脚,这个没有更改过该文件,uart2可以自定io这个没试过,毕竟是默认文件就没更改了,理论上应该可以自定义。
picture 3

picture 6

picture 7

测试程序 UART2(TX 20 RX 19)
// Sender发送端

void setup() {
    Serial.begin(115200);
    Serial2.begin(115200);
    Serial.println("i am serial 0");

}

void loop() {
    mySerial2.println("i am serial 2ww");
    delay(1000);
}
测试效果

picture 5

总结

最终不管芯片型号怎么改变,都可以在那个.cpp文件进行查看。

  • 9
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 8
    评论
要在ESP32S3使用Arduino进行串口打印,你需要按照以下步骤进行设置: 1. 首先,从Arduino官网下载并安装Arduino IDE 1.8.x版本,例如1.8.19。\[1\] 2. 打开Arduino IDE,创建一个新的项目。 3. 在项目的`setup()`函数中,使用`Serial.begin()`函数初始化串口,并设置波特率。例如,可以使用以下代码初始化串口并打印"hello world!": ```cpp void setup() { Serial.begin(921600); Serial.print("hello world!\n"); } ``` 4. 在项目的`loop()`函数中,编写你的主要代码。这部分代码将会被重复执行。 5. 编译并烧写代码到ESP32S3开发板上。\[2\] 6. 在Arduino IDE的首选项中,添加ESP32S3的开发板支持。你可以在首选项中添加以下URL:`https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json`。\[3\] 完成以上步骤后,你的ESP32S3开发板将能够通过串口打印信息。你可以在串口监视器中查看输出结果。 #### 引用[.reference_title] - *1* *3* [ESP32S3 ARDUINO SPIFFS完美闪存上传教程【MAC】](https://blog.csdn.net/weixin_65425106/article/details/130439527)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [合宙ESP32S3-CORE开发板|保姆级|Arduino IDE|windows11|esp32S3支持库|helloword例程:Arduino 环境搭建](https://blog.csdn.net/Medlar_CN/article/details/128990636)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

冰糖小新新

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值