目录
将下载的文件夹(压缩包需要解压)移动到components/arduino/libraries路径下,并重命名为Bounce2
前言
乐鑫官方的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