esp-idf 安装(Windows )
esp32的开发有两种环境,分别是 Arduino 和 esp32-idf。
Arduino 是在 esp32-idf 基础上进行封装的,虽然使用起来比较方便,但是能自由更改的就变少了,适合新手使用。
esp32-idf 开发难度会大一些,但是可操作空间也会大一些。
一、准备材料
-
硬件:
一款 ESP32-S3 开发板
USB 数据线 (A 转 Micro-B)
电脑(Windows、Linux 或 Mac OS) -
软件:
环境:esp-idf
编译工具:CMake + Ninja 或 CMake + idf.py
代码编辑器:VSCode、esp-ide、Notepad++等 -
网站资源
乐鑫官网:https://www.espressif.com.cn/zh-hans/products/sdks/esp-idf
Cmake官网:https://cmake.org/
Ninja官网:https://ninja-build.org/
二、esp-idf安装
esp-idf安装有两种方式,分别是手动安装和 esp-idf 安装工具安装。
以前还没有 esp-idf 安装工具时,在Windows环境下安装就会异常困难,但是现在推荐使用 esp-idf 安装工具安装,将会异常简单。
2.1 esp-idf工具安装器
-
根据需要选择安装包,因为我不使用乐鑫的idf编辑器,所以我下载了最新的idf
-
双击安装包
-
选择语言
-
同意协议
-
检查安装环境
-
设置工具的安装路径
-
选择需要安装的组件
-
安装
-
安装完成
2.2 esp-idf 手动安装
-
获取 esp-idf
GitHub:https://github.com/espressif/esp-idfgit clone -b v4.4.2 --recursive https://github.com/espressif/esp-idf.git
注意:
git clone 命令的 -b v4.4.2 克隆版本对应的分支。
--recursive
是循环克隆git子项目,如果克隆时没有使用 --recursive 进行循环克隆,可以使用git submodule update --init
命令获取所有子模块cd esp-idf git submodule update --init
-
Cmake 安装
详细安装见:https://www.cnblogs.com/jzcn/p/16733956.html -
Ninja/idf.py 安装
详细安装见:Ninja安装:https://www.jianshu.com/p/2f93fd6a64c9
注意:Ninja目前只支持64位的系统,如果是32位的系统只能使用idf.py -
Python 安装
详细安装见:https://www.cnblogs.com/jzcn/p/16733969.html
Python 安装完成后,从 Windows 中打开“命令提示符”窗口,并运行以下命令:pip install --user pyserial
-
工具链下载
下载地址:https://dl.espressif.com/dl/xtensa-esp32-elf-gcc8_4_0-esp-2021r2-patch3-win32.zip -
完成
到此环境需要的工具基本就安装完成了,对于不熟悉这些工具的朋友来说还是比较麻烦的,在esp-idf也写了自动安装的脚本,详细见2.3
2.3 esp-idf 脚本安装
-
下载 esp-idf
git clone -b v4.4.2 --recursive https://github.com/espressif/esp-idf.git
esp-idf 从GitHub中下载完成后,可以看到其中有 install 和 export 两个文件,如下图所示:
-
执行脚本安装
进入 esp-idf 路径下执行命令install.bat esp32s3 # CMD中执行 ./install.ps1 esp32s3 # Windows PowerShell
注意:
可以一次安装多个目标,如./install.sh esp32,esp32c3,esp32s3
安装的工具默认路径是%USERPROFILE%\.espressif
, 想要更改安装位置,请在执行命令前将自己需要安装的路径设置环境,变量名为IDF_TOOLS_PATH
。 -
配置环境变量
在 esp-idf 路径下执行命令export.bat # CMD中执行 ./export.ps1 # Windows PowerShell
注意:手动安装时,下载的工具多数时GitHub中下载的,所以还是建议采用离线安装的方式比较快
三、创建项目
案例程序在esp-idf/examples的路径下,可以直接将 examples 目录下的 get-started/hello_world 工程拷贝找指定目录进行测试,也可以使用命令进行拷贝,
xcopy /e /i %IDF_PATH%\examples\get-started\hello_world hello_world
注意: ESP-IDF 编译系统不支持带有空格的路径。
四、测试
打开 ESP-IDF 4.4 CMD
或 ESP-IDF 4.4 PowerShell
进入项目目录,执行下面命令
-
配置开发板信息
idf.py set-target esp32s3
-
编译工程
在项目主路径下执行下面命令idf.py build
-
下载
idf.py -p PORT [-b BAUD] flash
如
idf.py -p PORT COM7 flash
-
打开串口显示窗口
idf.py -p PORT monitor
注意:运行
idf.py -p PORT flash monitor
命令,可以一次性执行构建、烧录和监视过程。
五、使用技巧
-
配置 esp32 信息
配置 esp32 相关信息可以直接打开项目中的sdkconfig文件直接配置,如下图所示:
当然也可以通过图形界面进行配置
idf.py menuconfig
**注意这个图形配置界面在CMD中可能不能正常运行,换用 PowerShell 即可
-
在 CMD 或 PowerShell 中使用 idf.py 命令
当打开 CMD 或 PowerShell 时,窗口会自动添加一些路径,如下图所示:
从图中可以看出,只需要将这些路径添加到环境变量中即可。
六、问题
- 执行策略问题
解决办法:
以管理员身份打开 PowerShell 执行下面命令get-executionpolicy set-executionpolicy remotesigned
参考文献
本文来自博客园,作者:浇筑菜鸟,转载请注明原文链接:https://www.cnblogs.com/jzcn/p/16733738.html
如本博客的内容侵犯了你的权益,请与以下地址联系,本人获知后,马上删除。同时本人深表歉意,并致以崇高的谢意! cn_jiaozhu@qq.com