ESP-IDF学习记录(3)ESP-IDF组件管理

既然官方把这个组件管理按钮放置的这么明显,就一定有他的用心良苦,今天学习一下这个组件管理。 

Componments manager

1.给当前项目安装组件

IDF Component Manager and ESP Component Registry Documentation — IDF Component Management documentationicon-default.png?t=O83Ahttps://docs.espressif.com/projects/idf-component-manager/en/latest/

Install ESP-IDF Components - - — ESP-IDF Extension for VSCode latest documentationicon-default.png?t=O83Ahttps://docs.espressif.com/projects/vscode-esp-idf-extension/en/latest/additionalfeatures/install-esp-components.html大概读了一下官方的组件仓库介绍,组件仓库支持之前所有库,(比如外部硬件驱动,lcd屏幕驱动,包括下面图片里面的内容),都可以以单独的依赖形式加载到已有工程中。

比如搜索一个屏幕驱动,esp_lcd_axs15231b 

点击安装,添加到已有工程中

依赖选项里,还显示了这个组件运行起来需要的其他依赖组件

安装后就可以看到工程目录里面的文件,一个是xxxx.c驱动源码,另一个testxxxxx文件夹里面有一个testxxxxx.c的demo

2.以组件example的模板创建组件工程

组件仓库里面有的组件里面有example选项,点击后,是直接支持以example为模板创建新工程的。

3.支持套娃行为,把Arduino-ESP32作为组件添加到ESP-IDF工程中。

21个依赖,依赖比较多,第一次编译时间比较长。可以看到同样是helloworld,源码内容变得简洁了,c文件也变成了cpp文件。

第三点不是我以后的学习方向,大概了解一下。

需要注意的是,arduino-esp32版本号和esp-idf版本要兼容,不然编译会报错的。

之前的arduino-esp32都是以较旧版本的idf为基础的开发的。感觉现在arduino也开始来追赶idf版本号了,导致arduino-idf直接跳过idf5.2支持,直接从idf5.1跳到idf5.3了,不支持最新的idf5.4。

//houyawei 2024.12.29

注意一点,组件仓库只有以vscode ui界面的开发,进去才会显示安装,新建样板工程的按钮。直接从网页进入组件仓库是不会显示这两个按钮的。ESP Component RegistryESP Component Registryicon-default.png?t=O83Ahttps://components.espressif.com/

 ESP-IDF学习记录(1)ESPIDF环境安装,框架了解,资料整理-CSDN博客文章浏览阅读638次,点赞16次,收藏16次。以后只要有空就会进行学习记录,主要是自用,学到哪记录到哪,有时候东西记录下来能得到不通的理解。最终的目的是为了用esp32驱动屏幕,学习设计LVGL界面,做一些小产品,有益于公司及个人。之前接触多的UI还是上位机的QT,esp32自己接触过arduino用的不熟,都是改别人的,调用一大堆库,idf仅有部分了解。个人感觉用idf只用自己需要的依赖,程序会不会更小一点,更容易理解底层。https://blog.csdn.net/u011738895/article/details/144785927?spm=1001.2014.3001.5501

ESP-IDF学习记录(2)ESP-IDF 扩展的简单使用-CSDN博客文章浏览阅读188次,点赞3次,收藏4次。傻瓜式记录一个示例的打开,编译,运行。后面我再一个个运行简单分析每个demo的内容。https://blog.csdn.net/u011738895/article/details/144790339?spm=1001.2014.3001.5501

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

华为麦芒5(安卓6)termux记录 使用ddns-go,alist

下载0.119bate1 安卓5和6版本,不能换源,其他源似乎都用不了,如果root可以直接用面具模块 https://github.com/termux/termux-app/releases/download/v0.119.0-beta.1/termux-app_v0.119.0-beta.1apt-android-5-github-debug_arm64-v8a.apk 安装ssh(非必要) pkg install open…

园区网综合拓扑实验

一、实验要求 实验拓扑图如上图所示 1、按照图示的VLAN及IP地址需求,完成相关配置 2、要求SW1为VLAN 2/3的主根及主网关 SW2为vlan 20/30的主根及主网关 SW1和SW2互为备份 3、可以使用super vlan(本实验未使用) 4、上层…

JSON 系列之4:JSON_VALUE

JSON_VALUE的作用,简单来说,就是从JSON到SQL: SQL/JSON function JSON_VALUE selects JSON data and returns a SQL scalar or an instance of a user-defined SQL object type or SQL collection type (varray, nested table) 所以&#xff…

设置首选网络类型以及调用Android框架层的隐藏API

在Android SDK中提供的framework.jar是阉割版本的,比如有些类标记为hide,这些类不会被打包到这个jar中,而有些只是类中的某个方法或或属性被标记为hide,则这些类或属性会被打包到framework.jar,但是我们无法调用&#…

Mac 12.1安装tiger-vnc问题-routines:CRYPTO_internal:bad key length

背景:因为某些原因需要从本地mac连接远程linxu桌面查看一些内容,必须使用桌面查看,所以ssh无法满足,所以决定安装vnc客户端。 问题: 在mac上通过 brew install tiger-vnc命令安装, 但是报错如下: > D…

【Java-tesseract】OCR图片文本识别

