Страница 1 из 2

Кнопка в Nextion

Добавлено: 24 фев 2018, 16:13
katoshnik
Здравствуйте. Столкнулся с такой ситуацией, создаю в nextion кнопку, привязываю к ней переменные на отпускание и нажатие, в flprog подключаю элемент отслеживание нажатий. Все работает, только есть один момент, при быстром двойном нажатии переменная в проекте становится постоянно активной, чтобы сделать ее не активной нужно также быстро дважды нажать. Таким образом работает как кнопка с фиксацией. Сначала подумал, что что то не так с проектом, написал простейший с элементом "отслеживание нажатий" который связал с одним из выходов ардуино и подключил к Некстион, ситуация та же. Не подскажете, как с этим бороться?

Кнопка в Nextion

Добавлено: 24 фев 2018, 17:04
grin-mpx
Не стоит быстро нажимать кнопки. При таком обращении возможна потеря пакета или неверная его запись в ардуино. Попробуйте в проекте сразу после записи переменной ( состояние кнопки) сделать паузу опроса, допустим 1 сек. По идее запишется только 1 состояние, а через 1 сек если было изменение, то переменная перепишется новым запросом.

Кнопка в Nextion

Добавлено: 24 фев 2018, 17:13
katoshnik
Такого ответа не ожидал, конечно:)

Кнопка в Nextion

Добавлено: 24 фев 2018, 17:17
grin-mpx
katoshnik писал(а): 24 фев 2018, 17:13Такого ответа не ожидал, конечно:)
Я вам указал причину такого поведения ардуино. Что не ясно в ответе?

Кнопка в Nextion

Добавлено: 24 фев 2018, 17:24
katoshnik
С ответом все понятно, я надеялся, что это я что-то не так делаю. Плохо, таким образом эту панель с ардуино нельзя использовать даже в мало мальски серьезных проектах.

Кнопка в Nextion

Добавлено: 24 фев 2018, 17:33
grin-mpx
katoshnik писал(а): 24 фев 2018, 17:24Плохо, таким образом эту панель с ардуино нельзя использовать даже в мало мальски серьезных проектах.
Это Вы зря так. :no: Вот мой проект на Nextion 3.5 , серьезней некуда
[spoiler]https://www.youtube.com/watch?v=57CmWM54-bY[/spoiler]
Если есть проблемы, то ищете пути обхода, т.е. ту-же реализацию но по другому методу. Дисплей просто прекрасный, нужно только с ним подружиться.

Кнопка в Nextion

Добавлено: 24 фев 2018, 17:43
katoshnik
Я понимаю, наверное, как и всех, привлекает копеечная стоимость реализации на этих устройствах. Занимаюсь этим уже вторую неделю (обходом проблем), дело в том, что мне в проекте нужна возможность быстрого нажатия, и если я буду тормозить опрос, то ее будет не реализовать. Для сведения, не подскажете, как можно притормозить опрос?

Кнопка в Nextion

Добавлено: 24 фев 2018, 17:52
grin-mpx
Опишите зачем нужно быстрое нажатие. Или выложите сам проект. Если проект коммерческий, то выложите хотя-бы фрагмент где опрашиваете
кнопку.

Отправлено спустя 2 минуты 58 секунд:
katoshnik писал(а): 24 фев 2018, 17:43привлекает копеечная стоимость реализации на этих устройствах
Ничего себе копеечная. У нас стоимость 3.5 дисплея некстион в пределах 37$

Кнопка в Nextion

Добавлено: 24 фев 2018, 20:51
katoshnik
grin-mpx писал(а): 24 фев 2018, 17:52Опишите зачем нужно быстрое нажатие. Или выложите сам проект. Если проект коммерческий, то выложите хотя-бы фрагмент где опрашиваете
кнопку.

Отправлено спустя 2 минуты 58 секунд:
katoshnik писал(а): 24 фев 2018, 17:43привлекает копеечная стоимость реализации на этих устройствах
Ничего себе копеечная. У нас стоимость 3.5 дисплея некстион в пределах 37$
Спасибо за помощь, я смогу сам разобраться, просто прежде чем начинать, хотел узнать может я что то не так делал.
Ну что такое 37$ для промышленного оборудования, это подарок судьбы по сравнению со стоимостью панелей от siemens и др.:)

Кнопка в Nextion

Добавлено: 25 фев 2018, 17:05
vovka1973
grin-mpx писал(а): 24 фев 2018, 17:33Если есть проблемы, то ищете пути обхода, т.е. ту-же реализацию но по другому методу. Дисплей просто прекрасный, нужно только с ним подружиться.
а где переменные храните в настройках в ардуино или в дисплее в вашем проекте видно что быстро все откликается .не поделитесь как это решили

Кнопка в Nextion

Добавлено: 16 июл 2018, 23:35
Alias
Спрошу здесь.
Есть в моем проекте станица настроек. На ней же - кнопка старта с фиксацией. Нажал - пошел процесс, снова нажал - остановил. Стоп может послать и сама программа, поэтому использовал блок "Нажатие", который должен в автомате нажимать кнопку останова.
Проблема в том, что она не нажимается, если активен другой экран, несмотря на глобальный атрибут кнопки.
Это баг или я не разобрался и кнопку может за меня нажать сама программа?

Кнопка в Nextion

Добавлено: 16 июл 2018, 23:58
grin-mpx
Мне эти кнопки в свое время мозг вынесли.
Сама страница где кнопка в глобальном статусе?
Посмотрите в этом файле какие параметры я указывал при отправке команды на изменение состояния кнопки.
knopka_bt0.flp

Кнопка в Nextion

