Панель Nextion

Использование дисплеев и обсуждение пользовательских блоков к ним
Vitbas
Рядовой
Сообщения: 4
Зарегистрирован: 18 апр 2018, 11:43
Имя: Viktor

Панель Nextion

Сообщение Vitbas »

grin-mpx писал(а): 18 апр 2018, 12:54У Вас значения с панели опрашиваются все в разный момент времени, в том числе и "применить". Попробуйте значения типа час, мин, и пр. подключить к переменным, а переменные уже к блоку записи RTC. И убедитесь что на RTC на вход EN приходит сигнал.

Отправлено спустя 13 минут 3 секунды:
А вообще, вот как сделано у меня. Для Вас верхние блоки над RTC SET не имеют значения.
RTC.jpg
Я понял, но почему то не работает, сделал как на картинке ниже.. Еще один момент Событие применить исходит от кнопки некстион , т.е. есть переменная которая получает единичку при нажатии и ноль при отпускании этой кнопки..
Изображение
Аватара пользователя
grin-mpx
Лейтенант
Сообщения: 477
Зарегистрирован: 17 июл 2017, 18:39
Откуда: Днепр. UA
Имя: Григорий

Панель Nextion

Сообщение grin-mpx »

Вот Вам файл .flp из моего проекта и страница проекта Nextion. Посмотрите какие используются кнопки и переменные в дисплее и как взаимодействуют с ардуино. На всякий случай у себя перенесите блоки настройки даты на другую плату.

P.S. Таймер tm0 на странице дисплея отношения к установке даты не имеет, он выполняет там другую роль.Не обращайте на него внимания.

Отправлено спустя 28 минут 44 секунды:
Вот если вдруг не сможете импортировать страницу
set_data.HMI
У вас нет необходимых прав для просмотра вложений в этом сообщении.
monah-k
Рядовой
Сообщения: 9
Зарегистрирован: 08 июн 2017, 15:10
Откуда: Tomskay obl

Панель Nextion

Сообщение monah-k »

Добрый день.
просмотрел всякие примеры но решение не нашел. Есть панель Nextion есть Mega 2560 есть dfplayer mini.
Nextion подключен к меге Serial 1 ( pin 18 19), dfplayer подключен к меге Serial 2 ( pin 16 17).
Как прописать? нажимаешь на картинку звучит слово. то есть нажали на букву А звучит фраза.
Пожалуйста пример в Nextion editor и в FLPog.
Аватара пользователя
grin-mpx
Лейтенант
Сообщения: 477
Зарегистрирован: 17 июл 2017, 18:39
Откуда: Днепр. UA
Имя: Григорий

Панель Nextion

Сообщение grin-mpx »

Выложите проект где Вы не смогли найти решение.
monah-k
Рядовой
Сообщения: 9
Зарегистрирован: 08 июн 2017, 15:10
Откуда: Tomskay obl

Панель Nextion

Сообщение monah-k »

в том то и дело что нет проекта. на nexte делаю кнопку и как послать команду на serial 2. как сделать пере адресацию с serial 1 на serial 2 команду для dfplayer. если dfplayer на прямую подключить к nexte и из него послать - printh 7e ff 06 0d 01 01 01 fe ed ef - то все играет
как послать что бы она уходила через мегу
Аватара пользователя
grin-mpx
Лейтенант
Сообщения: 477
Зарегистрирован: 17 июл 2017, 18:39
Откуда: Днепр. UA
Имя: Григорий

Панель Nextion

Сообщение grin-mpx »

Как нет проекта? Вы это не в flprog пытаетесь сделать? Тогда я тут ничем не могу помочь. :crazy:
Vitbas
Рядовой
Сообщения: 4
Зарегистрирован: 18 апр 2018, 11:43
Имя: Viktor

Панель Nextion

Сообщение Vitbas »

grin-mpx писал(а): 19 апр 2018, 10:47 Вот Вам файл .flp из моего проекта и страница проекта Nextion. Посмотрите какие используются кнопки и переменные в дисплее и как взаимодействуют с ардуино. На всякий случай у себя перенесите блоки настройки даты на другую плату.

P.S. Таймер tm0 на странице дисплея отношения к установке даты не имеет, он выполняет там другую роль.Не обращайте на него внимания.

