Рис. 5.5. Окно Arduino IDE.
Программа, написанная в среде Arduino, носит название скетч. Скетч пишется в текстовом редакторе, который имеет цветовую подсветку создаваемого программного кода. Во время сохранения и экспорта проекта в области сообщений появляются пояснения и информация об ошибках. Окно вывода текста показывает сообщения Arduino, включающие полные отчеты об ошибках и другую информацию. Кнопки панели инструментов позволяют проверить и записать программу, создать, открыть и сохранить скетч, открыть мониторинг последовательной шины.
Разрабатываемым скетчам дополнительная функциональность может быть добавлена с помощью библиотек, представляющих собой специальным образом оформленный программный код, реализующий некоторый функционал, который можно подключить к создаваемому проекту. Специализированных библиотек существует множество. Обычно библиотеки пишутся так, чтобы упростить решение той или иной задачи и скрыть от разработчика детали программно-аппаратной реализации. Среда Arduino IDE поставляется с набором стандартных библиотек: Serial, EEPROM, SPI, Wire и др. Они находятся в подкаталоге libraries каталога установки Arduino. Необходимые библиотеки могут быть также загружены с различных ресурсов. Папка библиотеки копируется в каталог стандартных библиотек (подкаталог libraries каталога установки Arduino). Внутри каталога с именем библиотеки находятся файлы *.cpp, *.h. Многие библиотеки снабжаются примерами, расположенными в папке examples. Если библиотека установлена правильно, то она появляется в меню Скет | Подключить библиотеку. Выбор библиотеки в меню приведет к добавлению в исходный код строчки:
#include <имя библиотеки.h>
Эта директива подключает заголовочный файл с описанием объектов, функций и констант библиотеки, которые теперь могут быть использованы в проекте. Среда Arduino будет компилировать создаваемый проект вместе с указанной библиотекой.
Перед загрузкой скетча требуется задать необходимые параметры в меню Инструменты | Плата и Инструменты | Порт.
Современные платформы Arduino перезагружаются автоматически перед загрузкой. На большинстве плат во время процесса загрузки будут мигать светодиоды RX и TX.
При загрузке скетча используется загрузчик (bootloader) Arduino — небольшая программа, загружаемая в микроконтроллер на плате. Она позволяет загружать программный код без использования дополнительных аппаратных средств. Работа загрузчика распознается по миганию светодиода на цифровом выводе D13.
Монитор последовательного порта (Serial Monitor) отображает данные, посылаемые в платформу Arduino (плату USB или плату последовательной шины). Для отправки данных необходимо ввести в соответствующее поле текст и нажать клавишу <Enter>. Затем следует из выпадающего списка выбрать скорость передачи, соответствующую значению Serial.begin в скетче. На ОС Mac или Linux при подключении мониторинга последовательной шины платформа Arduino будет перезагружена (скетч начнется сначала).
Текст программы (скетч) пишется в окне редактора программного кода. В программе обязательно должны быть две записи, void setup() и void loop()– это так называемые функции, первая выполняется единоразово, при подаче питания на Arduino, а вторая выполняется циклически до тех пор, пока присутствует питание микроконтроллера. В функцию setup() записываются различные настройки микроконтроллера для дальнейшей работы –например, это может быть конфигурация портов ввода/вывода, либо инициализация подключенного вами дисплея или датчика. Главное, что нужно запомнить, с этой функции начинается работа микроконтроллера и все, что в ней написано, выполняется только один раз. Функция loop() выполняется сразу же после функции setup(), и после этого микроконтроллер постоянно работает в ней.
Теперь загрузим на плату Arduino какой-нибудь скетч. Мы можем найти примеры скетчей в пункте меню Файл Примеры, например Файл Примеры Basics Blink. Для загрузки скетча на плату Arduino нажимаем на значок загрузки в панели инструментов, и в случае успешной загрузки скетча на плату в окне сообщений будут выводиться результаты загрузки (рис. 5.6).