Добавлено: 17 июл 2018, 19:48
Alias
Чуда не произошло - сколько бы и как я ни пробовал, не могу я повлиять на состояние кнопки с фиксацией из любого экрана, кроме того, где она находится. Не фатально, но чрезвычайно неприятно. То ли от того, что я не могу чего-то понять, то ли от того, что это баг. Была бы фичей, если бы хоть где-то об этом было написано, но ни слова нигде не нашел...

Кнопка в Nextion

Добавлено: 17 июл 2018, 19:56
grin-mpx
Такого не может быть, скиньте кусок проекта, там где-то собака зарыта :D

Кнопка в Nextion

Добавлено: 18 июл 2018, 10:42
Alias
Спасибо за желание помочь, во вложении часть проекта с кнопками, подробности там же.

Кнопка в Nextion

Добавлено: 18 июл 2018, 10:56
grin-mpx
Буду дома только вечером, гляну. Еще, если есть возможность и проект hmi где эта кнопка. Если проект коммерческий, то можете скинуть только одну страницу, там в nextion ide есть возможность импорта. Можете в личку.
P.S. Или создайте новый проект в Nextion с такой-же кнопкой и переменными если они к ней привязаны. Короче, нужна точная копия проблемной страницы.

Кнопка в Nextion

Добавлено: 18 июл 2018, 12:28
Alias
Не коммерческий, но там куча всего может быть прицепом лишнего и ненужного, попробовал сократить только до объема, необходимого для тестирования.
Стало лучше:
1. Так, синяя кнопка стала практически сразу исчезать, как только активируется окно. Видимо, у меня из-за 26 элементов статусы обновляются на скорости 9600 медленно, а как выставить 115200 я не нашел. Если только писать свой блок, чтобы как-то на ходу менять при загрузке программы.
2. Штатный блок программного нажатия работает только на экране с кнопкой с фиксацией. Если уходить на другой и вернуться, нажатия не происходит. Зато второй вариант с отправкой значения заработал, спасибо за подсказку! Буду копать, почему у меня не получалось, видимо, что-то напутал. Кстати, да, заработала в примере из вложения только тогда, когда удалил и снова прописал.

Кнопка в Nextion

Добавлено: 18 июл 2018, 12:32
vovka1973
Alias писал(а): 18 июл 2018, 12:28Не коммерческий, но там куча всего может быть прицепом лишнего и ненужного, попробовал сократить только до объема, необходимого для тестирования.
Стало лучше:
1. Так, синяя кнопка стала практически сразу исчезать, как только активируется окно. Видимо, у меня из-за 26 элементов статусы обновляются на скорости 9600 медленно, а как выставить 115200 я не нашел. Если только писать свой блок, чтобы как-то на ходу менять при загрузке программы.
2. Штатный блок программного нажатия работает только на экране с кнопкой с фиксацией. если уходить на другой и вернуться, нажатия не происходит. Зато второй вариант с отправкой значения заработал, спасибо за подсказку! Буду копать, почему у меня не получалось, видимо, что-то напутал. Кстати, да, заработала в примере из вложения только тогда, когда удалил и снова прописал.
Скорость меняется командой в самой программе для некстион ,но поверь мне это счастье не прибавило как работало медленно так и работает ,в гугл набери меняем скорость некстион найдёшь в картинках как менять ,но счастье тебе это не даст

Кнопка в Nextion

Добавлено: 18 июл 2018, 13:16
grin-mpx
Alias писал(а): 18 июл 2018, 12:28Видимо, у меня из-за 26 элементов статусы обновляются на скорости 9600 медленно, а как выставить 115200 я не нашел.
Простая замена скорости вопрос не решает. Там есть такой нюанс как пауза между посылками в самой библиотеке некстион. Где-то тут на форуме человечек решал проблему отправки на дисплей значений графика, так вот, проблема решилась только изменениями в библиотеке. Я тоже пробовал у себя менять значения в библиотеке, но тогда уже не успевала ардуина, т.к. запись параметров у меня организован не совсем традиционно. Вобщем вернул все на место, не было времени разбираться.
Скорость обмена я пробовал менять прямо при старте дисплея, точно не помню, но по моему baud 115200 на стартовой странице прописывал. Только учтите, на такой скорости только serial работает.

Отправлено спустя 24 минуты 22 секунды:
Есть еще такая хорошая весчь как отладка в Nextion Editor (debug). Без самого физического дисплея можно полностью видеть работу программы. Там есть 2 очень полезных окна (на видео справа внизу) в которых выводится UART обмен с внешним модулем, в данном случае с ардуиной. Так вот, весь процесс обмена можно просмотреть остановив симуляцию кнопкой Stop. Там есть переключение просмотра, в НЕХ, String и т.д. Можно увидеть в каком виде и что вообще кидает дисплею ардуина. Я так вылавливал проблему двойных кавычек.
Естественно, чтоб запустить проект дисплея на компьютере необходим переходник uart-usb.
Очень советую попробовать симуляцию, в настройке дисплея незаменимая штука.
[spoiler]https://www.youtube.com/watch?v=8vb2Ljw4yKY[/spoiler]

Кнопка в Nextion

Добавлено: 18 июл 2018, 13:29
Alias
Понял, оставлю, как есть. Меня устраивает обновление атрибутов значений на экране со скоростью 3 знакоместа в секунду. Ну, как устраивает - привык :D
Отладку пока пробовал только на встроенном эмуляторе без связи с внешним миром. Чувствую, нужно осваивать. Хотя все пока гладко за исключением мелких непоняток.
А вот как это выглядит в реале, см. ссылку.
https://youtu.be/7OGUqUu6NLg