Статьи

Как установить библиотеку Ардуино

3 комментария

Рассказываем о том, как установить библиотеку Ардуино, где ее взять, способах установки для использования в проектах или в устройстве.

Зачем нужны библиотеки

В Arduino IDE многие скетчи работают с библиотеками, в которых уже есть большая часть кода который не нужно писать.

Кроме того, для различных модулей и датчиков существуют их собственные библиотеки, которые облегчают работу с ними, а саму библиотеку всего лишь необходимо подключить в Ардуино в вашем скетче.

Допустим, у нас есть задача вывести текст на ЖК-дисплей без подключения библиотеки. Для этого нам нужно:

  • передать несколько байт команд и данных, что займет несколько строк кода,
  • знать тип микроконтроллера под управлением которого работает LCD дисплей,
  • назначение команд которыми он управляется,
  • знать архитектуру памяти, адреса и назначение регистров, для чего потребуется найти и перечитать его datasheet.

Легче всего будет установить библиотеку Ардуино LiquidCrystal, добавить в скетч и одной строкой вывести текст на ЖК-дисплей:

lcd.print("my text");

Где взять библиотеки

Библиотеки для Ардуино можно найти и скачать в трех основных местах:

  1. В разделе Библиотеки сайта АрдуиноПлюс.ру.
  2. На сайте arduinolibraries.info.
  3. В "Менеджере библиотек" среды Arduino IDE.
  4. На сайте GitHub.com.

Для удобства на нашем сайте есть целый раздел, который так и называется - Библиотеки Ардуино. В своих уроках мы как, правило, приводим ссылки на используемые библиотеки в проекте.

После того как Вы скачали (загрузили) библиотеку на свой компьютер, её нужно установить в Ардуино.

Установка библиотеки

Установку библиотек в Ардуино можно двумя основными способами:

  1. Через "Менеджера библиотек" среды разработки Arduino IDE.
  2. Вручную через скачивание и установку нужной библиотеки.

Установка библиотеки через Arduino IDE

Первый способ установки библиотеки в Ардуино - это использование среды разработки и меню этой программы.

Конечно же, у вас должна быть установлена среда разработки на вашем компьютере.

Важно! После установки Arduino IDE на компьютере создается отдельная папка для хранения всех библиотек. Для ОС Linux "Scetchbook", располагается в /home/. Для ОС Windows папка "Arduino", располагается в /Мои документы/.

Зайдите в меню:

Скетч –> Подключить библиотеку –> Добавить .ZIP библиотеку

В появившемся окне нажмите на иконку «Этот компьютер» и выберите папку «Загрузки».

Стандартные библиотеки Arduino находятся в:

C:\Program Files (x86)\Arduino\libraries\ // 64-битная версия Windows
C:\Program Files\Arduino\libraries\ //32-битная версия Windows

Дополнительные библиотеки в:

C:\Users\{Имя Пользователя}\Documents\Arduino\libraries

Библиотеки, установленные через менеджер лежат в:

Документы\Arduino\libraries

Стандартное ядро Ардуино:

C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries

Для другого ядра:

C:\Users\{username}\AppData\Local\Arduino15\packages\{ядро}\hardware\{платформа}\{версия}\libraries

Если при скачивании ZIP архива с сайта, Вы указывали путь для сохранения файла, то вместо папки «Загрузки» укажите путь к файлу.

Выберите ZIP-файл библиотеки, который Вы скачали. Название файла может не соответствовать названию библиотеки.

После чего нажмите на кнопку «Открыть» (англ. - Open).

На этом установка библиотеки завершена, можно приступить к её подключению в скетч. О подключении библиотеки к проекту - читайте ниже.

Установка библиотеки вручную

Распакуйте скаченный Вами ZIP-архив и поместите папку (имя папки обычно совпадает с названием библиотеки) из данного архива в папку:

Этот компьютер -> Документы -> Arduino -> libraries

