什么是Arduino 库

Arduino库是一种共享开源代码(如设备驱动程序或常用实用程序函数)的最方便方式。Arduino 库是这个开源平台最大的特色之一,正是有了海量的Arduino开源库,让你无需花时间去了解和学习处理器底层的驱动程序和各种外设的驱动程序,简单容易上手,对于快速实现产品原型,提升产品的开发速度,有着无可比拟的天生优势,因此,Arduino才得以在全世界风靡开来,被越来越多的创客、学生、嵌入式产品开发者使用。本指南详细介绍了如何在计算机上安装库。要了解Arduino库的精彩介绍以及如何使用它们,请参阅Arduino提示、技巧和技术中的libraries页面。

Arduino库的分类

一般有三种类型的Arduino库:标准库

Arduino IDE附带了一组用于常用功能的标准库。这些库支持IDE中包含的所有示例。标准库功能包括基本的通信功能和对一些最常见的硬件类型的支持,如伺服电机和字符液晶显示器。

标准库预装在Arduino安装的“Libraries”文件夹中。如果安装了多个版本的IDE,那么每个版本都有自己的一组库。在大多数情况下,不要更改标准库或将库安装在相同的文件夹中。库管理器库

更新的Arduino IDE有一个库管理器,可以方便地安装提交给Arduino使用的第三方库用户安装库

还有许多其他第三方的库,它们具有适用于各种硬件的有用功能和设备驱动程序。这些驱动程序可以从Arduino Playground,Github和谷歌代码下载获取。

户安装的库应该安装在sketchbook libraries文件夹中,这样它们就可以用于IDE的所有版本。这样,如果发布了IDE的新版本,您就不必重新安装您喜爱的所有库!

库管理

库管理器是Arduino IDE的一个较新的特性。许多流行的库,包括大部分Adafruit,都在库管理器中。如果您希望使用其他人的库,首先检查库管理器,看看那里面是否有你需的库,而不是下载副本到本地库文件夹。

首先,加载Arduino IDE。然后使用顶部的菜单选择Sketch -> Include Library -> Manage Libraries…

然后,您将得到可以安装的所有优秀库的列表!

大多数情况下,您可以使用顶部的搜索功能来查找特定的库。

上图中,用户在搜索栏中输入adafruit。所有包含Adafruit或以Adafruit开头的库都会显示。

您可以向下滚动列表以找到您正在寻找的库。假设我们想要的Circuit Playground库如下所示。您可以单击Install按钮使其可用,或者如果它已经安装,您可以选择您想要的版本(通常是最新的,但有时是较早的库,以确保兼容性)。

通常(但并非所有的都有),加载一个库会附带一些额外可用性的示例。在菜单中,转到Files -> Examples,然后选择库名(如果有的话)并浏览其他示例。加载AdafruitCircuit Playground库上面也加载了12个例子和4个目录与额外的例子。

如果您希望升级,最新版本的Arduino IDE将在启动时提醒您,已安装的库(和板)的新版本可用。在紧急情况下,您可以安全地忽略这些库,但在启动新项目时,您需要获得最新的库。

手动安装库

使用库管理器是安装库最简单、最安全的方法。如果可能的话,你应该尽量使用的这个方法。

如果您想使用的库无法通过库管理器获得,那么您可以获取源代码并将其放置到计算机的本地库文件夹中。文件夹的位置是相对固定的。

参见下面的文件层次结构:

在正确的位置安装库是很重要的。否则,当您尝试编译和上传程序时,编译器将无法找到它们。

!不正确安装的库会导致IDE出现许多问题。

找到你的Sketchbook文件夹和库文件夹

sketchbook 文件夹是Arduino IDE存储您的程序的文件夹。该文件夹在安装时由IDE自动创建。

在Linux机器上,文件夹名为“Sketchbook”,通常位于/home/中

!这是Windows和Mac机器上常见的混淆来源,你的sketchbook文件夹没有命名为“sketchbook”,而是命名为“Arduino”!

