ESP32开发环境搭建Windows VSCode集成Espressif IDF插件开发环境搭建 IDF_V5.2.1

一、安装Visual Studio Code

下载地址:Download Visual Studio Code - Mac, Linux, Windows

打开上方链接,选择页面中的Windows版本,单击下载

将下载好的VSCodeUserSetup-x64-1.89.1.exe。单击右键,选择以管理员身份运行,开始安装

在安装界面中勾选 我同意此协议 然后单击 下一步 按钮。

在接下来的界面中,勾选 所有选项 ,然后单击 下一步 按钮

在接下来的界面中,直接单击 安装 按钮

接下来等待安装完成

安装完成,单击完成按钮

二、Visual Studio Code设置中文

同时按Ctrl + Shift + X 快捷键
在左侧“扩展”视图文本框中输入“Language Packs”,找到Chinese 中文插件,单击绿色的Install安装按钮,这里我们安装的是中文简体,安装完成右下角弹出一个重启按钮,点击重启,语言自动切换

三、安装C/C++扩展

同样的方式搜索C/C++,安装C/C++扩展来支持C语言代码高亮

四、打开ESP32工程

方式一

VSCode中打开ESP32的代码工程,可以直接打开代码所在的文件夹即可,文件菜单选择打开文件夹,选择一个源码目录打开

方式二

直接在工程文件夹下单击右键,选择 通过Code打开

打开后的文件结构

 五、安装Espressif IDF插件

在VSCode扩展插件中搜索 ESP,找到ESP-IDF,单击安装按钮

等待插件安装完成后,在VSCode中使用快捷键:Ctrl + Shift + P调出VSCode的命令面板,并输入“ESP Welcome”,单击ESP-IDF:Welcome。打开ESP配置页面

在页面中单击 Configure extension 配置扩展按钮

选择设置为全局 Global 然后选择 EXPRESS 开始配置

1、在此页面中选择ESP服务器为 Espressif

2、选择ESP-IDF版本为最新发行版  V5.2.1(release version) 

3、选择你的本地IDF库安装目录:F:\ESP32\Espressif 

4、选择你的本地IDF库工具安装目录:F:\ESP32\Espressif

F:\ESP32\Espressif 是我自己创建好的目录,第三个目录会自动在后面添加\esp-idf目录 ,所以3和4这里填写同一个目录即可。建议不要使用C盘,尽量挑大一点的磁盘。

确保目录正确且都存在,然后单击页面右下角的 Install 安装按钮

这里要安装非常久,耐心等待。

接出现如下界面,提示:Visual Studio代码的ESP-IDF扩展 所有设置都已配置。你可以关闭这个窗口。

四、Espressif IDF插件使用

依照上图Espressif IDF插件基本菜单一共12个,常用的只有两三个,依次为

1、选择串口(插头):即连接开发板的下载串口号,VS会列出当前连接电脑的所有串口让你选择,这个会记录,再新打开VSCode不用重新选择,开发过程中尽量不要更换USB线的电脑插口,否则串口号会变。

2、选择目标芯片:对应idf命令idf.py set-target xxxx。即你当前这个工程是要下载到什么芯片上面,如ESP32 S2,S3,C2,C3等等,工程要与芯片相匹配,这个选择是写入当前工程配置的,一般不用更改,工程下配置文件基本已经选择好的。

3、选择当前工程目录(文件夹):也不用修改,一般打开工程时会默认操作都在这个工程目录下

4、工程配置菜单(齿轮):对应idf命令idf.py menuconifg,用来配置当前工程的一些设置,配置项非常多,建议使用到再修改。一般代码工程都是配置好的,且不用修改

5、清除工程(垃圾桶):清除工程编译文件,一般用于压缩拷贝工程文件时用到,清除后工程目录占用空间会占用非常小,KB级,编译后为百MB级,还有一些编译过程中奇奇怪怪的问题也可以先清除编译后再编译

6、编译工程(圆柱体):编译当前工程,只是编译,没有下载功能

7、选择下载模式(五角星):一般都是选择串口UART方式下载

8、下载(闪电):下载编译好的固件到设备芯片上,这里只是下载,没有编译功能,修改代码后要先编译再点这个下载,所做的修改才有效。

9、串口监控(小电视):打开与设备连接的串口,打印设备串口信息

10、编译/下载/监控(一团火):最常用的一个,它将编译下载和打开串口监控做在了一起,点一次全部搞定

11、打开命令行:打开命令行窗口,且会定位在当前项目路径下,可以执行idf的一些命令

12、执行自定义任务:不使用

五、头文件包含、无法跳转、波浪线问题解决

打开ESP32工程头文件波浪线不能跳转,并且提示“在browse.path中未找到包含文件”等等引用错误提示。

1、按前面的四步安装配置好IDF插件后,删除源码目录中 <.vscode>文件夹。

2、在VSCode中使用快捷键: Ctrl + Shift + P 调出VSCode的命令面板,并输入查找“添加”,选择 添加 vscode配置文件夹

选择“ESP-IDF:添加 vscode 配置文件夹”,VSCode 会自动在源码目录下的<.vscode>文件夹中生成对应的配置文件,对应的红色波浪线也消失了,按住Ctrl 键用鼠标单击你想查看的头文件或函数,就可以跳转了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/839140.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

雪花算法 代码

/*** author lwh* date 2023/9/5* description 批量插入&#xff0c;手动设置**/ public class IdWorker {//因为二进制里第一个 bit 为如果是 1&#xff0c;那么都是负数&#xff0c;但是我们生成的 id 都是正数&#xff0c;所以第一个 bit 统一都是 0。//机器ID 2进制5位 3…

jenkins自动化部署详解

一、准备相关软件 整个自动化部署的过程就是从git仓库拉取最新代码&#xff0c;然后使用maven进行构建代码&#xff0c;构建包构建好了之后&#xff0c;通过ssh发送到发布服务的linux服务器的目录&#xff0c;最后在此服务器上执行相关的linux命令进行发布。 此篇文章jenkins…

gsap笔记

1.gsap基础 gsap.to() //从初始位置到设定位置 gsap.from() //从设定位置到初始位置 gsap.from("h1",{stagger:1 //设定末状态repeate:2 //重复次数yoyo: true //来回动画scale&#xff1a;1 //缩放倍数 }) //stagger:相同元素的按序播放…

【iOS安全】BurpSuite iOS https抓包 | DNS Spoofing

BurpSuite 完整版安装 参考&#xff1a;Admin Team 小数智 的博客 下载 Burp Suite 2021.6 官网下载地址 https://portswigger.net/burp/releases &#xff08;下载并安装好&#xff09; jdk 使用的是11.0.10 https://www.oracle.com/java/technologies/javase-jdk11-downl…

实用css整理

网页一键变灰 body{filter: grayscale(1); } 一般用于特殊时期&#xff0c;网页变灰&#xff0c;只需要给body标签添加这行样式代码。 一键换主题色 body {filter: hue-rotate(45deg);} 给body标签设置这个属性样式&#xff0c;改变角度看看效果吧。 设置字母大小写 p {t…

麦克纳母轮(全向)移动机器人集群控制的Simulink/Simscape虚拟仿真平台搭建

麦克纳姆轮是一种常见的全向移动机构&#xff0c;可以使机器人在平面内任意方向平移&#xff0c;同时可以利用差速轮车的属性实现自转&#xff0c;能够在狭窄且复杂多变的环境中自由运行&#xff0c;因而被广泛应用于竞赛机器人和特殊工业机器人场景。 Ps:最新的BYD仰望U8也有一…

项目启动失败,【consul】

如题&#xff0c;启动时项目未能正常启动&#xff0c;但上次都一切正常&#xff0c;日志提示&#xff1a; Consul service ids must not be empty, must start with a letter 经过排查是因为consul的consulconfigservice服务假死&#xff0c;导致无法正常获取到配置文件&am…

【全开源】Java无人共享棋牌室茶室台球室系统JAVA版本支持微信小程序+微信公众号

开启智能共享新时代 一、系统源码概述&#xff1a;引领自助服务潮流 随着科技的不断发展和人们生活节奏的加快&#xff0c;自助服务已逐渐成为人们生活中的一部分。为了满足市场对无人共享棋牌室、茶室、台球室的需求&#xff0c;我们推出了全新的无人共享系统源码。这套源码…

使用决策树对金融贷款数据进行分析

使用决策树对金融贷款数据进行分析 在本篇博客中&#xff0c;我们将通过使用 Python、Pandas 和多种机器学习技术&#xff0c;对一组贷款数据进行全面分析。通过详细的步骤展示&#xff0c;你将学会如何进行数据预处理、可视化分析以及构建预测模型。 第一步&#xff1a;导入…

Sping源码(七)—ConfigurationClassPostProcessor —— 后续处理

序言 前面的文章中介绍了 parser.parse(); 方法的整体处理逻辑&#xff0c; 其中包括Bean、Import、Configuration、CompopnentScan、Component等注解的解析。 来看看注解解析完的后续工作都做了些什么&#xff1f; 源码片段 简单回顾一下主方法processConfigBeanDefinition…

如何在Python爬蟲中設置代理伺服器?

在實際應用中&#xff0c;爬蟲可能會遇到各種限制&#xff0c;如IP封鎖、訪問限制等。通過使用代理伺服器&#xff0c;可以有效地繞過這些限制&#xff0c;提升爬蟲的效率和隱私保護。本文將詳細介紹如何在Python爬蟲中設置代理伺服器&#xff0c;包括使用requests、urllib、Sc…

Windows10安装Docker Desktop - WSL update failed

按照提示更新wsl后&#xff0c;仍然会报错&#xff0c;github上没有找到解决方法。版本28、29、30都会报这个错。 经过尝试&#xff0c;将docker内的设置中&#xff0c;采用wsl禁掉即可。如下图&#xff1a;

《球》

描述 输入球体的半径r&#xff0c;类型为double&#xff0c;求球的体积&#xff0c;结果保留3位小数。 (注&#xff1a;球的体积计算公式为V4/3∗π∗r3&#xff0c;此处π3.1415&#xff09; 输入描述 输入球体的半径r&#xff0c;类型为double 输出描述 求球的体积&#xf…

55. UE5 RPG 处理当前功能在多人模式中的问题

在UE里面&#xff0c;我们运行项目可以设置多种网络模式&#xff0c;主要是分为三种&#xff1a; 运行Standalone 就是单人模式&#xff0c;没有网络交互以监听服务器运行&#xff0c;在界面里运行的游戏会作为服务器使用以客户端运行&#xff0c;UE会单独运行一个线程作为服务…

Java 解析 Linux 不同压缩文件的方法及注意事项

背景 commons-compress 包提供了归档压缩文件的工具类&#xff0c;java.util 里面包含了 Zip 和 gz 文件的解压方法&#xff0c;最终以按扁平方式&#xff0c;遍历到全部文件的文件&#xff0c;包括子目录下的文件。使用 Java 实现的日志采集系统涉及到对压缩文件的解析&#…

【Linux】套接字的理解 基于TCP协议的套接字编程(单/多进程 / 线程池|英汉互译 / C++)

文章目录 1. 前言1.1 网络方面的预备知识&#x1f447;1.2 了解TCP协议 2. 关于套接字编程2.1 什么是套接字 Socket2.2 socket 的接口函数2.3 Udp套接字编程的步骤2.4 sockaddr 结构 3. 代码实现3.1 makefile3.2 log.hpp3.3 tcp_server.hpp① 框架② service() 通信服务③ init…

记录docker ps查找指定容器的几个命令

1.docker ps | grep registry 查询包含registry的容器 2.docker ps | grep -E "reigistry\s" 开启正则匹配模式&#xff0c;匹配registry后面为空格的容器&#xff0c;若是匹配一整行可以这样写docker ps | grep -E "^([0-9a-f]{12})\sregistry\s.*" 这…

电视机顶盒哪个牌子好?618畅销电视机顶盒排行榜

电视机顶盒是我们使用最多的&#xff0c;不管看直播、动画、追剧、上网课都少不了它的存在。大促期间很多朋友问我电视机顶盒哪个牌子好&#xff0c;小编按照各平台的销量情况整理了618畅销电视机顶盒排行榜&#xff0c;看看哪些品牌的电视机顶盒是最受欢迎的吧。 TOP 1&#x…

为了更全面地分析开发人员容易被骗的原因和提供更加深入的防范措施

为了更全面地分析开发人员容易被骗的原因和提供更加深入的防范措施&#xff0c;我们可以进一步探讨以下几个方面&#xff1a; 深入技术细节 不安全的代码注释和文档&#xff1a; 原因&#xff1a;开发人员在代码注释中可能会无意间透露敏感信息&#xff0c;如API密钥、密码或系…

通过扩展指令增强基于覆盖引导的模糊测试

本文由Bruno Oliveira于2024年4月25日发表于IncludeSec的官方网站上。作为IncludeSec的安全研究人员&#xff0c;在他们日常的安全审计和渗透测试工作中&#xff0c;有时需要为客户开发一些模糊测试工具。在安全评估方法中使用模糊测试技术&#xff0c;可以有效地在复杂的现代化…