00-ESP-IDF 环境配置指南

ESP-IDF 环境配置指南

ESP-IDF安装

1.首先我们在浏览器搜索esp-idf,点击第一个选项
在这里插入图片描述
2.点击右边栏的安装

在这里插入图片描述
3.我们选择手动安装选择需要的系统版本

在这里插入图片描述
4.点击链接
在这里插入图片描述
5.这里我们选择一个版本,建议不要选择最新的,安装出现问题在网上不好找到解决办法
在这里插入图片描述
6.下载完成之后点击运行,一直选择下一步
在这里插入图片描述
安装完成后,在我们的桌面会多出两个图标
在这里插入图片描述

7.我们点击第一个图标,这是CMD的命令行工具,在命令行中输入idf.py
在这里插入图片描述
出现以下信息表示安装成功了
在这里插入图片描述

编译构建

进入下面这个地址,这里有官方提供的demo程序,可以用来验证IDF编译下载是否有问题

D:\Espressif\frameworks\esp-idf-v5.2.1\examples\get-started

在这里插入图片描述

我们将hello_world项目复制粘贴到一个我们自己的文件夹
在这里插入图片描述

在控制台中用cd命令跳转到我们的文件夹
在这里插入图片描述

编译下载三步

1.指定芯片
在控制台输入下面这个命令,选择我们的芯片,这里我使用ESP32

idf.py set-target ESP32

在这里插入图片描述

编译成功生成构造后生成Build文件夹
在这里插入图片描述
2.对开发板进行底层设置

idf.py menuconfig

在这个界面下,可以对芯片的硬件进行配置
在这里插入图片描述
按q退出

3.build构建工程

将esp32的板子插到电脑中,输入以下命令

idf.py buile

完成这三个步骤后所有要下载到esp32的文件全部准备好了,在hello_world文件夹的Build文件夹中
在这里插入图片描述

烧录程序

将程序烧录到开发板

idf.py flash -p COM6

COM6是开发板所连接的端口号
在这里插入图片描述
验证程序

打开串口

idf.py monitor -p COM6

hello_world的程序是串口输出helloworld然后等待10秒重启
在这里插入图片描述
退出ctrl + ]

大多数情况我们需要程序烧录之后马上查看串口信息,那么可以这么写命令

idf.py flash monitor -p COM6

vscode 图形化界面

使用命令行太过于麻烦,而且那么多命令也很难记忆,所以乐鑫公司为我们提供了一个vscode插件,之后我们可以在图形化界面进行编译下载了

vscode 搜索ESP-IDF 点击下载
在这里插入图片描述

下载完成后VSCode左侧栏点击ESP-IDF图标,选择Configure ESP-IDF Extension
在这里插入图片描述

点击EXPRESS

在这里插入图片描述

这里服务器选择Espressif,在国内的用户下载更快

在这里插入图片描述

我遇到的问题

在我安装的时候出现了一个问题
屏幕上跳出一个窗口:

显示此版本无法在你的电脑运行

然后紧接着有提示

Espressif\tools\idf-python\3.11.2\python.exe -m pip" is not valid. (ERROR_IN
VALID_PIP)

后来在网上查了很多解决方法之后发现在我的ESP-IDF安装目录下

D:\Espressif\tools\idf-python\3.11.2

多了一个python.exe文件
在这里插入图片描述

这是一个大小为0KB的文件,神奇的是名字就叫”python.exe“,所以在安装时脚本程序执行python时,调用的并不是环境变量中设置的python,而是这个文件

将这个文件删除后vscode中就可以正常配置了

配置完成后恭喜你完成了ESP32IDF最难的关卡,之后开始我们的ESP32-idf旅程
在这里插入图片描述

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

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

相关文章

蓝桥杯备战刷题-滑动窗口

今天给大家带来的是滑动窗口的类型题,都是十分经典的。 1,无重复字符的最长子串 看例三,我们顺便来说一下子串和子序列的含义 子串是从字符串里面抽出来的一部分,不可以有间隔,顺序也不能打乱。 子序列也是从字符串里…

Vue+SpringBoot打造个人健康管理系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 健康档案模块2.2 体检档案模块2.3 健康咨询模块 三、系统展示四、核心代码4.1 查询健康档案4.2 新增健康档案4.3 查询体检档案4.4 新增体检档案4.5 新增健康咨询 五、免责说明 一、摘要 1.1 项目介绍 基于JAVAVueSpri…

【周总结周末日常】

周总结 完成任务开发并且与前端联调通过 完成已开发功能的冒烟测试 修复测试中出现的一些数据显示问题 2024/3/10 晴 温度适宜 这周天气比上周好多了,最起码见到好几次太阳 周六在世纪公园溜达一会儿,偶尔呼吸下大自然,挺棒的…

[2023年]-hadoop面试真题(二)

