在Ubuntu2004中搭建基于ESP-IDF v5.1的ESP32-S3开发环境

news2024/11/27 6:04:04

在Ubuntu2004中搭建基于ESP-IDF v5.1的ESP32-S3开发环境


目录

1 基本资料
2 注意事项
  2.1 子模块检出失败处理
  2.2 选择 Espressif 下载服务器
  2.3 自定义工具安装路径
  2.4 导出环境变量
  2.5 测试基础环境
3 创建自己的工程
  3.1 创建基础应用工程
  3.2 创建组件(用于打包自己的静态库)工程


1 基本资料

    在进行开发环境的搭建的时候,需要优先参考官方文档资料,包括:ESP-IDF 编程指南 、ESP-IDF 构建系统 。


2 注意事项

2.1 子模块检出失败处理

    有时候因为网络原因,会有些子模块检出失败,这时候进入esp-idf路径执行下这个子模块更新命令就好了:
git submodule update --init –recursive

2.2 选择 Espressif 下载服务器

    选择从Espressif 下载服务器下载相关工具,会比从github上下载更稳定:
export IDF_GITHUB_ASSETS="dl.espressif.com/github_assets"

2.3 自定义工具安装路径

    自定义工具安装路径,可以更方便自行管理、切换工具链版本等操作:
export IDF_TOOLS_PATH=$HOME/你的开发空间目录/espressif

2.4 导出环境变量

    在经过2.2、2.3的配置之后,就可以执行 install.sh 脚本,执行完之后再导出环境变量(其实并不只是环境变量)到当前命令行:
cd $HOME/你的开发空间目录/esp-idf-v5.1
. $HOME/你的开发空间目录/esp-idf-v5.1/export.sh

2.5 测试基础环境

    测试基础环境就直接用hello_world工程测试就行了,执行如下命令:
cd $HOME/你的开发空间目录/hello_world
idf.py set-target esp32s3
idf.py menuconfig
idf.py build

3 创建自己的工程

3.1 创建基础应用工程

    在你的开发空间目录,创建一个你的工程目录(不在idf目录下):
cd $HOME/你的开发空间目录/
mkdir 你的应用工程目录

cd $HOME/你的开发空间目录/你的应用工程目录
idf.py create-project 你的应用工程

cd $HOME/你的开发空间目录/你的应用工程目录/你的应用工程
idf.py set-target esp32s3
idf.py menuconfig
idf.py build

3.2 创建组件(用于打包自己的静态库)工程

    在你的开发空间目录,创建一个你的工程目录(不在idf目录下):
cd $HOME/你的开发空间目录/
mkdir 你的组件工程目录

cd $HOME/你的开发空间目录/你的组件工程目录
idf.py create-project 你的组件工程

cd $HOME/你的开发空间目录/你的组件工程目录/你的组件工程
idf.py -C components create-component 你的组件名
idf.py set-target esp32s3
idf.py menuconfig
idf.py build

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

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

相关文章

lua除法bug

故事背景,新来了一个数值,要改公式。神奇的一幕出现了,公式算出一个非常大的数。排查是lua有一个除法bug,1除以大数得到一个非常大的数。 function div(a, b)return tonumber(string.format("%.2f", a/b)) end print(1/73003) pri…

微信小程序学习指南从入门到精通

🗽微信小程序学习指南从入门到精通🗽 🔝微信小程序学习指南从入门到精通🔝✍前言✍💻微信小程序学习指南前言💻一、🚀文章列表🚀二、🔯教程文章的好处🔯1. ✅…

《基于FPGA的便携式PWM方波信号发生器》论文分析(三)——数码管稳定显示与系统调试

一、论文概述 基于FPGA的便携式PWM方波信号发生器是一篇由任青颖、庹忠曜、黄洵桢、李智禺和张贤宇 等人发表的一篇期刊论文。该论文主要研究了一种新型的信号发生器,旨在解决传统PWM信号发生器在移动设备信号调控中存在的精准度低和便携性差的问题 。其基于现场可编…

计算机操作系统——进程控制(Linux)

进程控制 进程创建fork()函数fork() 的基本功能fork() 的基本语法fork() 的工作原理fork() 的典型使用示例fork() 的常见问题fork() 和 exec() 结合使用总结 进程终止与$进程终止的本质进程终止的情况正常退出(Exit)由于信号终止非…

【贪心算法第四弹——376.摆动序列】

目录 1.题目解析 题目来源 测试用例 2.算法原理 3.实战代码 代码解析 本题还可以使用动态规划的解法来解决,不过动态规划的时间复杂度为O(N^2),而贪心解法的时间复杂度为O(N),动态规划方法的博客链接: 动态规划-子序列问题——376.摆动…

我谈离散傅里叶变换的补零

有限序列的零延拓——零延拓不会改变离散傅里叶变换的形状的续篇。 L点序列可以做N点傅里叶变换,当 L ⩽ N L\leqslant N L⩽N时不会产生混叠。这部分内容在Rafael Gonzalez和Richard Woods所著的《数字图像处理》完全没有提到。 补零是序列末尾补零,不…