文章目录 一、需求二、概述三、部署安装四、技术细节五、总结 一、需求 场景需求:是对识别常见的PNG,JPEG,TIFF,GIF图片识别,环境为离线内网。组件要求开源免费,并且可以集成Java生成接口服务。 二、概述 我不做选型对比了,我筛选测试了下Tesseract(v…

PCIe和DMA:数据传输的“双子星“

简单来说,PCIe是一种硬件总线标准,就像高速公路;DMA是一种数据传输机制,就像在高速公路上行驶的卡车。所以这两个是两种不同的概念。 理解PCIe传输 PCIe(PCI Express)是一种硬件接口规范,定义…

VS Code中怎样查看某分支的提交历史记录

VsCode中无法直接查看某分支的提交记录,需借助插件才行,常见的插件如果git history只能查看某页面的改动记录,无法查看某分支的整体提交记录,我们可以安装GIT Graph插件来解决这个问题 1.在 VSCode的插件库中搜索 GIT Graph安装&a…

第三方接口设计注意要点

实际工作中,我们会遇到与三方系统对接的情形,比如对接短信服务、支付服务、地图服务、以及一些外部业务系统的调用和回调等等,不论是我们调用第三方接口还是我们为其他系统提供接口服务,调用过程中会遇到一些大大小小的问题和吐槽…

使用 pushy 热更新后 sentry 不能正常显示源码

问题 使用 Android Studio 打包后,上传使用 sentry 官网命令打包的 sourcemap 文件,sentry能正常显示异常位置源码。 使用 pushy 热更新之后,sentry 不能正常显示异常位置的源代码。 如下图: 问题原因: 使用 pushy …

Nginx的性能分析与调优简介

Nginx的性能分析与调优简介 一、Nginx的用途二、Nginx负载均衡策略介绍与调优三、其他调优方式简介四、Nginx的性能监控 一、Nginx的用途 ‌Nginx是一种高性能的HTTP和反向代理服务器,最初作为HTTP服务器开发,主要用于服务静态内容如HTML文件、图像、视…

第26周:文献阅读

目录 摘要 Abstract 文献阅读 现有问题 提出方法 创新点 CEEMDAN-BiGRU-SVR-MWOA框架 多源数据融合 参数优化 方法论 实验研究 数据准备 评估指标 结论 适应性分析 总结 摘要 本周阅读的文献是《A Hybrid Data-Driven Deep Learning Prediction Framework fo…

微信V3支付报错 平台证书及平台证书序列号

1.平台证书及平台证书序列号设置错误报错: 错误1: Verify the response’s data with: timestamp1735184656, noncea5806b8cabc923299f8db1a174f3a4d0, signatureFZ5FgD/jtt4J99GKssKWKA/0buBSOAbWcu6H52l2UqqaJKvrsNxvodB569ZFz5G3fbassOQcSh5BFq6hvE…

LunarVim安装

LunarVim以其丰富的功能和灵活的定制性,迅速在Nvim用户中流行开来。它不仅提供了一套完善的默认配置,还允许用户根据自己的需求进行深度定制。无论是自动补全、内置终端、文件浏览器,还是模糊查找、LSP支持、代码检测、格式化和调试&#xff…

2024.12.25在腾讯云服务器上使用docker部署flask

2024.12.25在腾讯云服务器上使用docker部署flask 操作系统:Ubuntu 根据腾讯云的说明文档安装 Docker 并配置镜像加速源,注意需要安装腾讯云的加速源,使用官网的加速源连接极其不稳定,容易导致运行失败。使用哪个公司的云服务器就…

程序员使用Cursor做独立开发教程

简介 欢迎来到Cursor的独立开发教程!在这里,我们将一步步指导您如何成为一名成功的独立开发者,从寻找需求、开发网站、获取流量到网站变现,我们将覆盖独立开发的完整生命周期。 第1章:理解独立开发 1.1 独立开发的…

Java 中的各种锁

​ Java 中我们经常听到各种锁,例如悲观锁,乐观锁,自旋锁等等。今天我们将 Java 中的所有锁放到一起比较一下,并分析各自锁的特点,让大家能够快捷的理解相关知识。 1、悲观锁 VS 乐观锁 从概念上来说 悲观锁: ​ 在…

iOS Masonry对包体积的影响

01 Masonry介绍 Masonry是iOS在控件布局中经常使用的一个轻量级框架,Masonry让NSLayoutConstraint使用起来更为简洁。Masonry简化了NSLayoutConstraint的使用方式,让我们可以以链式的方式为我们的控件指定约束。 常用接口声明与实现: 使用方式…

Flink源码解析之:如何根据StreamGraph生成JobGraph

Flink源码解析之:如何根据StreamGraph生成JobGraph 在上一章节中,我们讲解了Flink如何将用户自定义逻辑算子转换成StreamGraph。在生成StreamGraph的过程中,Flink内部没有做任何优化,只是将用户自定义算子和处理流程转换成了Stre…

Docker Container 可观测性最佳实践

Docker Container 介绍 Docker Container( Docker 容器)是一种轻量级、可移植的、自给自足的软件运行环境,它在 Docker 引擎的宿主机上运行。容器在许多方面类似于虚拟机,但它们更轻量,因为它们不需要模拟整个操作系统…