ESP32学习三-环境搭建(ESP-IDF V5.0,Ubuntu20.4)

news2024/9/21 2:42:08

一、准备事项

        Ubuntu 20.04。具体安装可以参考如下链接。使用VMware安装Ubuntu虚拟机和VMware Tools_t_guest的博客-CSDN博客

二、安装ESP-IDF 

         1)、确认python3版本

        输入python3 --version来确认python3的版本。因为要安装ESP-IDF 5.0版本,python3的版本必须大于3.7.

        

        2)、安装需要的工具链

         3)、获取ESP-IDF

        打开终端,输入如下指令:

mkdir -p ~/esp
cd ~/esp
git clone -b release/v5.0 --recursive https://github.com/espressif/esp-idf.git

         4)、设置工具

        除了 ESP-IDF 本身,您还需要为支持 ESP32 的项目安装 ESP-IDF 使用的各种工具,比如编译器、调试器、Python 包等。

cd ~/esp/esp-idf
./install.sh esp32

        如果需要同时安装多个工具包,可以输入如下:

cd ~/esp/esp-idf 
./install.sh esp32,esp32s2

         ESP-IDF 工具安装器会下载 Github 发布版本中附带的一些工具,如果访问 Github 较为缓慢,可以设置一个环境变量,从而优先选择 Espressif 的下载服务器进行 Github 资源下载。

        要在安装工具时优先选择 Espressif 下载服务器,请在运行 install.sh 时使用以下命令:

cd ~/esp/esp-idf
export IDF_GITHUB_ASSETS="dl.espressif.com/github_assets"
./install.sh

        安装成功后显示如下:

        5)、设置环境变量

        刚刚安装的工具尚未添加至 PATH 环境变量,无法通过“命令窗口”使用这些工具。因此,必须设置一些环境变量。这可以通过 ESP-IDF 提供的另一个脚本进行设置。

        请在需要运行 ESP-IDF 的终端窗口运行以下命令:

. $HOME/esp/esp-idf/export.sh

        注意,命令开始的 “.” 与路径之间应有一个空格!此外,执行该指令后,只可以在当前终端窗口下运行idf.py build。关闭终端窗口后会失效

        如果需要经常运行 ESP-IDF,您可以为执行 export.sh 创建一个别名,具体步骤如下:

  1. 复制并粘贴以下命令到 shell 配置文件中.profile

    alias get_idf='. $HOME/esp/esp-idf/export.sh'
  2. 通过重启终端窗口或运行 source ~/.profile 来刷新配置文件。

        现在您可以在任何终端窗口中运行 get_idf 来设置或刷新 esp-idf 环境。

        不建议直接将 export.sh 添加到 shell 的配置文件。这样做会导致在每个终端会话中都激活 IDF 虚拟环境(包括无需使用 IDF 的会话)。这违背了使用虚拟环境的目的,还可能影响其他软件的使用

      

 

        6)、编译工程

        在运行export.sh脚本后,就可以使用idf.py build指令来编译工程,此时我们切换到工程下:

cd ~/esp/esp-idf/examples/get-started/hello_world/

        输入idf.py build指令进行编译。

         成功编译的结果如下:

        7)、程序下载

        见另外一篇文章。

        ESP32学习一-程序下载(windows工具)_t_guest的博客-CSDN博客

        8)、打印结果 

        程序下载后,在终端中打印结果

         大功告成。

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

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

相关文章

Docker Compose与Docker Swarm的简介和区别

Docker Compose与Docker Swarm的简介和区别 背景Compose 简介Swarm 简介Compose 和 Swarm区别 背景 之前公司很多都是单体的spring boot服务,使用Docker的时候,只需要定义Dockerfile 文件,然后打成镜像把容器启动起来就ok了。但是现在的微服…

低成本,全流程!基于PaddleDepth和Paddle3D的三维视觉技术应用方案

现实生活中的很多应用场景都需要涉及到三维信息。针对三维视觉技术应用场景复杂多样、三维感知任务众多、流程复杂等问题,飞桨为开发者提供了低成本的深度信息搜集方案 PaddleDepth 以及面向自动驾驶三维感知的全流程开发套件 Paddle3D 。 三维视觉技术应用场景 3D …

01——计算机系统基础

