Возможности 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 миллисекунд.
Утилиты: