ESP32-IDF安装并在VSCode上编译Hello World
ESP32-IDF安装
准备工作
- 安装python 3
- 安装git
一、在gitee上下载想要安装的idf版本
- 使用git bash端下载,指令如下:
- git clone -b [tags标签/分支名称] [git地址]
例如:git clone -b release/v4.3 https://gitee.com/EspressifSystems/esp-idf.git
下载好后会在git clone指定的下载路径有个esp-idf的文件夹
- git clone -b [tags标签/分支名称] [git地址]
二、在gitee上下载esp-gitee-tools工具
- 使用git bash端下载,指令如下:
- gitee仓库链接:https://gitee.com/EspressifSystems/esp-gitee-tools
例如:git clone https://gitee.com/EspressifSystems/esp-gitee-tools.git
下载好后会在git clone指定的下载路径有个esp-gitee-tools的文件夹
- gitee仓库链接:https://gitee.com/EspressifSystems/esp-gitee-tools
三、在git bash端下载idf编译工具和组件更新具体步骤
- 打开esp-idf文件夹
cd esp-idf
- 添加编辑组件的环境变量(安装位置),具体位置自行定义,不定义可能会默认下载到C盘
export IDF_TOOLS_PATH='D:\_software_\esp\esp-idf-v4.3\.espressif
- 在esp-idf文件夹位置执行esp-gitee-tools文件夹中的install.sh指令下载idf相关的编译工具(具体位置自行定义)
../../esp-gitee-tools/install.sh
- 在esp-idf文件夹位置执行esp-gitee-tools文件夹中的submodule-update.sh指令更新组件(具体位置自行定义)
../../esp-gitee-tools/submodule-update.sh
至此,完成以上步骤后就可以成功安装好esp32 idf包以及相关编译环境,可以编译个Hello World耍了。
配置使用VSCode运行idf编译环境
一、vscode 的 powershell 的 $PROFILE 文件对应修改
- 打开vscode终端(快捷键Ctrl+`),运行以下指令:
$PROFILE
运行指令后命令框会输出:C:\Users\why\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1,如果在该路径下没有这个脚本文件需要自行新建一个。 - 打开该脚本文件中并添加以下代码
function esp_init{
$env:IDF_TOOLS_PATH="F:\esp\esp-idf-v4.3.1\.espressif"
. F:\esp\esp-idf-v4.3.1\esp-idf\export.ps1
}
- 指令解析:
- $env:IDF_TOOLS_PATH="F:\esp\esp-idf-v4.3.1.espressif"为加载idf编译工具地址到环境变量中。具体路径自行定义
- . F:\esp\esp-idf-v4.3.1\esp-idf\export.ps1,因为刚刚安装的工具尚未添加至 PATH 环境变量,无法通过“命令窗口”使用这些工具。因此,必须设置一些环境变量。
- 指令解析:
二、允许PowerShell执行脚本
- 管理员身份运行PowerShell
- 输入命令
Set-ExecutionPolicy RemoteSigned
- 允许(Yes)
- 输入命令
完成以上所有操作后就全部弄完编译idf的准备工作了。以后只需要在vscode中打开esp32 idf的工程后打开vscode的powershell终端,输入指令esp_init
即可一键启动idf编译环境。
开始创建工程,运行hello world
一、获取hello world工程
可以从 ESP-IDF 中 examples 目录下的 get-started/hello_world 工程复制出来到你想放的路径。
二、使用VSCode打开该文件夹
在VSCode中点击文件->打开文件夹,或者使用快捷键先ctrl+k再ctrl+o
三、打开VSCode的PowerShell终端
在VSCode中点击终端->新的终端,或者使用快捷键先ctrl+`
四、运行我们之前写好的一键idf编译环境加载脚本
powershell终端,输入指令esp_init
即可一键启动idf编译环境
五、编译hello world工程
运行idf的编译脚本。idf.py build
或者idf.py all
即可开始编译工程
六、下载到esp32开发板
运行idf的烧录脚本。idf.py -p COM5 flash
,注意串口号需要根据开发板连接电脑后在,电脑设备管理器中查到当前设备的串口号填进去
ESP32-IDF安装并在VSCode上编译Hello World的更多相关文章
- 最小化安装的centos7.5上编译安装git2.19
VMware Workstation已经采用最小化安装CentOS7,显示版本为CentOS7.5,准备采用yum安装git. 采用yum list git发现可安装的GIT软件包版本1.8.3.1, ...
- (一)esp32开发环境搭建(VSCode+IDF实现单步调试)
保姆级手把手教学视频 https://www.bilibili.com/video/BV1RL411A7CU 前言 因为碰上一个学长,跟他聊了会儿天,推荐我做一点物联网的项目,想来想去,那就用WiFi ...
- 在centos6上实现编译安装lamp和wordpress,并编译xcache
author:JevonWei 版权声明:原创作品 软件环境: centos6.9 httpd-2.4.27.tar.bz2 apr-1.5.2.tar.bz2 apr-util-1.5.4.tar. ...
- 在Windows系统上一批可以下载但是需要经过编译再安装的第三方的直接编译后的版本(UCI页面)
在Windows系统上一批可以下载但是需要经过编译再安装的第三方的直接编译后的版本(UCI页面) (https://www.lfd.uci.edu/~gohlke/pythonlibs/) win10 ...
- rpm安装MySQL5.5后配置,在centos5上;mysql编译安装在centos6.5上;
[1] 没有/etc/my.cnf: rpm包安装的MySQL是不会安装/etc/my.cnf文件的:处理:cp /usr/share/mysql/my-huge.cnf /etc/my.cnf [2 ...
- Linux上编译安装PHP
这篇文章主要介绍了关于Linux上编译安装PHP,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 之前在服务器上编译安装了PHP运行环境,但是安装完过了一段时间就差不多忘记了,只是零零星 ...
- MAC 上编译安装nginx-rtmp-module 流媒体服务器
MAC 上编译安装nginx-rtmp-module 流媒体服务器 记录踩坑过程 下载nginx和nginx-rtmp-module wget http://nginx.org/download/ng ...
- 在CentOS6上编译安装实现LAMP(php-modules)+phpMyAdmin安装过程全记录
php与apache协作有三种模式:CGI.modules.FastCGI. 在CGI模式下,用户请求php文件时,apache会启动响应进程,调用php处理器处理请求,然后将结果返回给客户端.用户响 ...
- windows10使用vscode+cmake编译c++代码
概述 本文将介绍 VScode + cmake 在 windows10上编译c++代码 前提: 我之前已经安装过VS2017, 故 编译将采用cl.exe. 开始之前 本文演示环境基于 windows ...
随机推荐
- 使用正则表达式在VS中批量移除 try-catch
使用正则表达式在VS中批量移除 try-catch 前言 try-catch 意为捕获错误,一般在可能出错的地方使用(如调用外部函数或外部设备),以对错误进行正确的处理,并进行后续操作而不至于程序直接 ...
- OC源码剖析对象的本质
1. 类的底层实现 先写一个 Person 类: @interface Person : NSObject @property (nonatomic, copy) NSString *p_name; ...
- c++ 的学习 第二集函数的重载
1. 规则 函数名相同参数个数不同.参数类型不同.参数顺序不同 2. 注意 返回值类型与函数重载无关 调用函数时,实参的隐式类型转换可能会产生二义性 返回值类型与函数重载无关 什么意思? 返回 ...
- YbtOJ-大收藏家【分层图,最大流】
正题 题目链接:https://www.ybtoj.com.cn/contest/117/problem/2 题目大意 \(n\)个人,每人有\(a_i\)个属于自己的物品.\(m\)次交换依次进行, ...
- P4770-[NOI2018]你的名字【SAM,线段树合并】
正题 题目链接:https://www.luogu.com.cn/problem/P4770 题目大意 给出一个长度为\(n\)的字符串\(S\).\(q\)次询问给出一个串\(T\)和一个区间\([ ...
- FastAPI(62)- FastAPI 部署在 Docker
Docker 学习 https://www.cnblogs.com/poloyy/p/15257059.html 项目结构 . ├── app │ ├── __init__.py │ └── ma ...
- VulnHub 实战靶场Breach-1.0
相比于CTF题目,Vulnhub的靶场更贴近于实际一些,而且更加综合考察了知识.在这里记录以下打这个靶场的过程和心得. 测试环境 Kali linux IP:192.168.110.128 Breac ...
- 看动画学算法之:平衡二叉搜索树AVL Tree
目录 简介 AVL的特性 AVL的构建 AVL的搜索 AVL的插入 AVL的删除 简介 平衡二叉搜索树是一种特殊的二叉搜索树.为什么会有平衡二叉搜索树呢? 考虑一下二叉搜索树的特殊情况,如果一个二叉搜 ...
- ArcPy数据列表遍历
ArcPy数据列表遍历 批处理脚本的首要任务之一是为可用数据编写目录,以便在处理过程中可以遍历数据. ArcPy 具有多个专为创建此类列表而构建的函数. 函数 说明 ListFields(datase ...
- selenium 4.0 发布
我们非常高兴地宣布Selenium 4的发布.这适用于Java..net.Python.Ruby和Javascript.你可以从你最喜欢的包管理器或GitHub下载它! https://github. ...