ESP32-S2 Arduino开发环境搭建

ESP32-S2 Arduino开发环境搭建

前言

ESP32-S2是继ESP32之后新出的一款的MCU,它和ESP32最大的区别在于ESP32-S2有USB接口,虽然使用的只是USB1.1协议,但是相比于串口而言传输速度还是要快很多的。对于音频或者视频等数据的传输,使用usb明显要比串口有优势。
我在网上查阅了ESP32-S2相关的资料,发现关于这个MCU的资料很少,而且很多资料都已经过时了,害我走了些弯路。
事情大概是这样子的:
因为在Arduino下载esp32库之前要先添加一个网址用来引导,而这个网址的内容一直没有更新,导致我能下载最新的esp32库还停留在1.0.6版本,让我误以为这个版本就是最新的了。而这个版本是不兼容ESP32-S2这个芯片的,于是我只能在这个库的基础上去改代码,然后连锁反应出现了各种问题,因为原来的架构不是很合理,每当我解决了一个问题又会出现新的问题,代码越改越多,搞得我很烦躁。直到后面我打开了esp32库所在的github仓库,发现esp32已经更新好几个版本了,而且已经兼容了ESP32-S2,只是网上的教程资料一直没人更新,于是我就想着重新整理一下,写一篇适合现在使用的教程。

1 安装Arduino IDE

1.1 下载Arduino IDE

Arduino官网地址:https://docs.arduino.cc/
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
提示:我这里当前最新的版本是1.8.16的,直接下载最新版本的就行了,(如果需要下载旧版的话可以在下面一点Previous Releases这里点进去)。
还有一点要注意的,安装包要下载这个windows的不要下载windows app,windows app是阉割版的。

1.2 安装Arduino IDE

打开安装包一路next即可。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2 在Arduino IDE上安装esp32库

2.1 在线安装

1)添加开发板管理器网址
打开Arduino IDE,依次打开 文件 -> 首选项,在“附加开发板管理器网址”一栏添加下面任意一个网址。

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

注:网上很多ESP32的教程给的是另外一个网址,用那个网址的话,在安装esp32开发板时能下载的最新版本是1.0.6,这个版本只支持ESP32,是不兼容ESP32-S2和ESP32-C3的,而我上面提供的这个是可以下载2.0.0以上版本的。
在这里插入图片描述

2)重新启动Arduino IDE
添加网址之后关闭Arduino IDE,再重新打开。

3)下载安装esp32库
依次打开 工具 -> 开发板-> 开发板管理器,找到esp32并安装(可以通过搜索快速找到)。
提示:一定要安装2.0.0以上版本,旧版本不支持ESP32-S2和ESP32-C3。
在这里插入图片描述
在这里插入图片描述
提示:因为下载的路径是在github上面的,在国内访问不太稳定,可能会出现下载出错,缓慢,卡死等现象,可以尝试重新下载或者换个时间下载(库文件内存其实不大,就是下载不稳定,我这边下载的时候出错了好几次,多次重新下载之后就下载完了),还有一种办法是通过离线操作的,但是据说离线的方法可能会有一些其他的问题,如果不着急的话最好还是通过在线正规的方法安装。

如果需要离线下载的话可以到Github下载,链接:https://github.com/espressif/arduino-esp32

安装完成后,打开 工具 -> 开发板,就可以看到ESP32S2。
在这里插入图片描述

2.2 半离线安装

原理大概是这样的,先下载好esp32库的压缩包,然后放到安装的目录下,最后再按照在线下载的方式安装。
其实这个方法本质上还是在线安装,只是把Arduino IDE下载这个步骤改成手动了。因为使用Arduino IDE下载的话下载速度很慢,而且经常会出现下载中断、失败等问题,而如果通过浏览器的话下载会更加稳定。

esp32的库压缩包我们可以通过上面添加的开发板管理器网址获取。
比如:https://www.arduino.cn/package_esp32_index.json
通过浏览器打开这个网址我们可以看到v2.0.2版本的下载地址是:
https://github.com/espressif/arduino-esp32/releases/download/2.0.2/esp32-2.0.2.zip
在这里插入图片描述
直接打开这个网址我们就可以下载这个压缩包。想下载哪个版本直接打开对应的网址就行了。
提示:如果你要使用ESP32-S2的USB功能建议下载v2.0.1版本,因为我发现v2.0.2有个结构体usb_host_client_config_t改了,导致ESP32TinyUSB库(v1.3.5版本)用到这个结构体的一个函数报错了,需要修改定义,如果用v2.0.1版本的话是直接兼容的。

下载完成后我们要把这个压缩包放到安装目录下。
这个路径的根目录可以在Arduino IDE的首选项里面看到。点击一下这个路径就可以弹出文件窗口。然后进入staging\packages目录,并把下载好的压缩包放到这个目录下。
在这里插入图片描述
在这里插入图片描述
最后按照上面 (2.1在线安装)的步骤走一遍。这个时候你会发现下载的过程一下子就完成了,直接进入了安装的流程。
等待安装完毕即可使用。

这个方法其实是我无意中发现的,测试了两台设备都是可行的,应该是一个通用的方法。如果你遇到了其他问题,请一定要联系我纠正,谢谢!

结束语

好了,关于ESP32-S2 Arduino的环境搭建就介绍到这里,整个流程其实非常简单,后面我会继续出一期ESP32-S2 USB的使用方法。如果还有什么问题,欢迎在评论区留言或者私信给我。

Arduino开发教程汇总:
https://blog.csdn.net/ShenZhen_zixian/article/details/121659482

版权声明:本文为CSDN博主「Raywarm」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/ShenZhen_zixian/article/details/122912759

生成海报
点赞 0

Raywarm

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

ESP32_FreeRTOS_Arduino_1_创建任务

关于FreeRTOS 在arduino环境下的应用 一、关于FreeRTOS 1、什么是FreeRTOS FreeRTOS是运行在微控制器上的一种实时操作系统,可以有效的管理任务,合理的分配硬件资源。 举例来

Arduino开发教程汇总

使用VS code搭建Arduino IDE环境 esp8266开发入门教程(基于Arduino)——环境安装 esp8266开发入门教程(基于Arduino)——编程基础介绍 esp8266开发入门教程(基于Arduino)——点亮LED灯