用户安装的库应该放在名为libraries的文件夹中,位于您的sketchbook文件夹中。IDE将在这里查找用户安装的库。

!在Arduino IDE的1.0.2及更高版本上,“Libraries”文件夹会自动创建。在IDE的早期版本中,您可能需要在安装第一个库时创建它。

打开首选项对话框

单击IDE中的File ->Preferences 。

找到Sketchbook 的位置

通常在文档文件夹里有一个名为Arduino的文件夹。

一旦你知道了位置,在Windows资源管理器或mac Finder中导航到这个文件夹

创建一个Libraries 文件夹

如果那里没有Libraries文件夹,创建一个。

在Windows资源管理器中右键单击并选择New ->文件夹。

重命名为Libraries

右键单击新文件夹并选择Rename。然后输入库。

在Windows上安装一个库

按照以下步骤在Windows中安装库。

关闭Arduino IDE

首先确保Arduino IDE的所有实例都已关闭。IDE只在启动时扫描库。只要IDE的任何实例是打开的,它就不会看到您的新库!

下载Zip文件

确保选择了库的发布版本。一些库存储库仍在开发中,可能包含未发布或未测试的代码。“发布”按钮会将您带到已测试和已发布的版本。点击Github库页面上的“发布”按钮,可以找到该库的发布版本。

然后下载zip文件。

在下载文件夹中找到它

OSX会自动在那里打开zip文件。

将其拖到库文件夹

开你的sketchbook Libraries文件夹,并从下载中拖动主文件夹到其中。

给它一个合法的名字

IDE不会识别名称中带有破折号的文件夹。所以你必须重命名Github主文件夹。带下划线是正确的。

重新启动Arduino IDE

重启Arduino IDE并验证库是否出现在File->Examples菜单中。

加载一个库示例以进行测试。

验证它可以编译

单击左上方的check-mark图标,验证示例程序编译时没有错误。

在Linux上安装一个库

按照以下步骤在Linux中安装库。

关闭Arduino IDE

首先确保Arduino IDE的所有实例都已关闭。IDE只在启动时扫描库。只要IDE的任何实例是打开的,它就不会看到您的新库!

下载Zip文件

确保选择了库的发布版本。一些库存储库仍在开发中,可能包含未发布或未测试的代码。“发布”按钮会将您带到已测试和已发布的版本。点击Github库页面上的“发布”按钮,可以找到该库的发布版本。

然后下载zip文件。

保存Zip文件

将zip文件保存到一个方便查看的位置。

打开Zip文件

打开Zip文件并复制库主文件夹。

开始提取

从菜单中选择“提取”,然后导航到你的Sketchbook/Libraries文件夹

解压缩到库文件夹中

导航到sketchbook/libraries文件夹后,完成提取。

给它一个合法的名字

IDE不会识别名称中带有破折号的文件夹。所以你必须重命名Github主文件夹。下划线是正确的!

重新启动IDE

重启Arduino IDE并验证库是否出现在File->Examples菜单中。

加载一个库示例以进行测试。

验证它可以编译

单击左上方的check-mark图标,验证示例草图编译时没有错误。

常见的库问题

“xxxx”没有命名一个类型

这是与库相关的最常见的错误消息,它意味着编译器无法找到库。这可能是由于以下原因未安装库(请参阅本指南的前几页)

错误的文件夹位置

错误的文件夹名称

错误的库名称

库的依赖关系

忘记关闭IDE

下面是这些问题的解决方案。

错误的文件夹位置

IDE只会找到安装在sketchbook libraries文件夹中的标准库和库。它将无法找到安装在其他地方的库。

brary文件夹必须位于Libraries文件夹的顶层。如果将其放在子文件夹中,IDE将找不到它。

注意:一些第三方库存储库有不同的文件夹结构。您可能需要重新安排,以确保库文件位于文件夹的顶层。WaveHC就是一个例子。实际的库文件夹是顶级存储库文件夹中的一个文件夹。

