esp32的开发有两种环境,分别是 Arduino 和 esp32-idf。

Arduino 是在 esp32-idf 基础上进行封装的,虽然使用起来比较方便,但是能自由更改的就变少了,适合新手使用。

esp32-idf 开发难度会大一些,但是可操作空间也会大一些。

一、准备材料

二、esp-idf安装

esp-idf安装有两种方式,分别是手动安装和 esp-idf 安装工具安装。

以前还没有 esp-idf 安装工具时,在Windows环境下安装就会异常困难,但是现在推荐使用 esp-idf 安装工具安装,将会异常简单。

2.1 esp-idf工具安装器

  1. 下载esp-idf工具安装器

  2. 根据需要选择安装包,因为我不使用乐鑫的idf编辑器,所以我下载了最新的idf

  3. 双击安装包

  4. 选择语言

  5. 同意协议

  6. 检查安装环境

  7. 设置工具的安装路径

  8. 选择需要安装的组件

  9. 安装

  10. 安装完成

2.2 esp-idf 手动安装

  1. 获取 esp-idf

    GitHub:https://github.com/espressif/esp-idf

    git 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
  2. Cmake 安装

    详细安装见:https://www.cnblogs.com/jzcn/p/16733956.html

  3. Ninja/idf.py 安装

    详细安装见:Ninja安装:https://www.jianshu.com/p/2f93fd6a64c9

    注意:Ninja目前只支持64位的系统,如果是32位的系统只能使用idf.py

  4. Python 安装

    详细安装见:https://www.cnblogs.com/jzcn/p/16733969.html

    Python 安装完成后,从 Windows 中打开“命令提示符”窗口,并运行以下命令:

    pip install --user pyserial
  5. 工具链下载

    下载地址:https://dl.espressif.com/dl/xtensa-esp32-elf-gcc8_4_0-esp-2021r2-patch3-win32.zip

  6. 完成

    到此环境需要的工具基本就安装完成了,对于不熟悉这些工具的朋友来说还是比较麻烦的,在esp-idf也写了自动安装的脚本,详细见2.3

2.3 esp-idf 脚本安装

  1. 下载 esp-idf

    git clone -b v4.4.2 --recursive https://github.com/espressif/esp-idf.git

    esp-idf 从GitHub中下载完成后,可以看到其中有 install 和 export 两个文件,如下图所示:

  2. 执行脚本安装

    进入 esp-idf 路径下执行命令

    install.bat esp32s3         # CMD中执行
    ./install.ps1 esp32s3 # Windows PowerShell

    注意:

    可以一次安装多个目标,如./install.sh esp32,esp32c3,esp32s3

    安装的工具默认路径是 %USERPROFILE%\.espressif, 想要更改安装位置,请在执行命令前将自己需要安装的路径设置环境,变量名为 IDF_TOOLS_PATH

  3. 配置环境变量

    在 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 CMDESP-IDF 4.4 PowerShell进入项目目录,执行下面命令

  1. 配置开发板信息

    idf.py set-target esp32s3
  2. 编译工程

    在项目主路径下执行下面命令

    idf.py build
  3. 下载

    idf.py -p PORT [-b BAUD] flash

    idf.py -p PORT COM7 flash

  4. 打开串口显示窗口

    idf.py -p PORT monitor

    注意:运行idf.py -p PORT flash monitor命令,可以一次性执行构建、烧录和监视过程。

五、使用技巧

  1. 配置 esp32 信息

    配置 esp32 相关信息可以直接打开项目中的sdkconfig文件直接配置,如下图所示:

    当然也可以通过图形界面进行配置

    idf.py menuconfig

    **注意这个图形配置界面在CMD中可能不能正常运行,换用 PowerShell 即可

  2. 在 CMD 或 PowerShell 中使用 idf.py 命令

    当打开 CMD 或 PowerShell 时,窗口会自动添加一些路径,如下图所示:



    从图中可以看出,只需要将这些路径添加到环境变量中即可。

六、问题

  1. 执行策略问题



    解决办法:

    以管理员身份打开 PowerShell 执行下面命令
    get-executionpolicy
    set-executionpolicy remotesigned

参考文献

Ninja安装:https://www.jianshu.com/p/2f93fd6a64c9

