Класи меню для РК-дисплеїв; Стефан; s WebBlog
Автор: sfambach

Останнє оновлення 23 травня 2020 р. Sfambach
Оскільки створення меню на дисплеї є постійним завданням, я згрупував деякі функціональні можливості у класи.
апаратне забезпечення
програмне забезпечення
- IDE Arduino
- LiquidChristal Lib (можна встановити через менеджер бібліотеки, див. Також тут)
- Моє меню lib (див. Нижче)
- Покрокові прості заголовки з класами, які можна використовувати в основній програмі (зроблено) .
- Покроково упакуйте класи як Arduino Lib, які можна імпортувати в графічний інтерфейс. (зроблено)
- Створіть додаткові варіанти пунктів меню. (Можливо, прийде)
Завантажити
Lib можна завантажити з GitHub (ось посилання).
Тут ви можете завантажити його безпосередньо у форматі zip-файлу.
IDE Arduino
Ви можете встановити zip в графічному інтерфейсі Aruino.
Інтеграція бібліотек загалом описана за наступним посиланням, я не буду тут детальніше розглядати.
https://fambach.net/arduino-ide#Bibliotheken
Програма випробувань
Lib постачається з тестовою програмою, яку ви можете вибрати із прикладів.
Шлях такий: Lib Menu Lib -> LCDSchieldTest
Ще не зовсім зрозуміло? Тут ви можете побачити, як це працює.
Складіть програму і відтворіть її на Arduino.
Якщо ви використовуєте іншу плату або не плату РК-клавіатури, вам доведеться відрегулювати налаштування кнопок та РК-дисплея відповідно до вашої конфігурації.
Пояснення
Меню вбудовано у функцію buildMenu (). Тут створюється вузол головного меню, до якого потім додається решта.
На даний момент доступні такі вузли:
ItemMenu - Menu -> Можна отримати всі інші пункти меню в дитинстві. Також може використовуватися як елемент підменю.
ItemBool - Switch -> Цей пункт меню можна вмикати та вимикати.
ItemInt - ціле значення -> Тут цілі значення можна збільшити або зменшити. Min і Max вказують межі.
У цьому прикладі зворотні дзвінки не використовуються, їх можна використовувати для виклику функції у вашій програмі, коли значення елемента меню змінюється.
Навігація в меню
Угорі знаходиться головне меню.
Перший пункт меню знаходиться внизу. За допомогою правої/лівої кнопок ви можете вибрати відповідний пункт меню. Знизу ви переходите до пункту меню, а вгору - знову.
Меню можна вкладати як завгодно, як ви можете бачити в підменю 1 та 2.
Для мене на сьогоднішній день бібліотеки достатньо, але у мене ще є кілька ідей, можливо, я втілю їх ще раз, коли з’явиться можливість:
- Пункт меню з плаваючою комою
- Запис у меню панелі, для невеликих значень int відображається смужка, яка символізує налаштування.
- Пункт меню списку вибору (. Виберіть A, B або C ...)
- додатковий приклад для зворотних викликів
Схожі повідомлення
В даний час зняття ключів з прикладу працює лише обмежено. Мені ще потрібно знайти помилку та виправити її.