Возможности Arduino, как и большинство платформ программирования, можно расширить с помощью библиотек. Библиотеки предоставляют дополнительные функции, которые можно без труда использовать в своих программах. Например, при обработке данных или при использовании какого-то определенного оборудования. Чтобы использовать библиотеку в программе, выберите ее из списка в меню «Скетч» > «Подключить библиотеку».
Ряд библиотек включены в сборку IDE, но при необходимости можно загрузить или создать свои собственные. Подробнее об установке библиотек смотрите в этих инструкциях . Прочтите также руководство по написанию собственных библиотек.

Стандартные библиотеки:

  • EEPROM — чтение и запись постоянной памяти;
  • Ethernet / Ethernet 2 — для подключения к Интернету при использовании Arduino Ethernet Shield, Arduino Ethernet Shield 2 и Arduino Leonardo ETH;
  • Firmata — для связи с приложениями на компьютере с использованием стандартного последовательного протокола;
  • GSM — для подключения к сети GSM / GPRS при использовании платы GSM;
  • LiquidCrystal — для управления жидкокристаллическими дисплеями (LCD);
  • SD — для чтения и записи SD карт;
  • Servo — для управления сервомоторами;
  • SPI — для связи с устройствами с использованием шины последовательного периферийного интерфейса (SPI);
  • SoftwareSerial — для последовательной связи через любые цифровые контакты. Версия 1.0 и более поздняя версия Arduino включают библиотеку NewSoftSerial;
  • Stepper — для управления шаговыми двигателями;
  • TFT — для рисования текста, изображений и фигур на экране Arduino TFT;
  • WiFi — для связи с Интернетом при использовании платы Arduino WiFi shield;
  • Wire — для использования двухпроводного интерфейса (TWI / I2C) при отправке и приеме данных через сеть устройств или датчиков.

Библиотеки Matrix и Sprite больше не входят в основной установочный пакет IDE.


Библиотеки только для определенных плат:

101

  • CurieBLE — для взаимодействия со смартфонами и планшетами через Bluetooth (BLE);
  • CurieIMU — для управления встроенным акселерометром и гироскопом;
  • CurieTimerOne — для использования функций таймера;
  • CurieTime — для использования и управления внутренними часами реального времени (RTC).

Due

  • Audio — для проигрывания аудио файлов с SD карты.

Due, Zero, MKR1000

  • USBHost — для подключения периферийных устройств с USB (мышь, клавиатура);
  • Scheduler — для управления несколькими неблокирующими задачами.

Zero, MKRZERO, MKR1000

  • AudioFrequencyMeter — для моделирования аудио сигнала и измерения его частоты;
  • AudioZero — для проигрывания аудио файлов с SD карты;
  • RTC — часы реального времени для планирования событий;
  • ArduinoSound — простой способ воспроизведения и анализа аудиоданных;
  • I2S — для использования протокола I2S на SAMD21

WiFi 101, MKR1000

  • WiFi101 — библиотека, которая используется только с платой Wifi 101;
  • WiFi101OTA — для беспроводного обновления платы MKR1000

MKR WiFi 1010, MKR VIDOR 4000, Arduino UNO WiFi Rev.2

  • WiFi NINA — библиотека для работы с модулем WiFi Nina при использовании вышеперечисленных плат.

MKR Motor Carrier

  • MKR Motor Carrier — библиотека, которая использоваться с MKR Motor Carrier

MKR FOX 1200

  • SigFox — библиотека, которая использоваться с MKRFOX1200

MKR WAN 1300

  • MKRWAN — библиотека, которая использоваться с MKR WAN 1300

MKR GSM 1400

  • MKRGSM — библиотека, которая использоваться с MKR GSM 1400

Esplora

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

Arduino Robot

  • Robot — эта библиотека обеспечивает легкий доступ к функциям Arduino Robot.

Yún

  • Bridge Library — обеспечивает связь между процессором Linux и микроконтроллером на Yún;
  • Ciao Library — для упрощения взаимодействия между микроконтроллером и операционной системой Linino OS. Позволяет использовать различные соединения с большим числом распространенных протоколов обмена данными.

USB (Leonardo, Micro, Due, Zero и Esplora)

  • Keyboard — для отправки информации о нажатии клавиш на подключенный компьютер;
  • Mouse — для управления движением курсора на подключенном компьютере.

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

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

Связь (сети и протоколы):

  • Messenger — для обработки текстовых сообщений с компьютера;
  • NewSoftSerial — улучшенная версия библиотеки SoftwareSerial;
  • OneWire — управление устройствами от Dallas Semiconductor по протоколу One Wire;
  • PS2Keyboard — чтение символов с клавиатуры PS2;
  • Simple Message System — отправка сообщений между Arduino и компьютером;
  • SSerial2Mobile — отправка текстовых сообщений или электронных писем с помощью мобильного телефона (через AT-команды с помощью программного обеспечения);
  • Webduino — расширяемая библиотека для веб-сервера при использовании платы Arduino Ethernet;
  • X10 — отправка сигналов X10 по линиям электропитания переменного тока;
  • XBee — для связи с XBees в режиме API;
  • SerialControl — дистанционное управление другим платами Arduino через последовательное соединение.

Датчики:

  • Capacitive Sensing — работа с емкостными датчиками;
  • Debounce — для чтения цифровых входов с шумом (например, с кнопок).

Дисплеи и светодиодные индикаторы:

  • GFX — базовый класс со стандартными графическими подпрограммами;
  • GLCD — графические подпрограммы для ЖК-дисплея на основе KS0108 или эквивалентных микросхем;
  • Improved LCD library — исправляет ошибки инициализации ЖК-дисплея в официальной библиотеке LCD;
  • LedControl — для управления светодиодными матрицами или семисегментными дисплеями на основе MAX7221 или MAX7219;
  • LedControl — альтернатива библиотеке Matrix при управлении светодиодами с помощью микросхем Maxim;
  • LedDisplay — управление светодиодным дисплеем HCMS-29xx;
  • Matrix — основная библиотека управления матричными светодиодами;
  • PCD8544 — для работы ЖК-контроллера на дисплеях Nokia 55100;
  • Sprite — основная библиотека спрайтов с изображениями для использования в анимациях со светодиодной матрицей;
  • ST7735 — для работы ЖК-контроллера на 1.8 «, 128×160 TFT-экране.

Аудио и другие формы сигналов:

  • FFT — частотный анализ аудио или других аналоговых сигналов;
  • Tone — для генерации звуковых и других частотных сигналов в фоновом режиме на любом микроконтроллере.

Двигатели и ШИМ:

  • TLC5940 — 16-канальный 12-битовый ШИМ контроллер.

Время:

  • DateTime — библиотека для отслеживания текущей даты и времени в программном обеспечении;
  • Metro — помогать вам выполнять регулярные действия по времени;
  • MsTimer2 — использует прерывание таймера 2 для запуска действия каждые N миллисекунд.

Утилиты:

  • PString — простая библиотека для печати в буфер обмена;
  • Streaming — способ упростить вывод на печать.