[2023年]-hadoop面试真题(一) (北京) Maptask的个数由什么决定?(北京) 如何判定一个job的map和reduce的数量 ?(北京) MR中Shuffle过程 ?(北京) MR中处理数据流程 ?(…

c++深拷贝和浅拷贝的区别

在 C 中,深拷贝(deep copy)和浅拷贝(shallow copy)是与对象拷贝相关的概念 浅拷贝(Shallow Copy): 浅拷贝是指将一个对象的值复制到另一个对象,但如果对象中包含指针成…

【QT】创建第一个QT程序

下面的前7个可以先不看,直接从8开始看 1. 创建Qt程序 一个Qt程序的组成部分:应用程序类,窗口类应用程序类个数:有且只有一个QApplication a;如何查看类对应的模块:光标移动到类上,F1qmake模块的名字 2. …

Redis的主从、哨兵、集群模式的概念及搭建步骤

主从复制 主从模式也叫主从复制,主是主服务器,从是从服务器,主服务器(master )的数据如果更新了 也会同步到从服务器(slave),一个主服务器可以搭配很多个从服务器,主服务…

【设计模式】(四)设计模式之工厂模式

1. 工厂模式介绍 工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 工厂模式有三种实现方式: 简单工厂模式工厂方法模式抽象工厂模式 2. 工厂方…

前后端分离项目,如何解决跨域问题?

跨域问题是前后端分离项目中非常常见的一个问题,举例来说,编程猫学习网站的前端服务跑在 8080 端口下,后端服务跑在 9002 端口下,那么前端在请求后端接口的时候就会出现跨域问题。 403 Forbidden 是HTTP协议中的一个状态码&#x…

华容道问题求解_详细设计(五)之hash值和回放功能

(续上文) 布局的hash 值计算 笔者也参考了之前的一些文章,很多文章提到了怎么节省存贮空间来查找最优解,这不是笔者的目的。笔者的目的比较单一,就是找到最优解就行了。因此并没有在存贮上面进行过多的优化&#xff…

Linux系统adb调试小米手机调试不成功出现Exception occurred while executing ‘put‘:问题解决

参考文章:执行android settings命令报错原因Exception occurred while executing put: java.lang.SecurityException: Pe... - 简书 (jianshu.com) 解决Android U无法通过adb安装应用(Caller has no access to session -1)的问题_performing streamed install-CSDN…

P3405 [USACO16DEC] Cities and States S题解

题目 Farmer John有若干头奶牛。为了训练奶牛们的智力,Farmer John在谷仓的墙上放了一张美国地图。地图上表明了每个城市及其所在州的代码(前两位大写字母)。 由于奶牛在谷仓里花了很多时间看这张地图,他们开始注意到一些奇怪的…

消息队列 MQ

文章目录 1. MQ 相关概念1.1 什么是 MQ1.2 为什么要用 MQ1.3 MQ 分类1.4 MQ 的选择 1. MQ 相关概念 1.1 什么是 MQ MQ(message queue),从字面意思上看,本质是个队列,FIFO 先入先出,只不过队列中存放的内容是 message 而已&#x…

【 React 】state和props有什么区别?

1. state 一个组件的显示形态可以由数据状态和外部参数所决定,而数据状态就是state,一般在constructor中初始化 当需要修改里面的值的状态需要通过调用setState来改变,从而达到更新组件内部数据的作用,并且重新调用组件render方法…

阿里云DSW做AI绘画时的显卡选择A10?V100?

V100是Volta架构,A10是Ampere架构,架构上讲A10先进点,其实只是制程区别,用起来没区别。 V100是HBM的内存读取,带宽大,但是DDR5的。 二块卡都是全精度为主的算力卡,半精度优势不明显。 需要用…

uniapp 开发app,如何使用模拟器

1、开发app ,设置模拟器 (uniapp 如何设置模拟器) https://blog.csdn.net/sweetsoft/article/details/130727169 2、运行到模拟器 注意:1、模拟器所在的位置:“D:\Program Files\Nox\bin”,在该文件夹下找…

FPN(Feature Pyramid Network)

参考: 【目标检测】FPN(Feature Pyramid Network) - 知乎 Feature pyramid network是CVPR2017年的一篇文章,它在目标检测中融入了特征金字塔,提高了目标检测的准确率,尤其体现在小物体的检测上。 1. 动机(Motivation) 识别不同…

【三两波折】char *foo[]和char(*foo)[]有何不同?

1、先谈优先级 最高级别 —— 有四个,他们并不像运算符: []数组下标左到右结合()用于(表达式) or 函数名(形参表)左到右结合.读取结构体成员左到右结合->读取结构体成员(通过指针)左到右结合 第二级别…

【读书笔记】针对ICS的ATTCK矩阵详解(一)

Techniques - ICS | MITRE ATT&CKhttps://attack.mitre.org/techniques/ics/ 一、初始访问(Initial Access) 该阶段:攻击者正在尝试进入ICS环境。 初始访问包括攻击者可能用作入口向量,从而可以在 ICS 环境中获得初始立足点的…

pytorch实现分割模型TransUNet

TransUNet是一个非常经典的图像分割模型。该模型出现在Transformer引入图像领域的早期,所以结构比较简单,但是实际上效果却比很多后续花哨的模型更好。所以有必要捋一遍pytorch实现TransUNet的整体流程。 首先,按照惯例,先看一下…