Arduino+VSCode开发ESP32-S3
前言
Arduino IDE对于我来说太难用了,不过本质还是C++开发,理论上VSCode也可以。
安装 Arduino CLI
Arduino不仅提供了IDE,也提供有命令行工具
首先安装Arduino CLI,在 https://docs.arduino.cc/arduino-cli/installation/ 中找到适合自己系统的Arduino CLI并进行安装。
安装完成后输入arduino-cli help core
确保已经正常安装。
配置 Arduino CLI
首先需要初始化Arduino CLI
1 | arduino-cli config init |
配置“用户目录”,该目录会用于存放第三方库等等,推荐和config设置为一个路径
1 | arduino-cli config set directories.user "用户目录路径" |
然后添加官方的加速源,否则可能下载会十分慢
1 | arduino-cli config set board_manager.additional_urls https://jihulab.com/esp-mirror/espressif/arduino-esp32/-/raw/gh-pages/package_esp32_index_cn.json |
接着更新板子列表
1 | arduino-cli core update-index |
这里我们可以先不下载。
配置 VSCode与环境
安装Arduino Maker Workshop
插件,然后打开一个文件夹用于工作目录。
插件安装完成后在侧边栏点击插件,点击Maker Workshop Home
,即可打开配置栏。
首先进入Boards Manager
,点击Not Installed标签,搜索esp32
,然后点最右边的倒三角展开,版本选择x.x.x-cn
,这个才是加速的版本
然后点击版本旁边的下载按钮开始下载。
安装完成后进入Board Selection
,选择ESP32S3 Dev Module
即可。
接着点击Board Configuration
配置板子
Uplaod Speed
最好别选921600,太高板子可能承受不住,512000我的可以正常刷入,实际根据板子体质决定。
Flash Mode
根据实际情况来决定,部分板子可能支持OPI,可以通过下面命令查看(错误的配置会导致板子无法启动):
提示esptool找不到则是没安装esptool,如何安装esptool请自行Google
1 | esptool flash-id |
然后回输出Flash Memory Information
,在Flash type set in eFuse
一栏中查看,我的板子是quad (4 data lines)
所以我选择QIO 80MHz
,如果你的Flash支持8 data lines则可以选择OPI
Flash Size
是多少选多少,我的是N16R8,所以我选择的是16MB
Partition Scheme
我选的是16M Flash(2MB APP/12.5MB FATFS)
,自己根据实际情况选择
PSRAM
一般情况下,ESP32-S3-WROOM-1-N4R8/N8R8/N16R8是支持Octal SPI的,可以选择OPI PSRAM
该文中有详细表:https://blog.csdn.net/tianizimark/article/details/125264464
Arduino Run On
和Events Run On
是否要同一个核心看你自己,不同核心的话可能会出现多线程竟态问题(存疑),如果工程简单的话都跑在一个核心上没问题
剩下的全部默认即可
编译烧录
点击Compile和Upload就行。
飘红问题
有时候安装第三方库include后会飘红,这里只需要编译(Compile)一下,就会自动补齐配置
如果还是有问题,按住Ctrl+Shift+P
打开VSCode的命令栏,找到编辑配置(UI)
,指定一下g++位置,包含路径中添加库文件夹即可
例如我的是C:\Users\GoodBoyboy\AppData\Local\Arduino15\libraries/**
参考
https://docs.arduino.cc/arduino-cli/getting-started/
https://blog.csdn.net/ZHOU_YONG915/article/details/130118049
https://docs.espressif.com/projects/arduino-esp32/en/latest/installing.html
Use this card to join MyBlog and participate in a pleasant discussion together .
Welcome to GoodBoyboy 's Blog,wish you a nice day .