当前位置: 首页 > news >正文

ESP32-S3学习笔记<1>:ESP-IDF的安装与命令

ESP32-S3学习笔记<1>:ESP-IDF的安装与命令

  • 1. 下载安装包
  • 2. 安装
  • 3. 命令简介
    • 3.1 尝试编译
    • 3.2 创建工程命令
    • 3.2 创建组件
    • 3.3 列出支持的器件/设定目标器件
    • 3.4 编译命令
    • 3.5 项目配置
    • 3.6 下载

1. 下载安装包

点以下地址获取下载安装包:
下载链接
可以直接点击下方的链接去选择版本,也可以选择右侧的release,选择一个之前的版本。

在这里插入图片描述

在新页面中,选择要下载的版本。这里选择带有Espressif-IDE集成开发环境的ESP-IDF版本。这个版本安装好之后,除了有ESP-IDF之外,还有Espressif-IDE这个图形化的开发环境。

在这里插入图片描述

2. 安装

以管理员权限运行安装包。

下面这一步,有时候系统没有开启长路径支持,需要修复一下。我这里之前在系统中已经打开了长路径支持,所以没有提示需要修复。ESP-IDF包含大量的文件层级,导致许多文件路径过长。因此一定要使能长路径支持。

在这里插入图片描述

选择安装路径。我这里选择安装在D盘目录下。安装包会自动添加一个Espressif的尾缀,从而创建文件夹。

在这里插入图片描述

按照需求去勾选一些芯片支持。我取消了一些勾选,发现下方占用空间提示也没有什么变化。因此全勾上也无所谓。

在这里插入图片描述

安装完成后,最后出线如下界面。可以都勾上。然后点击完成

在这里插入图片描述

完成后,会运行ESP-IDF powershellESP-IDF cmd命令行两个窗口。显示内容是完全一样的。

在这里插入图片描述

可以看到,提示Done! You can now compile ESP-IDF projects.。说明ESP-IDF已经安装成功。

安装包会自动添加环境变量IDF_TOOLS_PATH,值为D:\Espressif。之前看到一些教程,还需要手动添加一个环境变量IDF_PATH,值为D:\Espressif\frameworks\esp-idf-v5.3.1(根据真实路径修改)。

3. 命令简介

3.1 尝试编译

D:\Espressif\frameworks\esp-idf-v5.3.1\examples\get-started路径下的几个项目例程中拷贝一个放到某个路径下,先输入命令idf.py build尝试编译一下,看看流程有无问题。第一次编译工程的时间是比较长的,大量的编译工作花费在编译ESP-IDF下的一些组件上。耐心等待。

在这里插入图片描述

编译完成,提示可以烧录。

在这里插入图片描述

3.2 创建工程命令

idf.py create-project aeb

该命令在当前路径下创建一个名为aeb的工程。创建完成后,文件夹下的内容为:

aeb |----main|       |----aeb.c ---------------------> void app_main(void)|       |----CMakeLists.txt|----CMakeLists.txt

命令首先创建一个名为 aeb 的文件夹,在文件夹中再创建一个名为 main 的文件夹。这个文件夹包含工程的顶层源码文件 aeb.c ,该文件定义了应用入口函数 void app_main(void)

#include <stdio.h>void app_main(void)
{}

同时该目录下还包含一个编译配置文件 CMakeLists.txtCMAKE 构建工具在linux开发中经常看到,ESP-IDF 显然也借鉴了这种构建方法。该文件将源码文件 aeb.c 注册为编译组件。

idf_component_register(SRCS "aeb.c"INCLUDE_DIRS ".")

同时,在项目的根目录下,还有一个 CMakeLists.txt。这个等于是项目的构建文件,后续 build的时候,编译工具从这个文件开始获取整个工程的信息并编译。

cmake_minimum_required(VERSION 3.16)include($ENV{IDF_PATH}/tools/cmake/project.cmake)
project(aeb)