day18 结构体

有参宏和函数的区别 1.展开时机:有参宏而言,在预处理阶段展开,而函数在调用时才展开 2.内存使用:有参宏而言,占用的是所在函数的空间,而函数在调用时会单独开辟空间 3.效率上:有参宏的效率比…

C嘎嘎探索篇:栈与队列的交响:C++中的结构艺术

C嘎嘎探索篇:栈与队列的交响:C中的结构艺术 前言: 小编在之前刚完成了C中栈和队列(stack和queue)的讲解,忘记的小伙伴可以去我上一篇文章看一眼的,今天小编将会带领大家吹奏栈和队列的交响&am…

Postman设置接口关联,实现参数化

🍅 点击文末小卡片 ,免费获取软件测试全套资料,资料在手,涨薪更快 postman设置接口关联 在实际的接口测试中,后一个接口经常需要用到前一个接口返回的结果, 从而让后一个接口能正常执行,这…

大模型的RAG微调与Agent:提升智能代理的效率与效果

目录 ​编辑 引言 RAG模型概述 检索阶段 生成阶段 RAG模型的微调 数据集选择 损失函数设计 微调策略 超参数调整 RAG模型在智能代理中的应用 客户服务 信息检索 内容创作 决策支持: 结论 引言 在人工智能的快速发展中,大型预训练模型&a…

前端---CSS(部分用法)

HTML画页面--》这个页面就是页面上需要的元素罗列起来,但是页面效果很差,不好看,为了让页面好看,为了修饰页面---》CSS CSS的作用:修饰HTML页面 用了CSS之后,样式和元素本身做到了分离的效果。---》降低了代…

【R语言管理】Pycharm配置R语言及使用Anaconda管理R语言虚拟环境

目录 使用Anaconda创建R语言虚拟环境1. 安装Anaconda2. 创建R语言虚拟环境 Pycharm配置R语言1. 安装Pycharm2. R Language for IntelliJ插件 参考 使用Anaconda创建R语言虚拟环境 1. 安装Anaconda Anaconda的安装可参见另一博客-【Python环境管理工具】Anaconda安装及使用教程…

互联网视频推拉流EasyDSS视频直播点播平台视频转码有哪些技术特点和应用?

视频转码本质上是一个先解码再编码的过程。在转码过程中,原始视频码流首先被解码成原始图像数据,然后再根据目标编码标准、分辨率、帧率、码率等参数重新进行编码。这样,转换前后的码流可能遵循相同的视频编码标准,也可能不遵循。…

Linux Shell 脚本题目集

1、执行 ping 命令对指定主机进行测试,以确定该主机是否处于存活状态并输出相应结果。 #!/bin/bashread -p "请输入主机号:" pc # 读取用户输入的主机号if [ -z "$pc" ];then # 检查用户输入是否为空echo "主…

使用ENSP实现默认路由

一、项目拓扑 二、项目实现 1.路由器AR1配置 进入系统试图 sys将路由器命名为R1 sysname R1关闭信息中心 undo info-center enable 进入g0/0/0接口 int g0/0/0将g0/0/0接口IP地址配置为2.2.2.1/24 ip address 2.2.2.1 24进入g0/0/1接口 int g0/0/1将g0/0/1接口IP地址配置为1.…

【vue3实现微信小程序】每日专题与分页跳转的初步实现

快速跳转: 我的个人博客主页👉:Reuuse博客 新开专栏👉:Vue3专栏 参考文献👉:uniapp官网 免费图标👉:阿里巴巴矢量图标库 ❀ 感谢支持!☀ 前情提要 &#x…

小程序-基于java+SpringBoot+Vue的网上花店微信小程序设计与实现

项目运行 1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可 4.硬件环境&#xff1a…

Opencv+ROS实现颜色识别应用

目录 一、工具 二、原理 概念 本质 三、实践 添加发布话题 主要代码 四、成果 五、总结 一、工具 opencvros ubuntu18.04 摄像头 二、原理 概念 彩色图像:RGB(红,绿,蓝) HSV图像:H&#xff0…

解决 java -jar 报错:xxx.jar 中没有主清单属性

问题复现 在使用 java -jar xxx.jar 命令运行 Java 应用程序时,遇到了以下错误: xxx.jar 中没有主清单属性这个错误表示 JAR 文件缺少必要的启动信息,Java 虚拟机无法找到应用程序的入口点。本文将介绍该错误的原因以及如何通过修改 pom.xm…

JavaWeb——SpringBoot原理

10.1. 配置优先级 10.1.1. 配置文件 properties > yml(推荐) > yaml 10.1.2. Java系统属性、命令行参数 命令行参数 > Java系统属性 > 配置文件 10.2. Bean管理 10.2.1. 手动获取bean ApplicationContext,IOC容器对象 10.2.2. bean作用域 10.2.3.…