esp-idf 安装(Windows )的更多相关文章

  1. mac+win10:UEFI分区方式下安装windows 10

    小编,最近通过在远景论坛上寻找教程--安装双系统(win10+mac os).经过一天努力,成功安装win10.为此,特地分享给各位正在需求教程的朋友,我在UEFI分区方式下安装windows 10的 ...

  2. 删除EFI系统分区(ESP)后Windows无法启动,重建引导分区并修复启动的过程

    @ 目录 一.开机故障描述 二.工具: 三.什么是EFI系统分区 四.如何查看EFI系统分区 五.删除后如何重建系统分区 1.建立未分配空间 2.建立ESP分区 3.按下图,ESP分区的大小200M即 ...

  3. [原创]Macbook Pro Retina 15吋安装Windows 7和Windows 8.1方法

    前言 本以为有Bootcamp神器在手,Macbook装Win系统应该是不在话下,没想到着实折腾了一番.期间因为误操作导致OSX也挂掉进不去只得磁盘全部抹掉网络恢复安装.为了让大家少走弯路,提供个人安 ...

  4. 如何在VMware中安装Windows Phone SDK 8.0 (支持模拟器调试)

    相信很多开发者目前的系统还是Win7或Mac,一般不会为了开发某个程序而重装系统,所以我们就需要用到VMware这类的虚拟机来模拟预期的开发环境.在开始介绍前,给大家说明下我当前的软硬件环境,本文所讲 ...

  5. Windows无法完成安装,若要在此计算机上安装Windows,请中心启动安装。

    现在安装系统已经很简单了,我觉得U盘启动的话两步就差不多了, 壹:设置BIOS,将U盘启动作为系统默认启动选项 贰:直接进去大白菜之类的,一键安装... 今天终于看到第三部了, 报错:Windows无 ...

  6. 安装windows服务批处理代码

    批处理是DOS时代比较常用的方法之一,目前来说也是一种高效的方法,复制代码到文本文件中,保存并修改文件扩展名为“*.bat”. 安装windows服务批处理代码如下: @echo off set fi ...

  7. Mac安装Windows 10的简明教程

    每次在Mac上安装Windows都是一件非常痛苦的事情,曾经为了装Win8把整台Mac的硬盘数据都弄丢了,最后通过龟速系统恢复模式恢复了MacOSX(50M电信光纤下载了3天才把系统下载完),相信和我 ...

  8. 如何让老Mac机支持USB安装Windows

    一些老Mac机的用户想装Windows,却发现自己的系统上的Boot Camp Assistant(以下简称BCA)没有USB安装Windows的选项. 下面以我的MacBook Pro (13-in ...

  9. Mac安装windows虚拟机攻略

    5月初从阿里滚粗,然后失去了公司发的Mac Air.说实话Mac机器确实比windows好用一些,于是怒而买了一个Mac Pro. 结果一个星期后我从学校带出来的联想笔记本又被老师通知要进行固定资产盘 ...

  10. Mac系统下使用VirtualBox虚拟机安装win7--第三步 在虚拟机上安装 Windows 7

    第三步 在虚拟机上安装 Windows 7 等待虚拟机进入 Windows 7 的安装界面以后,在语言,货币,键盘输入法这一面,建议保持默认设置,直接点击“下一步”按钮,如图所示

随机推荐

  1. 类型转换_str()函数与int()函数

    数据类型转换 需要将不同数据类型拼接在一起的时候就需要先进行数据类型转换 str+str//这里的+叫做连接字符,有点类似C++中的操作符重载,老对象里面的内容了 在python中整型和字符串类型不能 ...

  2. el-form 每行显示两列,底部按钮居中

    需求: el-form 每行显示两列,底部按钮居中 问题: 以前的解决办法是: el-col, el-row.但是这里只有一个 el-form-item 的 label 数据是已知的,其余项都是循环得 ...

  3. JAVA定时任务原理入门

    本文适用语言:java 序章:定时任务实现方式 当下,java编码过程中,实现定时任务的方式主要以以下两种为主 spring框架的@Scheduled quzrtz框架 网络上关于这两种框架的实践和配 ...

  4. 一款性价比很高的PLC网关如何采集西门子PLC到Thingsboard

    PLC转MQTT网关金鸽BL100 西门子S7-200smart对接thingsboardBL102是一款采集西门子.三菱.欧姆龙.台达.AB.施耐德等各种PLC数据转换为Modbus TCP.OPC ...

  5. Vue3系列1--配置环境和创建项目

    1.安装nodejs(建议最新版本) 下载地址:下载 | Node.js 中文网 在安装的过程中建议不要装在C盘,安装完成配置环境变量,并且建议讲缓存路径更改. 安装完成后通过查看nodejs版本和n ...

  6. 使用Python3.7配合协同过滤算法(base on user,基于人)构建一套简单的精准推荐系统(个性化推荐)

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_136 时至2020年,个性化推荐可谓风生水起,Youtube,Netflix,甚至于Pornhub,这些在互联网上叱咤风云的流媒体 ...

  7. 6.22 NOI 模拟

    \(T1\)递归 给出 \(Thue-Morse\) 序列的定义三 每次 \(0\rightarrow 01\),\(1\rightarrow 10\) \(0\rightarrow 01 \righ ...

  8. 2019国家集训队论文《整点计数》命题报告 学习笔记/Min25

    \(2019\)国家集训队论文<整点计数>命题报告 学习笔记/\(Min25\) 补了个大坑 看了看提交记录,发现\(hz\)的\(xdm\)早过了... 前置知识,\(HAOI\)< ...

  9. 源码解析springbatch的job是如何运行的?

    202208-源码解析springbatch的job是如何运行的? 注,本文中的demo代码节选于图书<Spring Batch批处理框架>的配套源代码,并做并适配springboot升级 ...

  10. html + css 实现无需 js 的打字效果

    以前要达到类似在电脑上打字的效果,需要 js+html.今天我将介绍一种新方法.本文主要介绍纯 html+css 实现打字效果,有一定的参考价值,大家可以学习一下.提供所有代码,可以直接使用. 一.原 ...