在ESP32-Arduino开发中添加其它Arduino库

news2024/12/20 6:39:36

目录

前言

原理说明

操作步骤

下载Bounce

安装Bounce

将下载的文件夹(压缩包需要解压)移动到components/arduino/libraries路径下,并重命名为Bounce2

查看添加库里所有的源文件位置

在arduino的CMakeList.txt里添加库源文件

使用Bounce


前言

乐鑫官方的esp-arduino把ESP32的大部分外设做了arduino驱动开发(仍在持续进行中),并且也提供了一部分有趣的应用库,但有时,还需要使用一些其它esp-arduino中未提供的arduino库,这种情况也是可以很容易搞定的

原理说明

将待添加的arduino库,添加到esp-arduino components中,这样便安装在ESP-IDF框架中,可以在工程中被调用了

操作步骤

这里以添加Bounce2库为例进行说明

下载Bounce

GitHub - thomasfredericks/Bounce2: Debouncing library for Arduino and Wiring

在这里使用git或下载zip包均可

安装Bounce

将下载的文件夹(压缩包需要解压)移动到components/arduino/libraries路径下,并重命名为Bounce2

查看添加库里所有的源文件位置

(在linux下可使用如下命令:find libraries/Bounce2/src/ -name '*.c' -o -name '*.cpp'),可以看到在Bounce2/src路径下有.h和.cpp文件

在arduino的CMakeList.txt里添加库源文件

打开/idf/components/arduino/CMakeLists.txt文件

  • 添加头文件include路径

