ESP32-S3开发环境搭建(arduino版本)

前言

不久前关注到乐鑫官方github已经更新了关于arduino IDE中开发ESP32-S3部分的分支,所以我在这篇文章中记录一下在arduino IDE下添加ESP32-S3开发板的艰难过程,闲话不多说,下面我们直接上手开发搭建。

安装方法

方法1

我们这里先提供最简单的一种方法,打开自己安装好的 arduino → 文件 → 首选项 附加开发板管理器网址中添加以下两个链接中的一个

  • Stable release link:

https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json

  • Development release link:

https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_dev_index.json

添加好之后记得点好然后确定不要直接点 × 关掉了,那样是不会保存的 保存好之后点击 工具 → 开发板 → 打开开发板管理器 在弹出的界面搜索框输入 ESP32 ,如下图所示(之前安装过旧版本的会显示更新,没安装过会显示为安装) 选择版本号为 2.0.0-alpha1 ,点击安装即可

方法2

下载相关文件

点开进入到乐鑫github,点击 master 位置的箭头可以找到名字为 ESP32-s3-support的分支,打开它,如下图所示 如果你像我下面这样没有一个列表一样的出现,那么就点击 View all branches 跳转过去再打开 ESP32-s3-support的分支 就好了 打开之后点开右上角的 Code ,点击 Download ZIP 下载过来就好了 还是无法下载的用户可以在下方留言邮箱我把下载好的发过去

编译工具链下载

下载好压缩包之后解压出来,我们注意到两个文件夹 packagetools

get下载安装编译工具

打开找到 tools 文件夹下有个 get.exe 的应用程序,双击之后就会开始往我们解压的包里面下载并安装编译工具链 接下来等待下载完毕之后会在 tools 文件夹下新增若干个文件夹,我们对比下载前后 tools 文件夹下的文件可以知道有没有成功下载并安装(因为这种下载方式没下载成功会关闭界面,下载成功了也会关闭界面)

下载安装前

下载安装后

手动下载安装

我们分析arduino安装的时候或者get下载安装的时候的安装步骤,前面两种方式也是在github上下载响应的包,并下载编译工具链解压放到相应的文件夹下

那么接下来我们手动下载并放置到相应的位置之后是不是会有一样的效果

我们在 package 这个文件夹下找到有一个 json 文件,我们打开之后可以看到一共有7个需要下载的文件会下载到 tools 里面

cpp 复制代码
          "toolsDependencies": [
            {
              "packager": "esp32",
              "name": "riscv32-esp-elf-gcc",
              "version": "gcc8_4_0-esp-2021r2"
            },
            {
              "packager": "esp32",
              "name": "xtensa-esp32-elf-gcc",
              "version": "gcc8_4_0-esp-2021r2"
            },
            {
              "packager": "esp32",
              "name": "xtensa-esp32s2-elf-gcc",
              "version": "gcc8_4_0-esp-2021r2"
            },
            {
              "packager": "esp32",
              "name": "xtensa-esp32s3-elf-gcc",
              "version": "gcc8_4_0-esp-2021r2"
            },
            {
              "packager": "esp32",
              "name": "esptool_py",
              "version": "3.2.0"
            },
            {
              "packager": "esp32",
              "name": "mkspiffs",
              "version": "0.2.3"
            },
            {
              "packager": "esp32",
              "name": "mklittlefs",
              "version": "3.0.0-gnu12-dc7f933"
            }
          ]

对应的链接在下方的 tools 中,对应 "host": "i686-mingw32" 下方的 url 为我们 windows 下面 arduino 下载的文件链接 整理的七个链接如下

  1. https://github.com/espressif/crosstool-NG/releases/download/esp-2021r2/riscv32-esp-elf-gcc8_4_0-esp-2021r2-macos.tar.gz

  2. https://github.com/espressif/crosstool-NG/releases/download/esp-2021r2/xtensa-esp32-elf-gcc8_4_0-esp-2021r2-patch2-win32.zip

  3. https://github.com/espressif/crosstool-NG/releases/download/esp-2021r2/xtensa-esp32s2-elf-gcc8_4_0-esp-2021r2-patch2-win32.zip

  4. https://github.com/espressif/crosstool-NG/releases/download/esp-2021r2/xtensa-esp32s3-elf-gcc8_4_0-esp-2021r2-patch2-win64.zip

  5. https://github.com/espressif/arduino-esp32/releases/download/2.0.2/esptool-3.2-windows.zip

  6. https://github.com/earlephilhower/esp-quick-toolchain/releases/download/3.0.0-gnu12/x86_64-w64-mingw32.mklittlefs-c41e51a.200706.zip

  7. https://github.com/igrr/mkspiffs/releases/download/0.2.3/mkspiffs-0.2.3-arduino-esp32-win32.zip