Отправлено спустя 28 минут 44 секунды:
Вот если вдруг не сможете импортировать страницу
set_data.HMI
Спасибо! Но что то я совсем запутался. Если вас не затруднит посмотрите пожалуйста проект. в Flprog плата 3. в Nextion страница 6.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
grin-mpx
Лейтенант
Сообщения: 477
Зарегистрирован: 17 июл 2017, 18:39
Откуда: Днепр. UA
Имя: Григорий

Панель Nextion

Сообщение grin-mpx »

Ну первое из замечаний. У Вас страница 6 локальная, а прочитать ее значения ардуина пытается уже после ухода с этой страницы, потому как в кнопке ПРИМЕНИТЬ кроме записи переменных va0 va1 стоит еще и команда перехода на page 0. Убрал эту команду с дисплея и сделал переход по команде от ардуины через 3 сек после нажатия ПРИМЕНИТЬ. Ардуина должна успеть прочитать все поля пока дисплей на 6 странице. Попробуйте еще так, напишите что получилось.

Отправлено спустя 39 минут 11 секунд:
В файле 230418aqwa-2 перенес Вам настройку даты на отдельную плату с выполнением по условию что дисплей на странице №6.И вообще, когда Вы подключите опрос всех переменных на дисплее на всех страницах, то офигеете от тормозов. По этому, старайтесь делать платы с работой по условию номера страниц.То есть,например: переменные и кнопки 4 страницы ардуина должна опрашивать только если дисплей показывает 4 страницу. Выводить данные(текстовые поля,переменные) можно и вне нужной страницы, но тогда страница, переменные и текстовые поля на дисплее должны иметь статус глобальных.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Vitbas
Рядовой
Сообщения: 4
Зарегистрирован: 18 апр 2018, 11:43
Имя: Viktor

Панель Nextion

Сообщение Vitbas »

grin-mpx писал(а): 23 апр 2018, 12:26Ну первое из замечаний. У Вас страница 6 локальная, а прочитать ее значения ардуина пытается уже после ухода с этой страницы, потому как в кнопке ПРИМЕНИТЬ кроме записи переменных va0 va1 стоит еще и команда перехода на page 0. Убрал эту команду с дисплея и сделал переход по команде от ардуины через 3 сек после нажатия ПРИМЕНИТЬ. Ардуина должна успеть прочитать все поля пока дисплей на 6 странице. Попробуйте еще так, напишите что получилось.

Отправлено спустя 39 минут 11 секунд:
В файле 230418aqwa-2 перенес Вам настройку даты на отдельную плату с выполнением по условию что дисплей на странице №6.И вообще, когда Вы подключите опрос всех переменных на дисплее на всех страницах, то офигеете от тормозов. По этому, старайтесь делать платы с работой по условию номера страниц.То есть,например: переменные и кнопки 4 страницы ардуина должна опрашивать только если дисплей показывает 4 страницу. Выводить данные(текстовые поля,переменные) можно и вне нужной страницы, но тогда страница, переменные и текстовые поля на дисплее должны иметь статус глобальных.
К сожалению не заработало... По кнопке применить время так и не меняется..
Аватара пользователя
grin-mpx
Лейтенант
Сообщения: 477
Зарегистрирован: 17 июл 2017, 18:39
Откуда: Днепр. UA
Имя: Григорий

Панель Nextion

Сообщение grin-mpx »

[ref]Vitbas[/ref],
Значит проверяйте правильно-ли читает и читает-ли вообще ардуина переменные на дисплее. В первую очередь кнопку Применить. Повесьте светодиод на какой-то пин и подключайте к нему переменные от дисплея.
Аватара пользователя
Alias
Лейтенант
Сообщения: 481
Зарегистрирован: 27 ноя 2017, 13:15
Откуда: Rus44
Имя: Michael
Контактная информация:

Панель Nextion

Сообщение Alias »

