一、Arduino IDE下载
二、Arduino IDE安装
三、ESP32库
四、Arduino-ESP32库配置
五、新建ESP32-S3N15R8工程文件
乐鑫官网
Arduino官方下载地址
Arduino官方社区
Arduino中文社区
资料下载:
链接:https://pan.baidu.com/s/15Q2rl2jpIaKfj5rATkYE6g?pwd=GLNG
提取码:GLNG
一、Arduino IDE下载
![](https://i-blog.csdnimg.cn/direct/19ac2bbd73524f68bcbbdc7fe20db69e.png)
![](https://i-blog.csdnimg.cn/direct/040206c2b5c4404da5c078d0d3588a32.png)
ESP-IDF、MicroPython和Arduino是三种不同的开发框架,各自适用于不同的场景和用户群体,下面我将从用户领域、优缺点等方面来详细阐述它们的区别:
ESP-IDF (Espressif IoT Development Framework)
用户领域
- 主要面向专业开发者和工程师,特别是那些需要深度定制和优化IoT应用的人。
- 适合于产品级开发,要求高性能、稳定性和安全性。
优点
- 提供全面的硬件和软件支持,包括WiFi、蓝牙、安全协议等。
- 官方维护,文档齐全,更新及时,支持多种高级特性如microROS。
- 适合产品化,可进行深度定制和优化,满足复杂项目需求。
缺点
- 学习曲线较陡峭,需要一定的嵌入式开发背景。
- 资料和教程相对较少,尤其是对于初学者。
- 工程复杂度较高,不适合快速原型开发。
MicroPython
用户领域
- 面向希望快速开发原型和小型项目的开发者,特别是喜欢Python语言的用户。
- 适合教育和研究领域,因其易于学习和使用。
优点
- 使用Python语法,代码可读性强,易于学习和调试。
- 轻量级,能够在资源受限的微控制器上运行。
- 支持实时操作系统特性,如中断和多任务。
缺点
- 性能和效率可能低于C/C++,尤其是在处理密集型任务时。
- 库支持和外设驱动可能不如C/C++丰富。
- 对于大型项目或复杂应用,可能需要更多的资源和优化。
Arduino
用户领域
- 广泛应用于教育、DIY项目和快速原型设计。
- 适合电子爱好者、初学者和不需要高度定制的项目。
优点
- 易于上手,有大量的教程和社区支持。
- 硬件和软件生态丰富,支持多种微控制器和扩展板。
- 强大的库支持,简化了硬件交互和复杂功能的实现。
缺点
- 与ESP-IDF相比,可能缺乏深度的硬件控制和优化。
- 受限于Arduino IDE,可能不适合大型或复杂项目。
- 性能可能不是最优,尤其是在处理网络或大量数据时。
结论
选择ESP-IDF、MicroPython还是Arduino主要取决于你的项目需求、个人技能和偏好。如果你需要构建一个高性能、稳定的产品,ESP-IDF可能是最佳选择;如果速度和效率不是首要考虑因素,且你更喜欢Python语言,那么MicroPython是一个很好的选择;而Arduino则非常适合快速原型制作和教育目的。
![](https://i-blog.csdnimg.cn/direct/bce75518e1cd47238b640d24a6cdf821.png)
二、Arduino IDE安装
![](https://i-blog.csdnimg.cn/direct/ea0fb9f369c74cd9945b0fa1b5a92639.png)
安装过程没有什么特别设置的选项默认PC软件安装过程
![](https://i-blog.csdnimg.cn/direct/160d63c7765b41618d0344943dc5f125.png)
加载完成首选项设置
![](https://i-blog.csdnimg.cn/direct/ac7d34e98e654466841e797a0301643e.png)
![](https://i-blog.csdnimg.cn/direct/c045aa7655f44d399322f7ac2e401fbe.png)
弹出的驱动安装即可
![](https://i-blog.csdnimg.cn/direct/559182b767ab45df8730c50a68143433.png)
三、ESP32库
Arduino-ESP32库,也称为Arduino core for ESP32,是Espressif Systems为Arduino社区提供的一个开发框架,旨在使ESP32芯片能够兼容Arduino IDE和其广泛的生态系统。这个库允许开发者使用熟悉的Arduino编程语言和IDE来开发基于ESP32的项目。
Arduino-ESP32库的特点:
-
兼容性:
- 它使得ESP32芯片可以像其他Arduino兼容板一样使用,这意味着你可以利用Arduino IDE中的所有功能和库。
-
硬件抽象层:
- 提供了硬件抽象层,使开发者能够以标准化的方式访问ESP32的硬件资源,如GPIO、ADC、DAC、SPI、I2C、UART等。
-
丰富的库支持:
- 包括了Arduino IDE自带的库,同时也支持第三方库的安装和使用,极大地扩展了开发者的工具箱。
-
网络功能:
- ESP32内置了WiFi和蓝牙功能,Arduino-ESP32库提供了相应的库来方便地使用这些无线通信功能。
-
易于使用:
- 通过简单的安装过程即可在Arduino IDE中使用,降低了开发门槛,使得即使是初学者也能快速上手。
-
性能和功能:
- ESP32芯片本身具有双核处理器、高速RAM和大量闪存,提供了比传统Arduino板更高的性能,同时Arduino-ESP32库充分利用了这些硬件资源。
安装和使用Arduino-ESP32库:
-
添加ESP32板的支持:
- 在Arduino IDE的“首选项”中,将ESP32的板管理器URL添加到“附加的板管理器URLs”。
-
安装库:
- 通过Arduino IDE的“工具”>“板”>“板管理器”,找到并安装ESP32板的库。
-
选择ESP32板:
- 在“工具”菜单中选择ESP32板的具体型号。
-
开始编程:
- 现在你可以使用Arduino IDE创建、编辑、编译和上传程序到ESP32板上。
Arduino-ESP32库极大地拓展了Arduino平台的能力,不仅保持了Arduino的易用性,还增加了ESP32的强大功能,使之成为物联网(IoT)项目、无线通信和数据采集的理想选择。
四、Arduino-ESP32库配置
![](https://i-blog.csdnimg.cn/direct/5357138cc3ec4298b79ed17a11b56a73.png)
由于GitHub上下载容易失败推荐离线安装
![](https://i-blog.csdnimg.cn/direct/50eb6d8f8a7a408f948f93513af1502a.png)
![](https://i-blog.csdnimg.cn/direct/2d480c62c5344ecda67d69de45912d58.png)
![](https://i-blog.csdnimg.cn/direct/fd951843be4848298f735fb26b8b1db4.png)
![](https://i-blog.csdnimg.cn/direct/42029f29206744339f7cbd7273d46454.png)
离线安装
![](https://i-blog.csdnimg.cn/direct/abbb780ea72248c586f321087daa613e.png)
![](https://i-blog.csdnimg.cn/direct/90568b12a5744e5f90ebc8a5bd788127.png)
![](https://i-blog.csdnimg.cn/direct/7d57c6df126e42358c2d5d7846f9eb58.png)
![](https://i-blog.csdnimg.cn/direct/3389c2a88b4743f69b01965a6711ee63.png)
GitHub相关文件
在 GitHub 下载,再安装编译
乐鑫GitHub
arduino-esp32
![](https://i-blog.csdnimg.cn/direct/6e1a7996b7334cf2ae08984ad5af86f0.png)
git branch -a
git checkout esp32-s3-surpport 分支
![](https://i-blog.csdnimg.cn/direct/d54c717bf7eb47f9a80775de364eec0e.png)
五、新建ESP32-S3N15R8工程文件
![](https://i-blog.csdnimg.cn/direct/31806064ec8643b8a4c367db2e48696c.png)
详细说明:
ESP32-S3 Arduino工程参数配置
![](https://i-blog.csdnimg.cn/direct/8a02390cabac4e29bd525a7521b9e4e0.png)
![](https://i-blog.csdnimg.cn/direct/9cff059fd9254fc4a037e2330491d8ce.png)
![](https://i-blog.csdnimg.cn/direct/8acc1dceec16498eb2026c071329cf68.png)
![](https://i-blog.csdnimg.cn/direct/fabd89525ebe4832aad95dbcc5412cf8.png)
![](https://i-blog.csdnimg.cn/direct/98853d9db2744e78853bcf4424eaf01c.png)
运行ESP32-S3 Arduino工程
- 用串口线连接开发板的UART口
- IDE上选择对应端口号
![](https://i-blog.csdnimg.cn/direct/ded5574f270245789d9a8c2d25c164c5.png)
- 简单编写几行代码
- 编译下载
![](https://i-blog.csdnimg.cn/direct/5bb2e7f0589647738ee850f00b6803d1.png)
![](https://i-blog.csdnimg.cn/direct/46babefb484b4d6db98c0c4827afe0c3.png)
- 查看代码运行效果
![](https://i-blog.csdnimg.cn/direct/b47d356905334ad19fc2f328864febf3.png)
调用示例代码
![](https://i-blog.csdnimg.cn/direct/941d50c6f205412fb8fe8a04a9457185.png)
![](https://i-blog.csdnimg.cn/direct/908e872e644540fcbd2520c846ea2cd5.png)