Яндекс.Метрика

+7 (900) 082-25-06 ДЮТТ
+7 (904) 808-60-10 Кванториум Челябинск
+7 (3519) 33-07-37 Кванториум Магнитогорск
+7 (351) 369-08-13 Кванториум Златоуст
+7 (35163) 2-45-85 Кванториум Троицк
+7 (351) 394-33-03 Кванториум Копейск
+7 (35160) 2-25-76 Кванториум Пласт
+7 (35134) 4-22-81 IT-Куб Южноуральск
+7 951 806 3486 IT-Куб Сатка
+7 (3519) 33-08-08 IT-Куб Магнитогорск
+7 951-787-67-82 IT-Куб Кыштым
+7 (35146) 92 716 IT-Куб Снежинск
+7 9000 670 186 IT-Куб Миасс
+7 (351) 218-11-16 IT-Куб Челябинск
+7 (919) 111-20-76 IT-Куб Трехгорный
80-Я ГОДОВЩИНА ПОБЕДЫ В ВЕЛИКОЙ ОТЕЧЕСТВЕННОЙ ВОЙНЕ 1941–1945 ГОДОВ

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

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. Файл содержит класс, в котором объявляются функции и используемые переменные. Они могут быть публичными, т.е. доступные всем, использующим библиотеку, или приватными, т.е. доступными только внутри класса.

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

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

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

Пример:

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

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

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

http://arduino.ru/Hacking/LibraryTutorial

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

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

Написать сообщение

Оцените от 1 до 5

Вам понравилось? Расскажите о своем опыте своим друзьям в социальных сетях. Пусть им понравится тоже!

Подпишитесь на нашу рассылку

Подписаться

Остались вопросы по качеству обучения?

Вы можете задать их любым удобным для вас способом:

  • Заполнив форму
  • Написав в телеграм @Techkids74
  • Приемная +7 (351) 225-07-83 внутренний номер:102
  • Отправить на e-mail pismadir@robo74.ru

Приемная директора

Обратиться

Приемная +7 (351) 225-07-83 внутренний номер:102

Отправить на e-mail pismadir@robo74.ru

Уважаемые родители, законные представители, а также воспитанники Регионального центра технического творчества!

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

Поэтому просим вас пройти опросы и оценить удовлетворенность качеством оказания образовательных услуг. Отнеситесь с пониманием к анкетированию и внимательно и честно ответьте на вопросы.

Ваше мнение очень важно для нас и будет учтено в дальнейшей работе.

Опрос для родителей и законных представителей

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

Решаем вместе
Есть предложения по организации учебного процесса или знаете, как сделать школу лучше?

Наш сайт использует сервис "Яндекс.Метрика" и файлы cookies на вашем устройстве в соответствии с политикой обработки персональных данных и условиями использования сервиса "Яндекс.Метрика"

* Для запрета сбора данных вы можете использовать расширение для броузера "Блокировщик яндекс метрики"