把链接放到浏览器里面下载好解压出来得到下面七个文件夹,下载不了可以在下方留言邮箱,我会把所有文件打包好发送过去 复制这七个文件夹和里面的文件放到之前解压的芯片包的 tools 文件夹下即可

开发板添加

那么我们做到这一步,不管你是用前面的 get 的方式 直接下载的工具链还是 手动下载解压 放进去的,我们都将得到一个完整的 包含编译工具链的芯片包,我这边把上面所有用到的文件都打包好放好如下图所示的样式

那么接下来我们找到arduino的安装路径,安装路径下会有一个 hardware 的文件夹,打开之后在里面新建一个名称为 espressif 的文件夹 把我们下载好有工具链的包复制(这个时候名称为 arduino-esp32-esp32-s3-support )到刚新建的 espressif 文件夹下,值得注意的是这个时候不要打开arduino,避免出现问题,复制过去如下所示

最后修改 文件夹 arduino-esp32-esp32-s3-support 名称为 esp32 ,不然到时候编译的时候会报一个警告

我们打开arduino,这个时候可以看到开发板里面新增了 ESP32-S3 的开发板

选好开发板,编写一个输出 Hello World! 的程序

cpp 复制代码
void setup() {
  // put your setup code here, to run once:
  Serial.begin(115200);
}

void loop() {
  // put your main code here, to run repeatedly:
  Serial.println("Hello World!");
  delay(1000);
}

成功编译并下载运行!

总结

这篇搭建开发环境的文章本身写的细节是比较多的,写这篇文章的时候是在2022年3月,用户完全可以根据我们提供的下载好的文件直接搭建好开发环境是非常快的,但是乐鑫官方本身肯定是会有新的版本出现,或许修复了现有的许多BUG,希望用户能使用较为稳定的版本,也希望优信能陪伴大家共同学习共同进步,欢迎一键三连,感谢各位大佬!

相关推荐
一路往蓝-Anbo4 小时前
C语言从句柄到对象 (一) —— 全局变量的噩梦与“多实例”的救赎
c语言·开发语言·stm32·单片机·嵌入式硬件·物联网
广东大榕树信息科技有限公司4 小时前
如何运用国产信创动环监控系统来保障生产安全与效率提升?
运维·网络·物联网·国产动环监控系统·动环监控系统
松涛和鸣4 小时前
DAY42 SQLite3 : Dictionary Import and Data Query Implementation with C Language
linux·c语言·数据库·单片机·网络协议·sqlite
d111111111d5 小时前
STM32中USART和UART的区别是什么?
笔记·stm32·单片机·嵌入式硬件·学习
一路往蓝-Anbo5 小时前
C语言从句柄到对象 (三) —— 抛弃 Malloc:静态对象池与索引句柄的终极形态
c语言·开发语言·数据结构·stm32·单片机·算法
YMatrix 官方技术社区5 小时前
时序 + 分析:YMatrix “智慧工厂“数据平台双方案详解
数据库·物联网·时序数据库·智能制造·数智工厂·ymatrix
集芯微电科技有限公司6 小时前
PC1001超高频率(50HMZ)单通单低侧GaN FET驱动器支持正负相位配置
数据结构·人工智能·单片机·嵌入式硬件·神经网络·生成对抗网络·fpga开发
一路往蓝-Anbo6 小时前
C语言从句柄到对象 (二) —— 极致的封装:不透明指针与 SDK 级设计
c语言·开发语言·数据结构·stm32·单片机·嵌入式硬件
dlz08366 小时前
点亮LED灯
单片机·嵌入式硬件