计算机系统基础知识 计算机系统基础一、计算机系统的基本组成1 计算机硬件系统 二、计算机的类型三、计算机的组成和工作原理1 计算机的组成2 总线的基本概念2.1 总线的定义与分类 3 系统总线3.1 系统总线的概念3.2 常见的系统总线 4 外总线5 中央处理单元(CPU&…

【刷题】搜索——BFS:八数码【A*模板】

A*简介 某点u的距离f(u)定义如下: f ( u ) g ( u ) h ( u ) f(u) g(u) h(u) f(u)g(u)h(u) g(u):起点到u走的距离 h(u):u到终点估计的距离,保证 0 ≤ h ( u ) ≤ h ′ ( u ) 0 \leq h(u) \leq h(u) 0≤h(u)≤h′(u)。其中h’…

健康体检信息系统源码,个人体检、团队体检、体检报告、统计分析

健康体检管理系统源码 PEIS源码 数据对接 体检人员管理系统,系统有演示,文档齐全。 一套专业的体检管理系统源码,该系统涵盖个人体检、团队体检、关爱体检等多种体检类型,提供体检登记管理、体检结果管理、体检报告打印及发放…

阿里云服务器搭建网站流程by宝塔Linux面板

阿里云服务器安装宝塔面板教程,云服务器吧以阿里云Linux系统云服务器安装宝塔Linux面板为例,先配置云服务器安全组开放宝塔所需端口8888、888、80、443、20和21端口,然后执行安装宝塔面板命令脚本,最后登录宝塔后台安装LNMP&#…

尝试图像锐化

#图像锐化 拉普拉斯: 导数f(x,y)f(x1,y)f(x−1,y)f(x,y1)f(x,y−1)−4f(x,y) 可以扩展到8邻域: ​ Mat Sharpen(Mat input, int percent, int type) { Mat result; Mat s input.clone(); Mat kernel; switch (type) { case 0: kernel (Mat_(3, 3)…

4个令人惊艳的ChatGPT项目,开源了

自从 ChatGPT、Stable Diffusion 发布以来,各种相关开源项目百花齐放,着实让人应接不暇。今天,将着重挑选几个优质的开源项目,对我们的日常工作、学习生活,都会有很大的帮助。 一、Visual ChatGPT 这个是微软开源的项…

代码随想录_二叉树_leetcode700、98

leetcode700.二叉搜索树中的搜索 700. 二叉搜索树中的搜索 给定二叉搜索树(BST)的根节点 root 和一个整数值 val。 你需要在 BST 中找到节点值等于 val 的节点。 返回以该节点为根的子树。 如果节点不存在,则返回 null 。 示例 1: 输入&…

乘客出租出行需求短时预测

CLAB模型是一种空间-时间环境下基于深度学习的乘客流量预测模型,可有效挖掘出租车乘客出行的时空相关性,考虑历史数据流入量对出行需求的影响,从而提高预测准确性。 数据挖掘维度: 1.时间维度:预测的是短时预测&#x…

关于ONgDB我问了ChatGPT这些问题!

关于ONgDB我问了ChatGPT这些问题! 关于ONgDB我问了ChatGPT这些问题!提问 ChatGPTONgDB和Neo4j的区别是什么?ONgDB可以适配哪些版本的Neo4j软件包?ONgDB可以适配哪个版本的Neo4j Python驱动软件包?ONgDB 1.x版本的特点是…

Oracle系列之八:SQL查询

SQL查询 1. 基本查询2. 连接查询3. SQL语句解析4. Oracle Hint Oracle它提供了一个强大的SQL引擎,使得用户可以通过SQL语言来管理和操作数据库。 1. 基本查询 以CAP(顾客-代理-产品)数据库为例,表结构如下: CUSTOME…

第四章 单例模式

文章目录 前言一、单例模式的介绍二、单例模式的 8 种实现方式(懒汉式要注意线程安全问题)1、饿汉式(静态常量)优缺点:可能会造成内存的浪费,但也只能浪费内存 2、饿汉式(静态代码块&#xff09…

( “树” 之 BST) 538. 把二叉搜索树转换为累加树 ——【Leetcode每日一题】

二叉查找树(BST):根节点大于等于左子树所有节点,小于等于右子树所有节点。 二叉查找树中序遍历有序。 538. 把二叉搜索树转换为累加树 给出二叉 搜索 树的根节点,该树的节点值各不相同,请你将其转换为累加…

( “树” 之 DFS) 337. 打家劫舍 III ——【Leetcode每日一题】

337. 打家劫舍 III 小偷又发现了一个新的可行窃的地区。这个地区只有一个入口,我们称之为 root。 除了 root 之外,每栋房子有且只有一个“父“房子与之相连。一番侦察之后,聪明的小偷意识到“这个地方的所有房屋的排列类似于一棵二叉树”。…

IDEA社区版搭建Tomcat服务器并创建web项目

IDEA社区版搭建Tomcat服务器并创建web项目 目标 创建Web项目的目录结构可以启动Tomcat服务器编写Servlet并访问成功 问题 IDEA社区版没有创建Web工程的选项IDEA社区版没有Tomcat插件 实现步骤 针对以上两个问题,分步解决 问题一:IDEA社区版没有创建…

《花雕学AI》18:AI绘画尝鲜Prompt Hunt,使用人工智能模型来创造、探索和分享艺术作品

引言: 人工智能是当今科技领域的热门话题,它不仅可以帮助人类解决各种实际问题,也可以激发人类的创造力和艺术感。Prompt Hunt就是一个利用人工智能模型来创造、探索和分享艺术作品的AI绘画网站。它提供了三种不同的模型,分别是S…

Git 分布式版本控制工具

文章目录 Git 分布式版本控制工具课程内容1. 前言1.1 什么是Git1.2 使用Git能做什么 2. Git概述2.1 Git简介2.2 Git下载与安装 TODO3. Git代码托管服务3.1 常用的Git代码托管服务3.2 码云代码托管服务3.2.1 注册码云账号3.2.2 登录码云3.2.3 创建远程仓库3.2.4 邀请其他用户成为…

最火爆的持续集成工具 jenkins ,详细教程来啦(傻瓜式教程)

很多小伙伴在安装以及配置jenkins的时候,总会遇到一些问题。 今天在这边特地把jenkins的安装,以及常用的一些功能的配置整理到了这篇文章中,希望对大家有所帮助! 1安装JDK JDK安装完需要配置环境变量,大家可以自行百度…

Spark学习:spark读写postgreSql

读写PostgreSql 一、环境搭建二、写三、读四、ETL一、环境搭建 1、spark安装包,官网地址,我下的是如下版本 2、postgreSql数据库jdbc驱动,官网地址,我下的是如下版本 3、java版本1.8;scala版本2.12.15 4、spark安装包解压到任意目录,把postgreSql的jdbc驱动jar包放在spark的…