Найти тему

Arduino IDE: учимся создавать библиотеки

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

Определение и установка

Библиотека — это программный код, хранящийся в файлах, который после подключения можно использовать в скетч. Иными словами, объемный код в вашем скетче можно сократить, сделав его более удобным и понятным. Хранятся библиотеки в папке libraries (например, C:\Program Files (x86)\Arduino\libraries).

Один из способов установить — поместить папку библиотеки в папку libraries.

Структура

Давайте рассмотрим основные составляющие библиотеки на примере Stepper для подключения шаговых двигателей. Состоит она из самой папки Stepper внутри которой находятся:

  • Папка с примерами examples.
  • Текстовый файл keywords для подсветки синтаксиса.
  • И папка src, внутри которой находятся заголовочный файл Stepper.cpp и файл реализации Stepper.h.

Файл с расширением .h (в нашем примере Stepper.h) подключается и подтягивает к себе остальные. Все файлы и папки, кроме заголовочного .h, не обязательны.

Подключение

#include <файл.h> — ищет файл в папке с библиотеками.

#include “файл.h” — ищет файл в папке со скетчем, если там ищет в папке с библиотеками.

Давайте напишем библиотеку, которая плавно зажигает/тушит светодиод с возможностью устанавливать скорость процесса. Для этого создадим папку “Flare” с заголовочным файлом с файлом реализации.

Заголовочный файл

Создадим в блокноте и назовем наш заголовочный файл Flare.h. Файл содержит класс, в котором объявляются функции и используемые переменные. Они могут быть публичными, т.е. доступные всем, использующим библиотеку, или приватными, т.е. доступными только внутри класса.

Содержимое заголовочного файла заключают в следующую конструкцию:

-2

Файл реализации

Создадим в блокноте и назовем наш заголовочный файл Flare.cpp

-3

Пример:

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

-4

Светодиод плавно загорается и быстро тухнет.

Ссылка на дополнительные источники

http://arduino.ru/Hacking/LibraryTutorial

https://alexgyver.ru/lessons/library-writing/

Педагог: Валеев Алексей Рубенович