VSCode搭建ESP32 ESP-IDF开发环境-Windows

 陈拓 2023/10/09-2023/10/14

1. 安装Windows系统下的ESP32 ESP-IDF开发环境

见《Windows系统安装ESP32 ESP-IDF开发环境》

Windows系统安装ESP32 ESP-IDF开发环境-CSDN博客Windows系统安装ESP32 ESP-IDF开发环境。https://blog.csdn.net/chentuo2000/article/details/133922505?spm=1001.2014.3001.5501

https://blog.csdn.net/chentuo2000/article/details/133922505?spm=1001.2014.3001.5501

为提高成功率,我们先通过ESP-IDF离线安装包安装Windows系统下的ESP32 ESP-IDF开发环境,再在VSCode的ESP-IDF插件中选择已经存在的ESP-IDF开发环境。

2. 使用英文用户名

如果用户名是中文,例如:

重新创建一个英文账户:

用有管理员权限的英文账户登录。

3. 安装VSCode

  • 在Microsoft Store中搜索vscode

免费下载。

  • 安装

4. pip换源

如果不换源在安装virtualenv时可能会出现错误:

  • 打开CMD窗口,找到并进入前文安装好的python的Scripts文件夹

cd C:\Espressif\python_env\idf4.1_py3.8_env\Scripts

  • 执行

pip config set global.index-url Simple Index

查看:type C:\Users\ct\AppData\Roaming\pip\pip.ini

5. 安装ESP插件

  • 启动VSCode
  • 在 VSCode 界面左侧的扩展中搜索“esp idf”

在列表中找到“Espressif IDF”

  • 点击Install

6. 配置 ESP-IDF 插件

  • 安装完成后,按下 F1 或 Ctrl+Shift+P 打开命令行,输入esp-idf extension

  • 点击ESP-IDF: Configure ESP-IDF extension

等待配置界面出现。

  • 选择配置方式

我们已经安装了Windows系统下的ESP32 ESP-IDF开发环境,所以选择USE EXISTING SETUP

  • 在本机系统中查找已经安装的ESP-IDF

点击Search ESP-IDF in system…

为避免在安装过程中出现无法访问 Github 的情况导致安装失败,可以将服务器设置为 Espressif。

  • 点击 Install,开始安装过程

看安装进度

在安装virtualenv时有可能出现错误:

可能是网络环境不好,再安装几次可能会成功😉

VSCode ESP-IDF扩展安装成功的提示:

7. 测试

  • 按下F1打开命令行,输入ESP-IDF: Show Examples Projects

  • 点击ESP-IDF: Show Examples Projects

  • 点击Use current ESP-IDF使用当前ESP-IDF

  • 在列表中选择hello_world

然后点击Create project using example hello world

  • 在跳出的选择文件夹窗口中选择一个工作目录

  • 信任此目录

  • COM口配置

  • 选择目标芯片

点击目标芯片图标:

选择要设置的目标工作区文件夹,F:\esp\hello_word。

对于更改的IDF版本,可以选择目标芯片。下面是来自

https://gitee.com/EspressifSystems/esp-idf

的ESP-IDF版本与所支持的芯片:

  • 配置项目

对应idf命令idf.py menuconifg

点击齿轮图标。

在配置窗口中选择Serial flasher config,将Falsh的大小改为4MB:

Save

  • 编译项目

在build目录

 

下生成bootloader、分区表和运行程序3个可在ESP32中运行的bin文件:

  • 选择烧写模式(选择串口)

  • 烧写

  • 监视器终端(串口)

  • 编译、烧写、打开监视器一条龙

8. ESP32仿真

参考《在Espressif-IDE中使用Wokwi仿真ESP32》

参考文档

  1. 使用VS Code快速搭建ESP-IDF开发环境(Windows、Linux、MacOS)
    https://zhuanlan.zhihu.com/p/630698425
  2. VS Code IDE快速入门
    https://docs.espressif.com/projects/esp-idf/zh_CN/release-v4.3/esp32/get-started/vscode-setup.html
  3. win10 python永久换源-- 解决VSCode配置ESP IDF到最后python virtual environment错误问题
    https://blog.csdn.net/weixin_43869518/article/details/128024113
  4. VSCode配置ESP IDF一直卡在python virtual environment转圈的解决办法
    https://blog.csdn.net/hw0808/article/details/129310695?spm=1001.2101.3001.6650.1
  5. Pip换源
    https://zhuanlan.zhihu.com/p/551940762

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

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

相关文章

SpringMVC之全局异常拦截器

在SpringMVC自动装配核心类之WebMvcAutoConfiguration内部实例化EnableWebMvcConfiguration过程中会触发其父类WebMvcConfigurationSupport内部初始化HandlerExceptionResolver。 1.WebMvcConfigurationSupport public class WebMvcConfigurationSupport implements Applicat…

用户登录管理中的Bug修复与技术思考

目录 1 前言2 问题提出3 问题分析和解决4 技术分析和改进5 结语 1 前言 在开发管理软件平台为美术馆时,我们致力于提供一个多系统集成平台,其中包括艺术品管理、志愿者管理和数字资产管理等子系统。为了确保用户享有流畅的体验,我们采用了一…

volatile-两大特性(可见性、有序性)、内存屏障

6.1 被volatile修饰的变量有两大特点 ● 特点:○ 可见性○ 有序性:有排序要求,有时需要禁重排● 内存语义:○ 当写一个volatile变量时,JMM会把该线程对应的本地内存中的共享变量值立即刷新回主内存中○ 当读一个vola…

【小黑嵌入式系统第四课】嵌入式系统硬件平台(二)——I/O设备、通信设备(UARTUSB蓝牙)、其他(电源时钟复位中断)

上一课: 【小黑嵌入式系统第三课】嵌入式系统硬件平台(一)——概述、总线、存储设备(RAM&ROM&FLASH) 文章目录 一、I/O设备1. 定时器/计数器2. ADC和DAC3. 人机接口设备3.1 键盘3.2 LCD显示器3.3 触摸屏 二、通信设备1. 通…

京东店铺公司名爬虫

内容仅供学习参考,如有侵权联系删除 先通过京东非自营的店铺名拿到的公司名,再通过公司名称去其他平台拿到联系方式(代码省略) from aioscrapy.spiders import Spider from aioscrapy.http import Request, FormRequest import dd…

Maven安装教程

目录 不喜欢废话,直接上教程! 第一步:下载maven 第二步:环境配置 第三步:配置maven 配置maven包括配置本地仓库的位置,配置镜像,配置JDK,都在settings.xml里面配置 配置本地仓…

互联网Java工程师面试题·Java 总结篇·第九弹

目录 75、阐述 JDBC 操作数据库的步骤。 76、Statement 和 PreparedStatement 有什么区别?哪个性 能更好? 77、使用 JDBC 操作数据库时,如何提升读取数据的性能?如何提升更新数据的性能? 78、在进行数据库编程时&a…

卷积神经网络手写字符识别 - 深度学习 计算机竞赛

文章目录 0 前言1 简介2 LeNet-5 模型的介绍2.1 结构解析2.2 C1层2.3 S2层S2层和C3层连接 2.4 F6与C5层 3 写数字识别算法模型的构建3.1 输入层设计3.2 激活函数的选取3.3 卷积层设计3.4 降采样层3.5 输出层设计 4 网络模型的总体结构5 部分实现代码6 在线手写识别7 最后 0 前言…

【Solution】商品秒杀之Redis缓存与MQ异步优化以及超卖一人一单等问题的解决

目录 一、Demo开始前准备 1、数据库准备 2、项目准备 3、全局唯一id生成器 二、秒杀业务基本实现 1、秒杀基本业务逻辑 2、秒杀接口设计 3、秒杀业务代码实现 4、超卖问题产生 三、保证线程安全解决超卖少卖问题 1、超卖产生的原因 2、加锁方案:乐观锁 …

基于SSM的传统文化网站

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:Vue 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目:是 目录…

使用Portainer图形化工具轻松管理远程Docker环境并实现远程访问

文章目录 前言1. 部署Portainer2. 本地访问Portainer3. Linux 安装cpolar4. 配置Portainer 公网访问地址5. 公网远程访问Portainer6. 固定Portainer公网地址 前言 Portainer 是一个轻量级的容器管理工具,可以通过 Web 界面对 Docker 容器进行管理和监控。它提供了可…

【C/PTA】顺序结构专项练习

本文结合PTA专项练习带领读者掌握顺序结构,刷题为主注释为辅,在代码中理解思路,其它不做过多叙述。 7-1 是不是太胖了 据说一个人的标准体重应该是其身高(单位:厘米)减去100、再乘以0.9所得到的公斤数。已…

搜维尔科技:“虚实结合” 体验式人机验证技术,助力通用汽车开启研发新篇章

虚拟现实(VR)技术为制造业带来了巨大的可能性。它使工程师能够以真实世界的比例完整体验他们的设计,就像身临其境一样。通过在VR中模拟制造过程,可以发现并解决许多问题,从而避免在实际生产中投入大量资源后才发现问题。VR模拟使不同团队之间的沟通和协作变得比较直观和高效。这…

【数据结构】830+848真题易错题汇总(自用)

【数据结构】830848易错题汇总(10-23) 文章目录 【数据结构】830848易错题汇总(10-23)选择题填空题判断题简答题:应用题:算法填空题:算法设计题:(待补) 选择题 1、顺序栈 S 的 Pop(S, e)操作弹出元素 e,则下列(C )是正…

互联网Java工程师面试题·Java 总结篇·第十弹

目录 82、JDBC 能否处理 Blob 和 Clob? 83、简述正则表达式及其用途。 84、Java 中是如何支持正则表达式操作的? 85、获得一个类的类对象有哪些方式? 86、如何通过反射创建对象? 87、如何通过反射获取和设置对象私有字段的值…

基于SSM+Vue的体育馆管理系统的设计与实现

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:Vue 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目:是 目录…

紫光同创FPGA实现UDP协议栈网络视频传输,带录像和抓拍功能,基于YT8511和RTL8211,提供2套PDS工程源码和技术支持

目录 1、前言免责声明 2、相关方案推荐我这里已有的以太网方案紫光同创FPGA精简版UDP方案紫光同创FPGA带ping功能UDP方案紫光同创FPGA精简版UDP视频传输方案 3、设计思路框架OV5640摄像头配置及采集数据缓冲FIFOUDP协议栈详解MAC层发送MAC发送模式MAC层接收ARP发送ARP接收ARP缓…

【Linux】如何判断RS-232串口是否能正常使用

1.RS-232串口短接 使用RS-232协议的串口引脚一般如图下所示 为了让串口能够接收到自己发出的串口数据,需要将输出端和输入端(RXD和TXD)进行短接操作: 短接完成后,才能实现自发自收的功能(走其他协议的串口清…

学信息系统项目管理师第4版系列32_信息技术发展

1. 大型信息系统 1.1. 大型信息系统是指以信息技术和通信技术为支撑,规模庞大,分布广阔,采用多级 网络结构,跨越多个安全域;处理海量的,复杂且形式多样的数据,提供多种类型应用 的大系统 1.1.…

【计算机网络笔记】OSI参考模型基本概念

系列文章目录 什么是计算机网络? 什么是网络协议? 计算机网络的结构 数据交换之电路交换 数据交换之报文交换和分组交换 分组交换 vs 电路交换 计算机网络性能(1)——速率、带宽、延迟 计算机网络性能(2)…