Дошли руки и у меня до этой панели. Вроде бы, начинаю разбираться. Но не могу понять, что происходит в последовательном порту, светодиод даже не моргает, а горит. Прямо таки, непрекращающийся поток данных, хотя всего два элемента в работе по управлению цветом фона и текста на кнопке:
[spoiler]
Mega-n.jpg
[/spoiler]
Если просто отправлять значения на дисплей, - текст или числа, - то тишина. Отправили, и молчим. Хотя, в определенных ситуациях и там был большой поток.
Что это и откуда? Как этого избежать и надо ли?
Наверное, надо, иначе можно и данные потерять. Буду признателен подсказке! Фрагмент скетча во вложении, если он нужен.
PS Это идет запрос, не нажата ли эта самая кнопка? Удалил все страницы из панели, думал, запрашивается номер текущей, чтобы не отправлять неактуальные данные, но нет, не угадал.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
drimer
Рядовой
Сообщения: 57
Зарегистрирован: 07 сен 2015, 18:45
Откуда: vilnius

Панель Nextion

Сообщение drimer »

здарова спецы ест проблемка с проектом акваконтроллер толька нипайму как тут вложить файлы проекта

Отправлено спустя 14 минут 19 секунд:
kontroller.HMI
aqva.flp
вот мой акваконтроллер помогите pliz :)
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
grin-mpx
Лейтенант
Сообщения: 477
Зарегистрирован: 17 июл 2017, 18:39
Откуда: Днепр. UA
Имя: Григорий

Панель Nextion

Сообщение grin-mpx »

Alias писал(а): 07 июл 2018, 10:49Наверное, надо, иначе можно и данные потерять. Буду признателен подсказке! Фрагмент скетча во вложении, если он нужен.
PS Это идет запрос, не нажата ли эта самая кнопка? Удалил все страницы из панели, думал, запрашивается номер текущей, чтобы не отправлять неактуальные данные, но нет, не угадал.
Проект открыть не смог.
Забивка порта sendme это запрос номера страницы. Если в программе где-то стоит этот опрос , то в порт оно тарабанит постоянно. Причем даже если отключить плату от компиляции (flprog). Ничего страшного в этом нет, у меня передается туча всякой инфы туда-обратно, никаких сбоев не происходит.
Аватара пользователя
Alias
Лейтенант
Сообщения: 481
Зарегистрирован: 27 ноя 2017, 13:15
Откуда: Rus44
Имя: Michael
Контактная информация:

Панель Nextion

Сообщение Alias »

Спасибо! В принципе, я тоже успокоился: ничего не пропадает и нужные команды всегда в этом спаме есть. Пусть будет.
Панель интересная и даже мне, такому нубу в программировании, уже поддается. Завтра попробую подсветку регулировать локально через dim на панели без участия Ардуино. Надеюсь, получится, все примеры, почему-то, всегда через посредника работают.
Аватара пользователя
grin-mpx
Лейтенант
Сообщения: 477
Зарегистрирован: 17 июл 2017, 18:39
Откуда: Днепр. UA
Имя: Григорий

Панель Nextion

Сообщение grin-mpx »

Я поначалу тоже примитивно использовал панель, но когда забил мегу глобальными переменными пришлось искать пути оптимизации при работе с ней.Перекопал кучу форумов, но таки научил ее (всмысле я научился :smile171: ) расшифровывать пакеты от Меги и самой переносить данные переменных, числовых и строковых полей на нужные страницы и т.д. В итоге, там где нужно было отсылать с меги 30 значений полей (переменных) на дисплей, отсылалось только на 2 переменные и уже дисплей сам розставлял значения по страницам. Это колоссальная экономия глоб. переменных в Меге.
vovka1973
Подполковник
Сообщения: 1202
Зарегистрирован: 14 фев 2016, 14:16
Откуда: kazahstan
Благодарил (а): 32 раза
Поблагодарили: 6 раз

Панель Nextion

Сообщение vovka1973 »

grin-mpx писал(а): 08 июл 2018, 14:30отсылалось только на 2 переменные и уже дисплей сам розставлял значения по страницам. Это колоссальная экономия глоб. переменных в Меге.
пример можно посмотреть?
Аватара пользователя
grin-mpx
Лейтенант
Сообщения: 477
Зарегистрирован: 17 июл 2017, 18:39
Откуда: Днепр. UA
Имя: Григорий

Панель Nextion

Сообщение grin-mpx »

