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.htmlNinja/idf.py 安装
详细安装见:Ninja安装:https://www.jianshu.com/p/2f93fd6a64c9
注意:Ninja目前只支持64位的系统,如果是32位的系统只能使用idf.pyPython 安装
详细安装见: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
参考文献
Ninja安装:https://www.jianshu.com/p/2f93fd6a64c9
esp-idf 安装(Windows )的更多相关文章
- mac+win10:UEFI分区方式下安装windows 10
小编,最近通过在远景论坛上寻找教程--安装双系统(win10+mac os).经过一天努力,成功安装win10.为此,特地分享给各位正在需求教程的朋友,我在UEFI分区方式下安装windows 10的 ...
- 删除EFI系统分区(ESP)后Windows无法启动,重建引导分区并修复启动的过程
@ 目录 一.开机故障描述 二.工具: 三.什么是EFI系统分区 四.如何查看EFI系统分区 五.删除后如何重建系统分区 1.建立未分配空间 2.建立ESP分区 3.按下图,ESP分区的大小200M即 ...
- [原创]Macbook Pro Retina 15吋安装Windows 7和Windows 8.1方法
前言 本以为有Bootcamp神器在手,Macbook装Win系统应该是不在话下,没想到着实折腾了一番.期间因为误操作导致OSX也挂掉进不去只得磁盘全部抹掉网络恢复安装.为了让大家少走弯路,提供个人安 ...
- 如何在VMware中安装Windows Phone SDK 8.0 (支持模拟器调试)
相信很多开发者目前的系统还是Win7或Mac,一般不会为了开发某个程序而重装系统,所以我们就需要用到VMware这类的虚拟机来模拟预期的开发环境.在开始介绍前,给大家说明下我当前的软硬件环境,本文所讲 ...
- Windows无法完成安装,若要在此计算机上安装Windows,请中心启动安装。
现在安装系统已经很简单了,我觉得U盘启动的话两步就差不多了, 壹:设置BIOS,将U盘启动作为系统默认启动选项 贰:直接进去大白菜之类的,一键安装... 今天终于看到第三部了, 报错:Windows无 ...
- 安装windows服务批处理代码
批处理是DOS时代比较常用的方法之一,目前来说也是一种高效的方法,复制代码到文本文件中,保存并修改文件扩展名为“*.bat”. 安装windows服务批处理代码如下: @echo off set fi ...
- Mac安装Windows 10的简明教程
每次在Mac上安装Windows都是一件非常痛苦的事情,曾经为了装Win8把整台Mac的硬盘数据都弄丢了,最后通过龟速系统恢复模式恢复了MacOSX(50M电信光纤下载了3天才把系统下载完),相信和我 ...
- 如何让老Mac机支持USB安装Windows
一些老Mac机的用户想装Windows,却发现自己的系统上的Boot Camp Assistant(以下简称BCA)没有USB安装Windows的选项. 下面以我的MacBook Pro (13-in ...
- Mac安装windows虚拟机攻略
5月初从阿里滚粗,然后失去了公司发的Mac Air.说实话Mac机器确实比windows好用一些,于是怒而买了一个Mac Pro. 结果一个星期后我从学校带出来的联想笔记本又被老师通知要进行固定资产盘 ...
- Mac系统下使用VirtualBox虚拟机安装win7--第三步 在虚拟机上安装 Windows 7
第三步 在虚拟机上安装 Windows 7 等待虚拟机进入 Windows 7 的安装界面以后,在语言,货币,键盘输入法这一面,建议保持默认设置,直接点击“下一步”按钮,如图所示
随机推荐
- Note -「因数的欧拉函数求和」
归档. 试证明:\(\sum \limits _{d | x} \varphi (d) = x\) Lemma 1. 试证明:\(\sum \limits _{d | p^k} \varphi (d) ...
- jdbc 12: 悲观锁
jdbc连接mysql,简单演示行级锁 通过debug模式进行演示 在Test1程序设置断点,让程序1,查询并锁定数据,且程序不执行完(此时停在debug断点处) 这时启动Test2程序,去修改已经被 ...
- 记一次 .NET 某RFID标签管理系统 CPU 暴涨分析
一:背景 1. 讲故事 前段时间有位朋友说他的程序 CPU 出现了暴涨现象,由于程序是买来的,所以问题就比较棘手了,那既然找到我,就想办法帮朋友找出来吧,分析下来,问题比较经典,有必要和大家做一下分享 ...
- 1.9. 触摸按钮(touch pad)测试
1.9.1. 基础 Esp32部分GPIO内置了touch按钮功能(电容式),具体有touch功能的引脚在配置为touchpad后,单片机读入的电容值随是否被触碰发生变化,系统根据电容值的变化判断判断 ...
- HMS Core音频编辑服务音源分离与空间音频渲染,助力快速进入3D音频的世界
从单声道.立体声.环绕声发展到三维声,音频回放技术的迭代演进是为了还原真实世界的声音.其中,三维声技术使用信号处理的方法对到达两耳的声音信号进行模拟,将声场还原为三维空间,更接近真实世界.凭借这个技术 ...
- linux-0.11分析:boot文件 head.s 第三篇随笔
head.s 参考 [github这个博主的][ https://github.com/sunym1993/flash-linux0.11-talk ] 改变栈顶位置 _pg_dir: startup ...
- MySQL通配符与正则表达式
通配符 通配符必须全文匹配时才为真,使用LIKE关键字 字符 示例 含义 _ "a_b" 任意一个字符"axb",其中x可以使任意字符,包括汉字 % " ...
- Spring MVC组件之HandlerMapping
Spring MVC组件之HandlerMapping HandlerMapping概述 HandlerMapping组件的作用解析一个个Request请求,并找到相应处理这个Request的Hand ...
- BZOJ4569 [Scoi2016]萌萌哒(并查集,倍增)
类似\(ST表\)的思想,倍增\(log(n)\)地合并 你是我家的吗?不是就来呀啦啦啦.还有要来的吗?没了!那有多少个家就映射多少答案呀 倍增原来这么好玩 #include <iostream ...
- Go语言 WaitGroup 详解
你必须非常努力,才能看起来毫不费力! 微信搜索公众号[ 漫漫Coding路 ],一起From Zero To Hero ! 前言 在前面的文章中,我们使用过 WaitGroup 进行任务编排,Go语言 ...