在set(includedirs字段末尾加上源文件include路径,如:libraries/Bounce2/src

  • 添加源文件路径

在set(LIBRARY_SRCS字段末尾添加,如:libraries/Bounce2/src/Bounce2.cpp

使用Bounce

在工程里include头文件,并调用库API即可使用该库,如下所示:

参考资料:https://docs.espressif.com/projects/arduino-esp32/en/latest/esp-idf_component.html

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

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

相关文章

HTTP介绍 原理 消息结构 客户端请求 服务器响应 HTTP状态码

一、HTTP介绍二、HTTP工作原理HTTP三点注意事项 三、HTTP消息结构四、客户端请求消息五、服务器响应消息HTTP请求方法 七、HTTP响应头信息八、HTTP状态码(HTTP Status Code)下面是常见的HTTP状态码:HTTP状态码分类HTTP状态码列表 一、HTTP介绍…

旁注、目录越权、跨库查询、cdn绕过

原理: 搭建网站多IP多端口,更多一个域名多网站,IIS的在属性-高级里面设置主机头设置域名,域名是收费的需要自己买一个 旁注:在同一服务器上有多个站点,要攻击的这个站点假设没有漏洞,可以攻击…

Spark大数据分析与实战笔记(第一章 Scala语言基础-5)

文章目录 每日一句正能量章节概要1.5 Scala的模式匹配与样例类1.5.1 模式匹配字符匹配匹配字符串守卫匹配类型匹配数组、元组、集合 1.5.2 样例类 课外补充偏函数 每日一句正能量 “成功的秘诀,在于对目标的执着追求。”——爱迪生 无论是在工作、学习、还是生活中&…

控制台的设置

目录 win32 API : 什么是API : 控制台: 控制台与VS: 控制台的控制: 控制台窗口设置: 1、mode函数: 2、title 函数: 在C语言中的实现: 控制台的坐标设置&#…

python 之numpy 之随机生成数

文章目录 1. **生成均匀分布的随机浮点数**:2. **生成随机整数**:3. **生成标准正态分布随机数**:4. **生成正态分布随机数**:5. **生成均匀分布的随机浮点数**:6. **生成随机抽样**:7. **设置随机数种子**…

Linux下Samba服务安装及启用全攻略

Linux下Samba服务安装及启用全攻略 前言一、安装SSH Server二、安装Samba Server1.安装net-tool2.建立账号的samba3.windows通过Samba与linux共享文件4.使用远程工具登录Linux 总结 前言 提示:本文详解了在Linux系统下如何安装和启用Samba服务,涵盖了从…

商家收款码手续费太高了

在竞争激烈、各行各业都如此内卷的当下,商家需要不断寻求提高利润的方法。所谓开源节流,既要学会提高利润率,也要学会节省成本,毕竟钱是挣出来的,同时也是省出来的。作为一个经常使用收款工具的商家,很多人…

Ubuntu源码编译samba

概述 本人最近研究samba的源码,但是在源码编译的时候,本以为直接config,make,make install。没想到编译过程中碰到很多麻烦,主要是各种依赖问题。 基于此,本文把samba编译的详细过程记录下来,以供再次研究借鉴。 软件…

Javascript命令模式

Javascript命令模式 1 什么是命令模式2 命令模式的例子—菜单程序3 JavaScript 中的命令模式4 撤销命令5 宏命令 1 什么是命令模式 在一个餐厅中,当客人现场点餐或者打电话订餐时,老板会把客人的需求写在清单上,厨师会按照清单的顺序给客人炒…

qt 多语言版本 QLinguist使用方法

在使用qt开发一款软件时,可能需要考虑显示文本中英文等多语言版本。可以使用qt语言家的方式实现。 步骤: 1、代码中给控件设置文本时,记得带上QObject::tr() 2、工程pro文件中加入 TRANSLATIONS demo2_en.ts 3、Qt creator点击“工具”—“外…

C语言【文件】

目录 概念 文件名 文件的打开和关闭 fopen fclose 输入输出函数 fputc fgetc fputs fgets fprintf fscanf fwrite fread 三种流 scanf和sprintf 结构体转化 ​编辑 文件的随机读写 fseek ftell rewind 文本文件和二进制文件 文件读取结束的判定 文件缓冲…

【试题035】逻辑非!例题

1.题目:下列表达式值为1的是? A. 3 & 4 B. 2 >5 C. ! !8 D. 0 ! 0 2.分析: 关于A选项: 3的二进制是:0011 4的二进制是:0100 0011 & 0100 00000 关于B选项: …

双势阱模型

双势阱模型 原子钟 传统的原子钟利用氨分子 由于隧道效应,上顶点的氮原子可以贯穿三个氢原子形成的势垒,到达下顶点对体系注入微波能量后,氮原子在上下定点之间振荡,体系的能量在两个稳定态之间交替变换,其振荡频率决…

2023淘宝十一预售今天20点开启!有什么优惠活动我们来一起看一下!

2023双11预售玩法将于今天20点正式开启!有神优惠活动和玩法攻略,我,们一起来看一下! 今双十一预售有加购赢清空购物车大奖,攒幸运值领红包,限时抢免定金福利,做任务攒幸运值赢免定特权这几大活…

PS001:PS2020及GeographicImager6.2安装

引言:Geographic ImagerV6.2是一款专业的PS地理成像插件,通过安装这款插件可实现在PS中加载4G以上的.bigtiff格式影像并对其进行修改与保存。并且这款软件拥有投影信息修改、基于地理坐标进行影像裁切等多种功能。 一、插件介绍 Geographic ImagerV6.2是…

【Windows】Edge浏览器自动更新服务启用选禁用被拒绝访问的解决方案

Windows系统的服务窗口里,把一些服务的启动类型选择禁用有可能会提示拒绝访问,怎么弄呢,这里讲一讲怎样禁用这个服务。 举一个类似禁用服务的例子:怎样关闭Edge浏览器的自动更新服务, 关闭服务 已知,Win…

CesiumJS 中绘制大多边形

本文翻译自Cesium官方,有改动。 本文中提及到的“大多边形”就如下图所示。 在Cesium的早期版本和一些引擎中,我们绘制这种跨度比较大的多边形,经常会看到一些奇怪的冲突问题,如下图所示。 要渲染任何几何体,我们必…

makesense在线yolov5标注

文章目录 一、创建图片文件夹和label.txt二、在线标注数据 参考文章博主:风吹落叶花飘荡 一、创建图片文件夹和label.txt 创建一个放置图片的文件夹images,存放需要标注的图片(图片最好重命名为1,2,3…避免后面混淆) 创建label.t…

BadNets: Identifying Vulnerabilities in the Machine Learning Model Supply Chain

BadNets: Identifying Vulnerabilities in the Machine Learning Model Supply Chain----《BadNets:识别机器学习模型供应链中的漏洞》 背景: 许多用户将训练过程外包给云计算,或者依赖于经过训练的模型,然后根据特定的任务对模型进行微调。这…

patient feature-based softmax embedding

方法 作者未提供可直接运行的代码