ESP32入门搭建Arduino开发环境基于mac系统
1.概述
ESP32开发版作为物联网开发非常的方便,不过在入门时候搭建Arduino开发环境比较麻烦,因为Arduino在下载ESP32开发环境时总是失败,因此不得不采用手动安装环境方式。
 这篇文章主要介绍mac系统如何手动安装ESP32开发环境。
2.使用Arduino自动搭建ESP32开发环境
打开Arduino开发工具,然后在左上角导航栏点击Arduino IDE,在子菜单选择Preferences,打开设置界面。
 
在设置界面的Additional boards manager URLs位置添加json文件地址https://espressif.github.io/arduino-esp32/package_esp32_index.json
 
 点击Tools工具菜单,在子菜单中点击Board,选择Board Manager
 
 搜索esp32,然后选择esp32 by Espressif,选择版本号为3.0.3 点击安装
然后就是提示下载失败,安装不成功。所以不推荐使用自动安装,用下面的手动安装省时又能成功。
3.手动搭建ESP32开发环境
手动搭建开发环境需要下载esp32包,这些包都在github上基本上加载都会失败过程很艰辛,如果是常规方式下载基本都是绝望,搞个几天都不一定能成功。
 为了大家能顺利搭建环境,我这里已经把需要的包都下载好了。
链接: https://pan.baidu.com/s/1djrcET9eUEMrexRIh2gPDg?pwd=s9hv 提取码: s9hv
如果使用Arduino自动下载ESP32开发环境失败了,那么我们不得不使用手动方式搭建环境,那么如何手动搭建环境那,要解决这个问题其实也不难,那就是搞懂自动安装的原理就可以这个问题就解决了。
 下面就采用问答形式介绍手动安装的方法。
1.问题一自动安装环境都做了什么?
第一步
 使用Arduino工具自动安装,首先需要配置ESP32的安装文件,就是上面介绍的在Arduino的Preferences菜单中配置的https://espressif.github.io/arduino-esp32/package_esp32_index.json 文件。
第二步
 根据文件中的配置依次下载需要的工具包,将包下载到指定位置后,即为安装成功。
2.手动安装需要怎么做?
当我们知道了自动安装做的事情后,那么手动安装就是将自动安装时下载失败的文件通过手动下载,放到指定的位置即可。
3.如何知道需要下载什么文件那?
第一步:查看esp32json文件
首先打开ESP官网提供文件的网站地址:https://docs.espressif.com/projects/arduino-esp32/en/latest/installing.html
 打开网站提供的json文件
 https://espressif.github.io/arduino-esp32/package_esp32_index.json
 该文件记录了所有ESP32版本安装包信息和依赖包的信息,下面以下载最新版本esp32-3.0.3为例介绍如何使用该文件找到需要下载的文件。
这个文件虽然很长,但是它提供的信息只有两个
- esp32下载地址
 - esp32依赖工具下载地址
 
esp32json文件查找esp32和依赖工具下载地址方法:
 platforms:列表存放的是所有版本的esp32版本信息和tools依赖的工具包。
- boards:支持哪些esp32芯片型号的板子
 - toolsDependencies:当前esp32版本依赖的工具包
 
{
    "packages": [
        {
            "name": "esp32",
            "maintainer": "Espressif Systems",
            "websiteURL": "https://github.com/espressif/arduino-esp32",
            "email": "hristo@espressif.com",
            "help": {
                "online": "http://esp32.com"
            },
            //ESP32版本信息、支持的开发版型号信息、依赖包信息
            "platforms": [
                {
                    "name": "esp32",
                    "architecture": "esp32",
                    "version": "3.0.3",
                    "category": "ESP32",
                    "url": "https://github.com/espressif/arduino-esp32/releases/download/3.0.3/esp32-3.0.3.zip",
                    "archiveFileName": "esp32-3.0.3.zip",
                    "checksum": "SHA-256:b4aa70711293955a9835ad641279dc7cd524aeb405f7d294afa05c2ece7ded45",
                    "size": "23920341",
                    "help": {
                        "online": ""
                    },
                    "boards": [
                        {
                            "name": "ESP32 Dev Board"
                        },
                        {
                            "name": "ESP32-S2 Dev Board"
                        },
                        {
                            "name": "ESP32-S3 Dev Board"
                        },
                        {
                            "name": "ESP32-C3 Dev Board"
                        },
                        {
                            "name": "Arduino Nano ESP32"
                        }
                    ],
                    //依赖工具包信息
                    "toolsDependencies": [
                        {
                            "packager": "esp32",
                            "name": "esp32-arduino-libs",
                            "version": "idf-release_v5.1-dc859c1e67"
                        },
                        {
                            "packager": "esp32",
                            "name": "esp-x32",
                            "version": "2302"
                        },
                        {
                            "packager": "esp32",
                            "name": "esp-xs2",
                            "version": "2302"
                        },
                        {
                            "packager": "esp32",
                            "name": "esp-xs3",
                            "version": "2302"
                        },
                        {
                            "packager": "esp32",
                            "name": "xtensa-esp-elf-gdb",
                            "version": "12.1_20231023"
                        },
                        {
                            "packager": "esp32",
                            "name": "esp-rv32",
                            "version": "2302"
                        },
                        {
                            "packager": "esp32",
                            "name": "riscv32-esp-elf-gdb",
                            "version": "12.1_20231023"
                        },
                        {
                            "packager": "esp32",
                            "name": "openocd-esp32",
                            "version": "v0.12.0-esp32-20240318"
                        },
                        {
                            "packager": "esp32",
                            "name": "esptool_py",
                            "version": "4.6"
                        },
                        {
                            "packager": "esp32",
                            "name": "mkspiffs",
                            "version": "0.2.3"
                        },
                        {
                            "packager": "esp32",
                            "name": "mklittlefs",
                            "version": "3.0.0-gnu12-dc7f933"
                        },
                        {
                            "packager": "arduino",
                            "name": "dfu-util",
                            "version": "0.11.0-arduino5"
                        }
                    ]
                },
 
第二步:根据esp32.json文件找到esp32下载地址
 根据json文件提供的信息,首先找到esp32-3.0.3版本下载地址
 "platforms": [
                {
                    "name": "esp32",
                    "architecture": "esp32",
                    "version": "3.0.3",
                    "category": "ESP32",
                    "url": "https://github.com/espressif/arduino-esp32/releases/download/3.0.3/esp32-3.0.3.zip",
 
第三歩:查找依赖包下载地址
 根据toolsDependencies提供的依赖包名称,分别复制他们的名称然后查询,在文档的下面会列出他们的下载地址。
 需要注意这里会提供不同版本号和不同操作系统对应的下载地址,因此在下载时需要注意选择正确的版本号和电脑的操作系统下载。
 版本号:我的esp版本号是3.0.3,因此下载依赖包也是3.0.3
 系统:我用的是苹果系统,下载host为x86_64-apple-darwin
"tools": [
                {
                    "name": "esp32-arduino-libs",
                    "version": "idf-release_v5.1-dc859c1e67",
                    "systems": [
                        {
                        // windows系统32位
                            "host": "i686-mingw32",
                            "url": "https://github.com/espressif/arduino-esp32/releases/download/3.0.3/esp32-arduino-libs-3.0.3.zip",
                            "archiveFileName": "esp32-arduino-libs-3.0.3.zip",
                            "checksum": "SHA-256:23618328d3cc3d2eabc269196be22af5b2353583d5f6ec14b3ef0cf11e7da7ba",
                            "size": "305530538"
                        },
                         // windows系统64位
                        {
                            "host": "x86_64-mingw32",
                            "url": "https://github.com/espressif/arduino-esp32/releases/download/3.0.3/esp32-arduino-libs-3.0.3.zip",
                            "archiveFileName": "esp32-arduino-libs-3.0.3.zip",
                            "checksum": "SHA-256:23618328d3cc3d2eabc269196be22af5b2353583d5f6ec14b3ef0cf11e7da7ba",
                            "size": "305530538"
                        },
                        {
                            "host": "arm64-apple-darwin",
                            "url": "https://github.com/espressif/arduino-esp32/releases/download/3.0.3/esp32-arduino-libs-3.0.3.zip",
                            "archiveFileName": "esp32-arduino-libs-3.0.3.zip",
                            "checksum": "SHA-256:23618328d3cc3d2eabc269196be22af5b2353583d5f6ec14b3ef0cf11e7da7ba",
                            "size": "305530538"
                        },
                        {
                            "host": "x86_64-apple-darwin",
                            "url": "https://github.com/espressif/arduino-esp32/releases/download/3.0.3/esp32-arduino-libs-3.0.3.zip",
                            "archiveFileName": "esp32-arduino-libs-3.0.3.zip",
                            "checksum": "SHA-256:23618328d3cc3d2eabc269196be22af5b2353583d5f6ec14b3ef0cf11e7da7ba",
                            "size": "305530538"
                        },
                        {
                            "host": "x86_64-pc-linux-gnu",
                            "url": "https://github.com/espressif/arduino-esp32/releases/download/3.0.3/esp32-arduino-libs-3.0.3.zip",
                            "archiveFileName": "esp32-arduino-libs-3.0.3.zip",
                            "checksum": "SHA-256:23618328d3cc3d2eabc269196be22af5b2353583d5f6ec14b3ef0cf11e7da7ba",
                            "size": "305530538"
                        },
 
下面是整理好的esp32需要的所有依赖工具包地址,注意他们对应的是
 esp32版本号:3.0.3
 操作系统:苹果系统
"name":"esp32-arduino-libs-3.0.3",
"host": "x86_64-apple-darwin",
"url": "https://github.com/espressif/arduino-esp32/releases/download/3.0.3/esp32-arduino-libs-3.0.3.zip",
"name":"esp-x32",
"host": "x86_64-apple-darwin",
"url": "https://github.com/espressif/crosstool-NG/releases/download/esp-12.2.0_20230208/xtensa-esp32-elf-12.2.0_20230208-x86_64-apple-darwin.tar.gz",
"name":"esp-xs2",
"host": "x86_64-apple-darwin",
"url": "https://github.com/espressif/crosstool-NG/releases/download/esp-12.2.0_20230208/xtensa-esp32s2-elf-12.2.0_20230208-x86_64-apple-darwin.tar.gz",
"name":"esp-xs3",
"host": "x86_64-apple-darwin",
"url": "https://github.com/espressif/crosstool-NG/releases/download/esp-12.2.0_20230208/xtensa-esp32s3-elf-12.2.0_20230208-x86_64-apple-darwin.tar.gz",
"name":"xtensa-esp-elf-gdb",
"host": "x86_64-apple-darwin",
"url": "https://github.com/espressif/binutils-gdb/releases/download/esp-gdb-v12.1_20231023/xtensa-esp-elf-gdb-12.1_20231023-x86_64-apple-darwin14.tar.gz",
"name":"esp-rv32",
"host": "x86_64-apple-darwin",
"url": "https://github.com/espressif/crosstool-NG/releases/download/esp-12.2.0_20230208/riscv32-esp-elf-12.2.0_20230208-x86_64-apple-darwin.tar.gz"
"name":"riscv32-esp-elf-gdb"
"host": "x86_64-apple-darwin",
"url": "https://github.com/espressif/binutils-gdb/releases/download/esp-gdb-v12.1_20231023/riscv32-esp-elf-gdb-12.1_20231023-x86_64-apple-darwin14.tar.gz",
"name":"openocd-esp32",
"host": "x86_64-apple-darwin",
"url": "https://github.com/espressif/openocd-esp32/releases/download/v0.12.0-esp32-20240318/openocd-esp32-macos-0.12.0-esp32-20240318.tar.gz",
"name":"esptool_py",
"host": "x86_64-apple-darwin",
"url": "https://github.com/espressif/arduino-esp32/releases/download/2.0.9/esptool-v4.6-macos.tar.gz",
"name":"mkspiffs",
"host": "x86_64-apple-darwin",
"url":"https://github.com/earlephilhower/esp-quick-toolchain/releases/download/3.0.0-gnu12/x86_64-apple-darwin14.mklittlefs-c41e51a.200706.tar.gz",
"name": "dfu-util",
 
4.文件安装地址在哪里?
将下载好的文件拷贝到 /Users/你的用户名文件夹/Library/Arduino15/staging/packages目录
注意:
 如果系统中不显示Arduino15文件夹,则执行下面的操作
在Finder菜单栏中,单击View > Show View Options,并勾选显示库文件夹。Arduino15文件夹现在可以在{username}/Library中找到
3.1.搭建esp32环境实操例子
1.配置esp32安装源文件
打开Arduino开发工具,然后在左上角导航栏点击Arduino IDE,在子菜单选择Preferences,打开设置界面。
 
在设置界面的Additional boards manager URLs位置添加json文件地址https://espressif.github.io/arduino-esp32/package_esp32_index.json
 
2.拷贝esp32包文件到安装路径下
在手动搭建ESP32开发环境 章节中分享了esp32包的下载地址,从网盘下载esp32安装包。
然后解压缩安装包,将文件夹里面所有的文件复制到
 /Users/你的用户名称文件夹/Library/Arduino15/staging/packages目录下。
网盘下载后解压后的文件如下
 
将所有文件复制到安装路径下
 
3.安装esp32开发环境
点击Tools工具菜单,在子菜单中点击Board,选择Board Manager
 
 搜索esp32,然后选择esp32 by Espressif,选择版本号为3.0.3 点击安装

 这个时候他会到安装目录中检测,需要的包是否存在,如果存在则不会再去下载。只执行安装程序。
 下图是安装成功截图
 
 安装成功后,可以到下面目录查看已安装的开发环境。
 /Users/你的名字文件夹/Library/Arduino15/packages

3.2.安装驱动
芯片常用的驱动有两种,通常使用CP210x和CH340两种驱动,根据自己手中开发板的硬件驱动型号,选择下面介绍下如何安装。
1.安装CP2102
1.打开下载地址
 https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers
网盘地址
链接: https://pan.baidu.com/s/1BfQ-xntl6q2acSAbtu-KvA?pwd=53is 提取码: 53is
2.选择对应的系统下载
 
 3.下载后,安装即可
2.安装CH340驱动
1.下载地址
 https://www.wch.cn/downloads/CH34XSER_MAC_ZIP.html
 网盘分享
链接: https://pan.baidu.com/s/1Nrq6XB5cjc3S-Pq0bBd-pQ?pwd=engg 提取码: engg
下载后解压,进入文件夹,选择dmg后缀文件安装。
 
3.2.测试是否安装成功
1.点击Tools工具栏在下拉菜单选择Board在选择esp32,然后选择ESP32 Dev Module
 
2.点击Tools工具栏在下拉菜单选择Port ,然后选择自己的端口号。
 这个是CH340驱动,注意安装后重启下电脑。
 显示cu.wchusbserial就可以了,如果是其他的名称上传时候可能会报错。
 
3.上传程序
 上传成功后开发板上自带的D2 led灯开始闪烁,证明开发环境搭建完成。
void setup() {
  pinMode(2, OUTPUT);
}
void loop() {
  digitalWrite(2, HIGH);
  delay(1000);
  digitalWrite(2, LOW);
  delay(1000);
}
 




