Если во время копирования Arduino IDE была запущена (открыта), то нужно закрыть все окна этой программы.

После чего можно запустить (открыть) заново среду разработки и приступать к подключению библиотеки в скетч.

Примечание! Папка libraries есть не только по указанному выше пути, но и в папке программы Arduino IDE (где находится файл arduino.exe). Скопировав библиотеку в эту папку, она тоже установится, но Мы не рекомендуем этого делать.

Дело в том, что программа Arduino IDE постоянно развивается и количество её версий постоянно растёт. Если Вы захотите установить новую версию Arduino IDE, то библиотеки находящиеся в папке:

Этот компьютер -> Документы -> Arduino -> libraries

будут доступны и в старой, и в новой (установленной) версии Arduino IDE, а библиотеки находящиеся в папке libraries программы Arduino IDE старой версии (которая была установлена ранее) будут доступны только в ней (пока Вы их не скопируете в новую).

Установка с GitHub

Есть еще один вариант - забирать библиотеки непосредственно с GitHub.com.

Этот проект контроля версий имеет огромную популярность и огромную базу библиотек, примеров кода, скетчей и т.п. и по различным языкам программирования и направлениям.

Например, Git-репозиторий компании Adafruit - github.com/adafruit.

Или вот пример репозитория библиотеки IRLremote на нашем сайте или на Github.

На GitHub любой репозиторий можно клонировать или скачать себе на компьютер в виде ZIP-архива.

Для этого нажимаем на Code и затем Download ZIP:

Стоит сказать, что раньше была кнопка Clone or download.

Нажав Download ZIP вы скачаете последнюю версию репозитория со всеми файлами, даже теми, которые вам могут не пригодиться.

Кроме того, вы можете скачать отдельные релизы (версии) библиотеки через вкладку Releases:

На вкладке Releases вы найдете исходный код (Source Code) для скачивания:

В случае, если вам нужно скачать только один файл, то мы находим этот файл в репозитории, нажимаем на него и видим в верхнем меню блока с кодом файла кнопку Raw, жмем на неё:

Какие библиотеки уже установлены?

Интегрированная среда разработки Arduino IDE уже идет с некоторым набором встроенных библиотек.

Есть два способа посмотреть установленные библиотеки.

Способ 1

Чтобы посмотреть какой набор уже установлен нужно перейти во вкладку:

Файл -> Примеры (File -> Example)

Далее прокрутите вниз и вы увидите установленный набор библиотек (на рисунке ниже выделен красным):

Способ 2

Второй способ через который также можно увидеть список библиотек - воспользоваться меню "Скетч" и подменю "Подключить библиотеку".

Заходим в "Скетч" и выбираем "Подключить библиотеку":

Скетч -> Подключить библиотеку

Подключение библиотеки

Подключить любую библиотеку можно одной командой:

#include <файл.h>

<файл.h> – это и есть имя той библиотеки, которую вы хотите подключить.

Например, в статье Wi-Fi WebServer на WeMos D1 R2 мы подключаем библиотеку ESP8266WiFi.h следующим образом:

#include <ESP8266WiFi.h>

Дополнительные примеры подключения библиотек:

#include <Wire.h> // подключение библиотеки Wire для работы с шиной I2C
#include <LiquidCrystal_I2C.h> // подключение библиотеки LiquidCrystal_I2C для работы с LCD дисплеем по шине I2C, которая использует методы и функции библиотеки Wire

Кроме того, есть вариант размещения библиотеки в одной папке проекта со скетчем, т.е. файл библиотеки располагается рядом с файлом .ino.

Тогда для подключения библиотеки мы используем кавычки:

#include "arduinoplus.h"

В таком варианте подключения компилятор сперва проверит наличие библиотеки в паке со скетчем. Такой вид подключения нужен только в том случае, если в код библиотеки вносятся изменения, необходимые только для этого проекта.

Но важно понимать - такой способ не подходит для библиотек со множеством файлов.

