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

ESP32 搭建IDF+Vscode环境(详细教程)

1. IDF环境安装   

1.1 ESP-IDF介绍​

        ESP-IDF (Espressif IoT Development Framework) 是 Espressif( 乐鑫) 公司提供的面向ESP32 系列 的官方开源开发框架,用于开发物联网应用。ESP-IDF 的特点是高度的集成性和可移植性,提供了完整的 SDK,开发者可以使用 ESP-IDF 库、组件和 API 进行开发。ESP-IDF支持的功能包括 FreeRTOS 多任务操作系统、低功耗模式、WiFi、蓝牙、TCP/IP 协议栈、SSL/TLS安全协议和 OTA 升级等。

1.2 VSCode安装

        VSCode(Visual Studio Code)是一款由微软出品的免费开源的代码编辑器。它支持 Windows、Linux 和 macOS 系统,包含了智能代码补全、自动缩进、语法高亮、代码片段等功能,同时还支持多种编程语言、调试和版本控制等工具。它还可以通过插件扩展成一款功能强大的开发环境,支持各种流行的编程语言和框架。VSCode的界面简单清晰,拓展性很强,可以轻易地实现按照自己的需求进行更改布局并添加所需插件,是一款功能强大、易用且免费的代码编辑器。我们通过在VScode上搭建ESP-IDF环境,进行代码编辑与下载调试。

1.2.1 下载VScode​

        打开VSCode官网的 ,选择对应系统和系统位数进行下载。

1.2.2 安装VSCode​

  1. 同意协议

        2.设置安装路径 此次我安装在自定义位置,在D盘下新建了一个文件夹VSCode。

        

           3.设置附加任务

       

        4.安装完成。

1.3 安装IDF环境​

在VSCode上安装ESP-IDF环境有两种方式: 离线安装 和 在线安装 。它们之间有以下区别:

  • 离线安装ESP-IDF环境: a. 下载完整的ESP-IDF源代码包,包括了所有工具链和组件。 b. 可以在没有网络连接的情况下进行安装和使用,无需在意网络问题。
  • 在线安装ESP-IDF环境: a. 在VSCode中使用ESP-IDF扩展,该扩展会在首次使用时自动下载和安装所需的工具链和组件。 b. 安装过程相对简单,无需手动配置环境变量和路径。 c. 可以随时从网络获取最新版本的ESP-IDF。 d. 可以快速升级对应的工具链和组件。 总体而言,离线安装需要下载完整的源代码包,适用于无网络或限制网络访问的环境;在线安装通过VSCode的ESP-IDF扩展进行,方便快捷,但需要有网络连接并能及时获取最新版本。建议使用离线安装方式。在线安装时到python下载安装部分要一段时间,因为国内网络下载较慢,会出现下载失败的情况。

1.3.1 离线安装IDF环境​

离线安装步骤:

1.3.1.1 ESP-IDF下载

IDF离线下载网址:https://dl.espressif.cn/dl/esp-idf/

1.3.1.2 IDF离线安装​

安装时必须关闭VSCode。

下图中,我在D盘新建了一个ESP_IDF的文件夹,后续专门用于存放ESP-IDF的文件。

取消开发集成,其他默认。

在安装期间会弹出是否安装驱动的提示框,选择安装或者同意即可。

1.3.1.3 安装IDF插件​

打开VSCode,在VSCode的扩展处,搜索espressif,可以看到IDF插件已经安装完毕。如果还显示 Install ,则点一下 Install 就好。

插件安装完后,查看 - 命令面板(快捷键Ctrl+Shift+P)。
输入 configure esp-idf extension ,点击。

会识别出我们离线安装的IDF。点击它。

然后在弹出的选项中,选择 最后一项 。使用已存在的配置。插件会自动检测并识别系统内的位置环境。
下图中,前两种方式均是在线安装,网络不好的会比较慢或者干脆不能安装成功。因为刚刚已经使用离线包搭建好了环境,接下来选 使用已存在的配置(USE EXISTING SETUP) 即可。

选择在系统中查找ESP-IDF。

如果它能够在系统中找到ESP-IDF的路径,就会自动安装,只要等待安装成功。

如果它找不到路径,会弹出以下窗口,需要我们自己设置路径。设置的路径就是我们之前离线安装ESP-IDF的路径。

等待安装完成。

安装完成。

1.3.2 在线安装IDF环境​

在线安装到python下载安装时,要一段时间,因为国内网络的原因,失败率很高,建议使用离线方式

1.3.2.1 ESP-IDF插件安装​

注:当前插件最新版本为V1.6.0,为体验一致,用户可以选择与我们一样的版本

1.打开VSCode,使用快捷键Shift+Ctrl+X,进入插件管理器

2.在搜索栏中,输入Espressif IDF,选择对应的插件点击 install即可。

3.使用快捷键F1,输入

esp-idf: configure esp-idf extension

4.选择express(此教程针对第一次安装的用户,故只讲述初次的通用安装教程)

5.打开后显示该界面

如未出现以上界面,而是出现以下界面,请卸载Espressif IDF插件,再安装一次。

6.选择下载服务器,我们推荐国内用户使用Espressif作为你的下载服务器

7.选择想要现在的ESP-IDF版本,我们选择最新的V5.0.1(注意ESP-IDF从V4.4版本后才开始支持ESP32-S3)

8.下面两个分别为ESP-IDF容器安装地址和ESP-IDF所需的工具安装地址。

        注意:如果之前有安装过ESP-IDF,或者失败过的,请务必彻底删除文件或者创建全新的无中文路径

9.配置完成后,点击 install 进行下载

10.进入下载页面,其会自动安装对应工具与环境,稍等片刻即可。

11.安装完成后,会进入以下界面,说明安装完成

1.4 修改中文显示​

VScode支持安装多个语言包,并提供切换已安装语言包功能。

  1. 打开显示(View)菜单,(Ctrl+Shift+P)快捷键 打开命令面板。

 

        在命令面板中,输入Configure Display Language,选择Configure Display Language命令,显示已安装的语言包列表。

在已安装的语言包列表中选择需要的语言包。(这里我已经下载好了中文简体)

根据提示重启VScode完成切换。

1.5 新建工程并测试​

打开命令栏。在界面的最上面选择栏中,选择【查看】->【命令面板】,也可以通过快捷键F1进入命令栏。

在命令栏中输入 【ESP-IDF:新建项目】或者 输入 【ESP-IDF:New Project】。

注意!输入框里有箭头>的才是命令栏,如果没有箭头>,可能是搜索栏。

等待加载完成。(如弹出web加载错误,则需要重新打开VSCode)

 

在新建工程页,配置工程名、工程路径、ESP32芯片、连接端口(后继可改),ESP32核心路径等。

        1.这里我给工程取名为 【01_led】。

        

        2.选择工程的创建保存路径。(我在E盘中创建了一个文件夹ESPIDF_project,我将之后的ESP32工程文件都放在该文件夹中,大家根据自己情况选择合适路径,不一定按照我们的方式)

        WARNING

📌 需要注意的是不能使用中文路径!

        3.在ESP32芯片或者开发板(Choose ESP-IDF Board)选项中,选择 ESP32-S3 chip(via ESP USB Bridge)选项、

不一定选择(via ESP USB Bridge),只要是ESP32-S3就可以,因为后续在编译时还可以进行修改。

 

4.下载通信端口(如果还没有接入开发板到电脑则无需理会)。

        

5.项目核心目录可以先不设置。

最终创建工程配置见下图。

点击【Choose Template】进行模板创建。

在弹出的界面中,有两个选项可以选择,是使用扩展例程(ExtenSion)还是使用官方IDF的例程(ESP-IDF)。

选择 【ExtenSion】下的 【template-app】进行工程创建。(还有很多的例程,大家可以自行尝试)

点击【Create project using template hellp_world】创建项目。

创建完成之后,右下角会提示【工程已经创建完毕,是否用新窗口打开工程?】点击Yes则会出现打开一个VSCode窗口,点击NO则会在该界面显示工程。

在新建的工程里找到main.c,并编写以下代码进行测试。

点击编译,等待编译完成。

第一次编译会比较久,这里就介绍一下常用的按钮。

编译完成之后显示如下:

点击一键编译下载调试按钮。等待编译下载完成

下载中。

下载完成并且输出我们编写的代码 www.LCKFB.com ,测试成功。

1.6 修改工程配置​

在连接成功的情况下,点击设置按钮。

修改FLASH大小
在上方的搜索栏中输入【flash】,根据开发板板载的FLASH大小选择对应的FLASH大小。开发板板载W25Q64是8M大小。

修改系统时钟
在上方的搜索栏中输入【cpu】,根据情况选择CPU频率,这里选择的是最高频率240MHz。

修改完成之后点击【保存】键才会生效。

相关文章:

  • 深度学习中的概念——元素积(哈达玛积)
  • C++学习:六个月从基础到就业——内存管理:堆与栈
  • RHCE的简单配置
  • 设计模式从入门到精通之(五)观察者模式
  • 使用 Axios 进行 API 请求与接口封装:打造高效稳定的前端数据交互
  • Hexo+Github+gitee图床零成本搭建自己的专属博客
  • Google澄清:元描述标签不会直接提升网站排名
  • 一键模仿图片风格,图生生APP,实现随时随地“生图自由“
  • WPF常用技巧汇总
  • 旅游资源网站登录(jsp+ssm+mysql5.x)
  • 数字信号处理技术架构与功能演进
  • 【2025-泛计算机类-保研/考研经验帖征集】
  • 在排序数组中查找元素的第一个和最后一个位置--LeetCode
  • 计算机网络 - 在浏览器中输入 URL 地址到显示主页的过程?
  • 深入理解C++中string的深浅拷贝
  • 4.3 熟悉字符串处理函数
  • Python 写生成 应用商店(2025版) 网页 方便收集应用 ,局域网使用
  • PLOS ONE:VR 游戏扫描揭示了 ADHD 儿童独特的大脑活动
  • 亚远景-ASPICE评估标准与车企供应商准入要求的关联性
  • Gnome将默认终端设置为 Kitty
  • 中印尼举行外长防长“2+2”对话机制首次部长级会议
  • 国际市场开心果价格上涨35%,背后助力是一条点击过亿的短视频
  • 江南大部、江淮南部等地今起有较强降雨,水利部部署防范工作
  • 人民日报:各地扎实开展学习教育,一体推进学查改
  • 第六季了,姐姐们还能掀起怎样的风浪
  • 外交部谈第十六个“联合国中文日”:期待更多人以中文为桥读中国,读懂世界