不要有“Sketchbook”文件夹

它就在那里。但在Windows或Mac/OSX机器上,它可能不会被命名为“Sketchbook”。请参阅标题为“在哪里安装库”的页面。

不完整的库

您必须下载并安装整个库。不要省略或更改library文件夹内的任何文件的名称。

错误的文件夹名称

IDE不会加载名称中包含某些字符的文件。不幸的是,它不喜欢Github生成的zip文件名中的破折号。解压文件时,重命名文件夹,使其不包含任何“非法”字符。简单地将每个破折号(' - ')替换为下划线(' _ ')通常有效。

错误的库名称

在程序中的#include中指定的名称必须与库中的类名完全匹配(包括大写!)。如果它不完全匹配,IDE将无法找到它。库中包含的示例草图将具有正确的拼写。只要从那里剪切和粘贴,以避免拼写错误。

多个版本

如果您有一个库的多个版本,IDE将尝试加载所有版本。这将导致编译器错误。仅仅重命名库文件夹是不够的。它必须被移到sketchbook Libraries文件夹之外,这样IDE就不会尝试加载它。

库依赖

有些库依赖于其他库。例如,大多数Adafruit图形显示库都依赖于Adafruit GFX库。必须安装GFX库才能使用依赖库。

“核心”库

有些库不能直接使用。GFX库就是一个很好的例子。它为许多Adafruit显示器提供了核心图形功能,但是如果没有该显示器的特定驱动程序库就不能使用。

忘记关闭IDE

IDE只在启动时搜索库。必须关闭IDE的所有实例并重新启动,它才能识别新安装的库。

arduino下载库出错_纯干货!关于Arduino 库在多种操作系统安装使用最详细、最全面的指南及常见问题解决办法!...相关推荐

  1. 纯干货分享:CCD图像传感器知识全解,超详细!

    纯干货分享:CCD图像传感器知识全解,超详细! 今天给大家介绍CCD图像传感器,关注我们的朋友会很明显的知道,鼎易鸿基&万酷电子在介绍产品扫描枪的时候会有这样一句话"采用工业级高性能 ...

  2. 猎杀对决与服务器连接中断,猎杀对决游戏常见问题汇总_猎杀对决游戏常见问题解决办法...

    猎杀对决游戏相信大家应该已经不陌生了,对于这款游戏还不好玩小编已经不用给大家介绍大家也知道了,今天小编给大家带来猎杀对决游戏常见问题解决办法. 猎杀对决游戏常见问题解决办法 猎杀对决提示EasyAnt ...

  3. 联想黑苹果找不到触摸板_联想V330-15IKB完美黑苹果,和笔记本各类常见问题解决办法...

    本帖最后由 rclhxm 于 2020-9-17 20:31 编辑 前言 最近用了一周的时间把我的联想V330-15IKB给装上了10.15.6的黑苹果,并完美驱动(完善程度90%以上,因为可能有些领 ...

  4. python迅雷下载任务出错_迅雷下载任务出错的原因和解决方法 来研究下吧

    手机和电脑都可以使用迅雷下载,如何知道迅雷下载任务出错的原因和解决方法呢,下面小编分享下经验. 操作方法 01 先说电脑端,电脑端如果是个别任务下载出现问题,那是资源本身问题导致的,可以换一个网址下载 ...

  5. python迅雷下载任务出错_迅雷下载时提示“任务出错”怎么办?(附多种解决方法)...

    迅雷可以说是目前国内最大的下载工具了,在使用迅雷下载文件的时候,有时候会出现下载任务出错,那么有哪些原因导致下载任务出错呢?应该怎么解决呢? 原因一:可能是下载的资源出现问题 解决办法:重新选择资源 ...

  6. python迅雷下载任务出错_迅雷下载时提示“任务出错”怎么办?小编教你(附多种解决方法)...

    迅雷可以说是目前国内最大的下载工具了,在使用迅雷下载文件的时候,有时候会出现下载任务出错,那么有哪些原因导致下载任务出错呢?应该怎么解决呢? 原因一:可能是下载的资源出现问题 解决办法:重新选择资源 ...

  7. 为什么localstorage获取不到数据_纯干货!小白必看,为什么你微博超话引流不到人?揭秘在超话快速获取5000精准客源的引流实操方法...

    星哥说引流,星哥说营销,星哥说社群 大家好,我是引流哥尹星. 今天给大家分享的是一个通过微博给微信精准引流的玩法. 玩转微博超级话题快速获取5000精准客源,实操方法和注意事项 全文2000字左右,耐 ...

  8. arduino彩灯计时器电路_用树莓派或 Arduino 制造 LED 矩阵彩灯

    MAKER:maketvee/译:趣无尽 Cherry(转载请注明出处) 之前我们介绍过一款非常炫酷的<熔岩特效灯>.这期教程中我将为大家介绍一款更易上手的灯. 这款 LED 矩阵彩灯使用 ...

  9. arduino使用oled代码_如何做一个Arduino无线气象站

    今天我们来介绍如何利用DHT22传感器测量室外温度和湿度,并使用NRF24L01收发器模块将该数据无线发送到室内单元.在室内单元中,还有一个用于测量室内温度和湿度的DHT22传感器,以及一个DS323 ...

  10. uos系统安装教程_国产统一操作系统uos怎么安装? uos操作系统安装步骤

    UOS操作系统如何进行安装呢?我们可以下载官方的版本安装就可以了,下面我们就来看看详细的图文教程,我们提供了该系统的官方下载哦,需要的朋友可以下载使用. 1.到官方网址下载UOS的原版镜像文件.当然也 ...

最新文章

  1. Hadoop MapReduce工作详细流程(Partitioner/SortComparator/GroupingComparator)
  2. Window对象的判定方法
  3. 微信小程序超级占内存_6款宝藏微信小程序,简单又实用,节约内存就靠它了...
  4. LeetCode Shell 192. 统计词频
  5. 记一次axios源码排查
  6. 【节日快乐】圣诞元旦在即,你准备好怎么营销了吗?
  7. 【珍藏版】震撼发布2017年Android百大框架排行榜
  8. 魔术表演的核心秘密(二)——障眼法是怎么实现的?
  9. winows10和centos 双系统 安装记录
  10. 在kile中使用Astyle插件使代码自动对齐
  11. 极验滑块验证码破解最新版
  12. Python第三方生态库归类介绍
  13. java 函数 作为参数_如何在Java中将函数作为参数传递?
  14. npm下载什么都报错ERRO -4048
  15. 解决3ds Max在高分辨率屏幕下显示字体偏小的问题
  16. 配置tensorflow-gpu,大过年的头秃啊
  17. x200 xp 驱动下载
  18. oracle序列nextval报空指针,Derby上的Oracle序列nextval问题
  19. 【android极光推送】—从客户端到后台,一文通吃
  20. python实现找100以内质数

热门文章

  1. 南信大 计算机与软件学院 校花,美哭了!南京12所高校最美“校花”新鲜出炉!颜值爆表!你的母校上榜了吗?...
  2. dht11温湿度传感器工作原理引脚功能电路接线图
  3. [linux shell]比较运算符小坑(unary operator excepted 期望的一元运算符错误)
  4. PING 192.168.5.13 (192.168.5.13 ) 56(84) data bytes后长时间不响应
  5. python问题解决:TypeError: ufunc 'add' output (typecode 'O') could not be coerced to provided output para
  6. VMware虚拟机安装win10卡顿优化
  7. Android RSASHA加密
  8. String类型getBytes方法
  9. 直播场景音频降噪,传统算法 VS AI 算法对比和实践
  10. No MyBatis mapper was found in ‘[xx.mapper]‘ package. Please check your configuration.特殊处理