Файлы библиотек (из чего состоит)

Итак, перед тем как начать пользоваться методами и функциями библиотеки, её нужно:

  • скачать (загрузить на Ваш компьютер),
  • установить (разместить в нужной папке),
  • подключить (вставить текст #include <файл.h> в скетч).

Каждая библиотека должна содержать 2 файла с расширениями .h и .cpp.

Файлы первого типа (.h) содержат:

  • описание класса,
  • константы,
  • переменные.

Второй тип (.cpp) содержит коды методов.

Дополнительно нужно понимать, что файлы .h и .cpp могут не лежать в корне скачанного архива.

Примечание. С основными файлами также могут идти "keywords.txt" и папка с примерами ("examples").

library.properties (файл) - файл с информацией о библиотеке для менеджеров библиотек и различных агрегаторв. Данный файл содержит:

  • название,
  • версия,
  • автор,
  • категория
  • и т.д.

src (папка) - в ней находятся основные файлы библиотеки - .h.cpp.c.

examples (папка) – здесь находятся примеры использования библиотеки.

Библиотеки с примерами

Многие библиотеки могут идти с примерами работы. Такие примеры демонстрируют работу библиотеки после установки библиотеки в Ардуино и показывают её функциональные возможности.

В Arduino IDE переходим в меню:

Файл -> Примеры

В этом меню вы сможете увидеть какие библиотеки идут с примерами, если наведете курсор на имя библиотеки:

Можно также попробовать запустить файлы скетчей из папки библиотеки:

путь -> libraries -> название библиотеки -> examples -> название примера

Поиск библиотек

Искать библиотеки можно вручную или через среду разработки Ардуино IDE (Integrated development environment).

Переходим в меню среды:

Скетч -> Подключить библиотеку -> Управлять библиотеками

Выглядите это так:

Мы откроем "Менеджер библиотек", о котором мы говорили выше.

Здесь мы увидим поле поиска и два выпадающих меню с названиями Тип и Тема. Введя в поисковое поле нужное название библиотеки нам Менеджер покажет подходящие варианты библиотек.

Выбираем библиотеку и видим появления кнопок Версия и Установка:

Далее жмем Установка и потом уже подключаем библиотеку в скетч нашего проекта:

#include <файл.h>

Возможные ошибки и конфликты

Иногда при установке библиотек или в процессе их использования могут возникать некоторые ошибки. Ниже разберем основные.

Очень часто помогает установка Arduino IDE с чистого листа и удаление всех файлов предыдущей версии.

‘xxxx’ does not name a type

  • Ошибка появляется тогда, когда библиотека еще не установлена.
  • Также ошибка возникает если папка или библиотека имеет неправильное название.
  • Может быть указан неправильный адрес расположения папки или не перезапущена среда разработки Arduino IDE!

Неправильное расположение папки

  • Проверьте, находятся ли все библиотеки по нужному адресу. Адреса папок для разных операционных систем мы приводили выше.

Неправильное наименование библиотеки

  • Ошибка появляется тогда, когда имя после тега #include не соответствует названию библиотеки.

Неполная библиотека

  • Не хватает всех нужных файлов и папок.

Зависимости библиотеки

  • Необходимо подключить дополнительные зависимые библиотеки без которых правильная/корректная работа невозможна.

Опубликовал 28 мая 2017 в 16:58
Статьи,

3 комментария

  1. shura
    20 августа 2020 в 16:17

    https://www.arduinolibraries.info/libraries — здесь всё множество библиотек для Arduino

    Ответить
    1. Сергей Ермилов
      20 августа 2020 в 19:21

      Они парсят все библиотеки, которые зарегистрированы в Arduino Library Manager. Впрочем, как и все подобные сайты.

      Ответить
    2. Владимир Смирнов
      3 декабря 2020 в 22:56

      Это указано в статье.

      Ответить

Добавить комментарий

Ваш E-mail не будет никому виден. Обязательные поля отмечены *