Всем привет, пытаюсь реализовать алгоритм: 1. Нажал кнопку MODE (1 клик) - показать часы 2. Удержал кнопку MODE - зайти в меню "выбора режимов" и показать режим "H1--" 2.1 В режиме "H1--", нажать (1 клик) - показать "H2--", нажать (1 клик) - показать "H3--", нажать (1 клик) - показать "H4--" 2.2 В режиме "H1--", удержать кнопку SET - показывается режим "H1--" , с мигающими "--" 2.2.1 Если нажать UP или DOWN, то меняем значение "--" на "00", "01",...,"59". Еще раз удержание SET - фиксируем значение - выход в раздел 2.1 2.3 В режиме "H2--", удержать кнопку SET - показывается режим "H2--" , с мигающими "--" 2.3.1 Если нажать UP или DOWN, то меняем значение "--" на "00", "01",...,"59". Еще раз удержание SET - фиксируем значение - выход в раздел 2.1 С одноуровневым меню все понятно: Код (Text): switch (numMenu) { case 0: display_digits_off(); break; case 1: mode_display_time(); break; // показать время case 2: mode_display_h1(); break; // меню таймер 1 } if (butt1.isClick()) {numMenu = 1;} // меню 1 показать время на 500 мс. if (butt1.isHold()) {numMenu = 2;} // выбор меню таймер 1 Как корректно реализовать заход в подменю 2.1??? Через флаги и IF? Через switch/case? Просто полно устройств с простым управлением, но не нашел в интернете как это все реализовано ((( Полный код мне не нужен, сам все делаю, просто так сказать указать направление. СПАСИБО
Как Вам удобнее. Можно через любое из перечисленного, а также через рекурсию и ещё через 100500 вариантов.
странно. Я вот прямо здесь показывал одну из возможных реализаций https://forum.amperka.ru/threads/Одна-кнопка-один-диммер.21207/ https://forum.amperka.ru/threads/Осрв-quarkts-attiny817-будем-поморгать.21192/