Моргание кнопки дисплея Nextion

Использование дисплеев и обсуждение пользовательских блоков к ним
Ответить
igee
Рядовой
Сообщения: 57
Зарегистрирован: 08.06.2016{, 09:15}
Репутация: 0
Откуда: Санкт-Петербург

Моргание кнопки дисплея Nextion

#1

Сообщение igee » 08.06.2016{, 20:12}

Доброго времени суток.
Прошу помочь в поиске решения проблемы, заключающейся в следующем:
В редакторе Nextion рисуем на дисплее две(три) кнопки. Для одной кнопки добавляем переменные состояний "нажата" и "отжата" (все как по мануалу к блоку отслеживания нажатия для Nextion в FLProg). Вторую(третью) оставляем как есть (она нужна для наглядности проблемы). Теперь я хочу, чтобы при нажатии на кнопку 1 загорался светодиод, а цвет кнопки, пока светодиод горит, оставался таким же как в нажатом состоянии кнопки. Т.е. параметр кнопки bco был таким же как bco2 (например кнопка остается зеленой, пока светодиод горит, а когда отжимаешь кнопку - светодиод гаснет, а кнопка становится серой).
Плата такая:

Логика следующая:
1. Кнопка "отжата" : основной цвет - серый, цвет нажатия - тёмно-серый.
2. Кнопка "нажата": основной цвет - зеленый, цвет нажатия - зеленый.

Нажали на кнопку ->загорелся диод + свич изменил значение переменной (col)  -> блок Number Change отправил сигнал на отправку измененных параметров кнопки в дисплей.

Теперь собственно проблема:
При такой схеме логика работает, но кнопка жутко промаргивает (перерисовывается по 2 раза на нажатие и 2 раза на отжатие кнопки). Ответ вроде бы очевиден, мол мы отправляем команду на изменение атрибута 2 раза за изменение триггера TT. Но почему перерисовка идет четырежды? И откуда вообще берется моргание, когда мы жмем на кнопку 2?  (Ту самую, которую мы добавили для наглядности, у которой вообще нажатие не отслеживается). Если убрать блок изменения атрибута и просто включать-выключать диод - никаких морганий нет.  В итоге получается, что при наличии блока отслеживания нажатий (для кнопки) с привязанным к нему блоком изменения атрибута кнопки будет происходить перерисовка этой кнопки при нажатии на любую кнопку на экране.

Как это лечить?
Для скачивания вложений Вы должны быть зарегистрированы.
Последний раз редактировалось igee 08.06.2016{, 22:44}, всего редактировалось 1 раз.

Ответить

Вернуться в «Дисплеи и индикаторы»

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

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