Управление меню на энкодере

Ответить
Ingwar
Полковник
Сообщения: 1928
Зарегистрирован: 28 окт 2015, 22:47
Откуда: Ленобласть
Имя: Игорь
Поблагодарили: 2 раза

Управление меню на энкодере

Сообщение Ingwar »

Рабочий кусок проекта для управления меню с помощью энкодера. (не претендую на оптимальное решение)

Подключение энкодера по схеме
Кнопка энкодера замыкается на (-).

Алгоритм:
Вращение - навигация по меню и/или подменю, изменение параметров
Кратковременное нажатие - вход в подменю или сохранение изменения параметра
Нажатие 1-2 секунды - переход в режим изменения параметра
Нажатие 3 и более секунд - возврат из подменю с сохранением измененных параметров

При вращении на 1 щелчек, энкодер выдает 4 импульса.
Но использование дисплеев на I2C обеспечивает "проглатывание" пачки и навигация по пунктам соразмерна (примерно) щелчкам.
Если же проект "легкий", можно добавить таймеры на отключение (100-500мс) в цепях после блоков сравнения ("вперед" "назад").
Пример_меню_энкод.flp
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
Аватара пользователя
gerdog
Рядовой
Сообщения: 42
Зарегистрирован: 04 янв 2018, 07:46

Управление меню на энкодере

Сообщение gerdog »

Отлично, ещё бы при помощи энкодера включать/отключать меню, скажем при 5 секундном нажатии на его кнопку
Ingwar
Полковник
Сообщения: 1928
Зарегистрирован: 28 окт 2015, 22:47
Откуда: Ленобласть
Имя: Игорь
Поблагодарили: 2 раза

Управление меню на энкодере

Сообщение Ingwar »

Можно например привязаться к изменению значения на энкодере.
При вращении включается меню и выводятся его данные. При отсутствии вращения через заданное в таймере время выводятся другие данные (например показания с датчиков).
[spoiler]
меню.png
[/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
Аватара пользователя
ViktorPetrov
Капитан
Сообщения: 807
Зарегистрирован: 09 апр 2018, 23:56
Имя: Виктор
Благодарил (а): 4 раза
Поблагодарили: 1 раз

Управление меню на энкодере

Сообщение ViktorPetrov »

Блок пригодится Интеллектуальная кнопка. Можно ,еще схему оптимизировать [spoiler]
энкодер оптимизация.flp
[/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Утвш
Сержант
Сообщения: 148
Зарегистрирован: 02 дек 2016, 07:31
Благодарил (а): 2 раза

Управление меню на энкодере

Сообщение Утвш »

Хочу вставить и свои 5 копеек. К сожалению не увидел вовремя сборку "энкодер оптимизация" от уважаемого ViktorPetrov, поэтому сочинил свою.
Управление_меню_от_энкодера_(FBD).ubi
При этом использовал блоки
Encoder (CODE).ubi
Интеллектуальная_кнопка_V1_(CODE).ubi
и
Направление_энкодера_(FBD).ubi
. Соединение блоков
Соединение блоков.jpg
Сборка позволяет полное управление сложным меню с переключением пунктов меню по кольцу. Сборка создана в версии программы 3.03. К сожалению в версии 4.2 сборка не компилируется из-за блока "Encoder" изменить который я, к сожалению, не могу.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
ViktorPetrov
Капитан
Сообщения: 807
Зарегистрирован: 09 апр 2018, 23:56
Имя: Виктор
Благодарил (а): 4 раза
Поблагодарили: 1 раз

Управление меню на энкодере

Сообщение ViktorPetrov »

Оптимизировал свой проект ,блок энкодер и меню теперь по такой схеме выключаю [spoiler]
меню.png
[/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Ответить

Вернуться в «Проекты различных устройств на Arduino»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя