Створення власної прошивки
Відкрийте Visual Studio Code, перейдіть на вкладку
PlatformIO
та виберітьCreate New Project
.У вікні, що відкриється, натисніть на кнопку
New Project
.Придумайте назву свого проєкту - наприклад,
first_project
.У переліку boards оберіть
Lilka v2 (Anderson & friends)
.У переліку frameworks оберіть
Arduino
.Після цього натисніть на кнопку
Finish
.Примітка
Якщо ви не бачите в переліку
Lilka v2 (Anderson & friends)
або у вас виникає помилка при створенні проєкту, вам потрібно оновити пакети PlatformIO.Для цього виконайте команду
pio pkg update -g -p espressif32
в терміналі Visual Studio Code.Щоб відкрити термінал, в панелі
Quick Access
виберітьMiscellaneous
і тоді натисніть наPlatformIO Core CLI
. Консоль відкриється внизу вікна Visual Studio Code.Після цього вам слід перезапустити Visual Studio Code.
Ваш новий проєкт відкриється у новому вікні Visual Studio Code, і ви побачите файл
platformio.ini
.Це - конфігураційний файл проєкту, в якому вказані всі налаштування проєкту: платформа, фреймворк, бібліотеки тощо.
Ми можете редагувати його вручну, а можете використовувати графічний інтерфейс PlatformIO.
Давайте додамо до проєкту бібліотеку lilka. Для цього відкрийте вкладку
PlatformIO
та в панеліQuick Access
виберітьLibraries
.Після цього введіть у поле пошуку
lilka
:Тепер натисніть на кнопку
Add to Project
.Після завершення завантаження бібліотеки ви побачите, що вона з’явилась у полі
lib_deps
файлуplatformio.ini
.Це поле вказує на те, які бібліотеки використовуються у проєкті. PlatformIO автоматично завантажує та встановлює всі бібліотеки, вказані у цьому полі, а також їх залежності.
Встановлення бібліотеки
lilka
автоматично встановлює різні бібліотеки для роботи з Лілкою, наприкладArduino-GFX
, яка використовується для роботи з дисплеєм Лілки.Напишемо простий код нашої прошивки. Відкрийте файл
src/main.cpp
та напишіть наступний код:#include <lilka.h> void setup() { // Ця функція виконається один раз при увімкненні // Ініціалізуємо дисплей, карту пам'яті, звук, кнопки і все на світі lilka::begin(); // Заповнюємо екран білим кольором lilka::display.fillScreen(lilka::colors::White); } void loop() { // Ця функція буде виконуватись по колу // Читаємо стан кнопок lilka::State state = lilka::controller.getState(); if (state.a.justPressed) { // Кнопка A щойно була натиснена lilka::display.fillScreen(lilka::colors::Red); lilka::buzzer.play(lilka::NOTE_C4); } else if (state.a.justReleased) { // Кнопка A щойно буда відпущена lilka::display.fillScreen(lilka::colors::Green); lilka::buzzer.stop(); } }
Це - проста програма, яка при натисканні на кнопку A змінює колір екрану на червоний та відтворює звук, а при відпусканні - заповнює екран зеленим кольором та зупиняє звук.
Тепер ми можемо скомпілювати нашу прошивку та завантажити її в Лілку.
Для цього під’єднайте Лілку до комп’ютера за допомогою USB-кабеля, відкрийте вкладку
PlatformIO
та натисніть на діюUpload
.Після завершення компіляції та завантаження прошивки ви побачите, як Лілка виконує вашу програму. Спробуйте натиснути та відпустити кнопку A та переконайтеся, що все працює!