快速入门
本文档旨在指导用户搭建 ESP-IoT-Solution (Espressif IoT Solution) 开发环境,通过一个简单的示例展示如何使用 ESP-IoT-Solution 搭建环境、创建工程、编译和下载固件至 ESP 系列开发板等步骤。
ESP-IoT-Solution 简介
ESP-IoT-Solution 包含物联网系统开发中常用的外设驱动和代码框架,可提供 ESP-IDF 的补充组件,方便用户实现更简单的开发,其中包含的内容如下:
传感器、显示屏、音频设备、输入设备、执行机构等设备驱动;
低功耗、安全加密、存储方案等代码框架或说明文档;
从实际应用的角度出发,为乐鑫开源解决方案提供了入口指引。
ESP-IoT-Solution 版本
不同版本的 ESP-IoT-Solution 说明如下:
ESP-IoT-Solution 版本 |
对应的 ESP-IDF 版本 |
主要变更 |
支持状态 |
---|---|---|---|
master |
>=v4.4 |
支持组件管理器,增加支持新的芯片支持 |
新功能开发分支 |
release/v1.1 |
v4.0.1 |
IDF 版本更新,删除已经移动到其它仓库的代码 |
停止维护 |
release/v1.0 |
v3.2.2 |
历史版本 |
停止维护 |
master
分支使用 ESP 组件管理器
来管理组件,因此每个组件都是一个单独的软件包,每个包可能支持不同版本的 ESP-idf,这些版本将在组件的 idf_component.yml
文件中声明。
ESP-IDF 简介
ESP-IDF 是乐鑫为 ESP 系列芯片提供的物联网开发框架:
ESP-IDF 包含一系列库及头文件,提供了基于 ESP SoC 构建软件项目所需的核心组件;
ESP-IDF 还提供了开发和量产过程中最常用的工具及功能,例如:构建、烧录、调试和测量等。
备注
详情请查阅:ESP-IDF 编程指南。
ESP 系列 SoC 简介
您可以选择任意 ESP 系列开发板使用 ESP-IoT-Solution,或者选择 板级支持组件 中支持的开发板快速开始。
ESP 系列 SoC 支持以下功能:
2.4 GHz Wi-Fi
蓝牙
高性能单核、双核处理器,运行频率可达 240 MHz
超低功耗协处理器
多种外设,包括 GPIO、I2C、I2S、SPI、UART、SDIO、RMT、LEDC PWM、Ethernet、TWAI、Touch、USB OTG 等
丰富的内存资源,内部 RAM 可达 520 KB,同时支持扩展 PSRAM
支持硬件加密等安全功能
ESP 系列 SoC 采用 40nm 工艺制成,具有最佳的功耗性能、射频性能、稳定性、通用性和可靠性,适用于各种应用场景和不同功耗需求。
备注
不同系列 SoC 配置不同,详情请查阅 ESP 产品选型工具。
配置开发环境
1. 安装 ESP-IDF
由于 ESP-IoT-Solution 依赖 ESP-IDF 的基础功能和编译工具,因此首先需要参考 ESP-IDF 详细安装步骤 完成 ESP-IDF 开发环境的搭建。请注意,不同版本的 ESP-IoT-Solution 依赖的 ESP-IDF 版本可能不同,请参考 ESP-IoT-Solution 版本 进行选择。
2. 获取 ESP-IoT-Solution
若选择 master
版本,可使用以下指令获取代码:
git clone --recursive https://github.com/espressif/esp-iot-solution
对于 release/v1.1
版本,可使用以下指令获取代码:
git clone -b release/v1.1 --recursive https://github.com/espressif/esp-iot-solution
对于其它版本,请将 release/v1.1
替换成目标分支名。
使用 ESP-IoT-Solution 组件
如果您只想使用 ESP-IoT-Solution 中的组件,我们建议您从 ESP 组件注册表 ESP Component Registry 中使用它。
ESP-IoT-Solution 中注册的组件可在 README_CN.md 中查阅,您可以在项目根目录下使用 idf.py add-dependency
命令直接将组件从 Component Registry 添加到项目中。例如,执行 idf.py add-dependency "espressif/usb_stream"
命令添加 usb_stream
,该组件将在 CMake
步骤中自动下载。
请参考 IDF Component Manager 查看更多关于组件管理器的细节.
编译和下载
1. 设置环境变量
以上步骤安装的代码和工具尚未添加至 PATH 环境变量,无法通过终端窗口使用这些工具。添加环境变量的步骤如下:
添加 ESP-IDF 环境变量:
Windows 在 CMD 窗口运行:
%userprofile%\esp\esp-idf\export.bat
Linux 和 macOS 在终端运行:
. $HOME/esp/esp-idf/export.sh
请将以上指令中的路径,替换成实际安装路径。
添加 IOT_SOLUTION_PATH 环境变量:
Windows 在 CMD 窗口运行:
set IOT_SOLUTION_PATH=C:\esp\esp-iot-solution
Linux 和 macOS 在终端运行:
export IOT_SOLUTION_PATH=~/esp/esp-iot-solution
备注
以上方法设置的环境变量,仅对当前终端有效,如果打开新终端,请重新执行以上步骤。
2. 设置编译目标
ESP-IDF 同时支持 esp32
、esp32s2
等多款芯片,因此需要在编译代码之前设置的编译目标芯片(默认编译目标为 esp32
),例如设置编译目标为 esp32s2
:
idf.py set-target esp32s2
对于 ESP-IoT-Solution 中基于 板级支持组件 开发的 example,还可以使用 menuconfig
在 Board Options -> Choose Target Board
中选择一个目标开发板:
idf.py menuconfig
3. 编译、下载程序
使用 idf.py
工具编译、下载程序,指令为:
idf.py -p PORT build flash
请将 PORT 替换为当前使用的端口号,Windows 系统串口号一般为 COMx
,Linux 系统串口号一般为 /dev/ttyUSBx
,macOS 串口号一般为 /dev/cu.
。
4. 串口打印 log
使用 idf.py
工具查看 log,指令为:
idf.py -p PORT monitor
请将 PORT
替换为当前使用的端口号,Windows 系统串口号一般为 COMx
,Linux 系统串口号一般为 /dev/ttyUSBx
,macOS 串口号一般为 /dev/cu.
。