3.2 创建组件

idf.py create-component led

该命令在当前目录下创建项目的一个组件。类似于项目的一个部分,比如某个外围设备的驱动或应用代码。组件和前面创建的main共同构成应用(还有ESP-IDF)。实际上也可以不使用这个命令。用这个命令的好处是会自动创建 CMakeLists.txt 这个构建文件。但是这个文件内容比较简单,因此也完全可以自己写.c/.h文件,手动写一个 CMakeLists.txt文件。

3.3 列出支持的器件/设定目标器件

由于 ESP-IDF 支持乐鑫公司的 ESP32 系列多款处理器(前面安装时可以看到支持的器件)。因此创建的工程究竟使用哪一款处理器是不确定的(默认是 ESP32)。所以需要设定目标器件。在设定之前,可以用如下命令查看当前 ESP-IDF 支持哪些器件。

idf.py --list-targets
PS C:\Users\Administrator\Desktop\test\aeb> idf.py --list-targets
esp32
esp32s2
esp32c3
esp32s3
esp32c2
esp32c6
esp32h2
esp32p4
PS C:\Users\Administrator\Desktop\test\aeb>

用如下命令设定目标器件:

idf.py set-target esp32s3

执行这条命令后,项目文件夹下会多出一个 sdkconfig 文件和一个 build 文件夹。

3.4 编译命令

idf.py build

3.5 项目配置

用如下命令配置工程SDK的相关功能。相当于提供了一套半图形化的界面来配置sdkconfig文件。(有些类似于nrf52开发中的sdk_config)。

 idf.py menuconfig

在这里插入图片描述

3.6 下载

用如下命令下载目标文件至处理器。

 idf.py -p COM9 flash

ESP32-S3的固件一般情况下是用串口烧录的。这里要指定连接到电脑的串口端口号。


http://www.dtcms.com/a/290953.html

相关文章:

  • MySQL 核心知识点梳理(2)
  • 贪心算法(基础算法)
  • 鸿蒙DevEco Studio找不到JsonFormat插件
  • 卷积神经网络中的注意力机制:CBAM详解与实践
  • 各种名词解释
  • NISP-PTE基础实操——代码审计
  • 数学建模--层次分析法
  • 17 零基础学webUI | Controlnet精讲(03)-动作姿态类控图详解
  • 孤独感和社交频率啥关系
  • 04-UE蓝图节点基本结构讲解
  • 人形机器人CMU-ASAP算法理解
  • 安全告警研判流程
  • JAVA后端开发—— JWT(JSON Web Token)实践
  • Linux system-timesyncd时间同步机制详解
  • MTSC2025参会感悟:大模型 + CV 重构全终端 UI 检测技术体系
  • 可变形卷积神经网络详解:原理、API与实战
  • 机器学习初学者理论初解
  • 深入浅出:从最小核心到完整架构,全面解析5G用户面协议栈
  • Three.js 全景图(Equirectangular Texture)教程:从加载到球面映射
  • 码分多路复用(CDM)中芯片序列正交和规格化内积的具体含义
  • 耐看点播网页入口 - 追最新电视剧,看热门电影|官网
  • 智能控制权回归:人机协创时代的极简主义编码革命
  • 设计系统搭建:大型 Pad 应用的协同开发解决方案
  • 元宇宙与DAO自治:去中心化治理的数字文明实践
  • FREE论文精读:更快更好的无数据元学习框架《FREE: Faster and Better Data-Free Meta-Learning》
  • PHP:历经岁月仍熠熠生辉的编程语言
  • 芯谷科技--固定电压基准双运算放大器D4310
  • 定制化进销存软件精选:适配企业需求,提升运营效能
  • 项目动不动起不来,报错找不到或无法加载主类
  • 基于ECharts的电商销售可视化系统(数据预测、WebsSocket实时聊天、ECharts图形化分析、缓存)