vovka1973 писал(а): 08 июл 2018, 17:18пример можно посмотреть?
Вот пример передачи с ардуины на дисплей 8 текстовых переменных по индексу. На дисплее для этого используется только 2 переменные и 1 таймер. Если страниц будет больше одной, то на каждой из них должен быть таймер с кодом. Обратите внимание на этот код, именно он раздает значения переменных по своим местам, и именно в нем вносятся изменения при добавления/удалении текстовых полей или страниц.
Код в таймере должен быть одинаковым на всех страницах!
Страница page0 это рабочая страница и их может быть много и разных, а страница sinhro это буферная, там кроме двух переменных больше ничего нет. Можно эти переменные разместить и на любой другой странице, но когда проект разрастается может быть путаница. По этому я всегда делаю одну неприкасаемую страницу с важными переменными, которые в результате разных правок-косяков точно не пострадают.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Alias
Лейтенант
Сообщения: 481
Зарегистрирован: 27 ноя 2017, 13:15
Откуда: Rus44
Имя: Michael
Контактная информация:

Панель Nextion

Сообщение Alias »

Надо будет разобраться, а то я, кажется, уперся в пропускную способность порта на 9600, а как перевести в flprog на 115200 не могу понять. Видимо, панель не успевает все передать и не только данные теряются, но и приписываются из чужих переменных.
В итоге, как костыль на первое время, поставил таймеры с задержкой на 3 секунды, пока помогает:
[spoiler]
nexr.png
[/spoiler]
На этой плате при активации конкретной страницы на панель однократно передаются числовые значения параметров, которые нужно проверить и при необходимости подкорректировать. При нажатии кнопки сохранения данных все перекидывается обратно, в ППЗУ сохраняются только измененные параметры.
Пока после rtrig не поставил tof на 3 секунды, был тихий ужас...

PS И еще... Похожий вопрос уже был, но мой все-таки больше на стороне панели решается через переменные, если я правильно понял.
Итак, есть несколько экранов. Я могу перемещаться по ним линейно по прямым кнопкам, то есть какая страница в событии кнопки прописана, туда и попадем.
Например, с первой страницы я могу попасть на третью и по кнопке возврата обратно на первую, если в ней прописана первая страница. Точно так же и со второй страницы, если на третьей будет отдельная кнопка возврата на вторую.
Но можно ли придумать код события по нажатию кнопки такой, чтобы на кнопке возврата висела не железная ссылка на конкретную страницу, а номер страницы, откуда я только что перешел? Чувствую, через системную переменную панели можно сделать, но не могу понять, как.
Тогда можно было бы с первой страницы попасть на вторую, с нее по прямой ссылке на третью, а с третьей через кнопку возврата на предыдущую страницу, в данном случае - на вторую.
Буду признателен за советы! Спасибо!
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
grin-mpx
Лейтенант
Сообщения: 477
Зарегистрирован: 17 июл 2017, 18:39
Откуда: Днепр. UA
Имя: Григорий

Панель Nextion

Сообщение grin-mpx »

Alias писал(а): 15 июл 2018, 00:35Тогда можно было бы с первой страницы попасть на вторую, с нее по прямой ссылке на третью, а с третьей через кнопку возврата на предыдущую страницу, в данном случае - на вторую.
Я пока способа без условия if не нашел. Вариант типа page=va0.val не проходит. Кажется нет возможности ссылаться на какую-то переменную при задании перехода на страницу, только через if и с перечислением названия имеющихся страниц.
Аватара пользователя
Alias
Лейтенант
Сообщения: 481
Зарегистрирован: 27 ноя 2017, 13:15
Откуда: Rus44
Имя: Michael
Контактная информация:

Панель Nextion

Сообщение Alias »

Есть у меня в проекте шаговый двигатель, самый примитивный 28byj-48. Долго не мог понять, почему он в нужное время не отрабатывает поворот на нужный угол.
Каково же было мое удивление, когда, открыв корпус, увидел вялое переливание огонька от светодиода в светодиоду на драйвере. На один шаг уходит порядка секунды. В минуту - несколько градусов.
Видимо, если что-то и задумаю в будущем на Nextion, буду делать буфер на какой-нибудь Нано между основным контроллером и панелью. И что сразу не сообразил...
Ответить

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

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

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