Страница 17 из 24

Разработки ecoins для дисплея Nextion

Добавлено: 10 июн 2023, 07:39
PaveLesp32
WildCat,
Благодарю, теперь у пк буду в пн, попробую! :yes:

Разработки ecoins для дисплея Nextion

Добавлено: 15 июн 2023, 17:03
PaveLesp32
Доброго дня!

а как с применением дисплея Nextion можно сделать так чтобы после
отключения питания состояние кнопок (например включения)
после возобновления питания активизировались в прежнем состоянии
причем кнопка просто b0 без фиксации.
я понимаю что это реализуется с применением EEPROM но что и как записать
в память не могу понять.

может кто видел пост с примером или описанием?

Разработки ecoins для дисплея Nextion

Добавлено: 15 июн 2023, 18:52
WildCat
[ref]PaveLesp32[/ref], есть команды wepo и repo, запись и чтение в/из eeprom.

https://nextion.tech/instruction-set/

Есть достаточно подробный видео курс.
https://nextion.info/price_and_order.html

Платный, но считаю что это не дорого.

Разработки ecoins для дисплея Nextion

Добавлено: 15 июн 2023, 19:22
PaveLesp32
[ref]WildCat[/ref], как я понимаю данный вариант использует память самого дисплея,
мне бы желательно чтобы это происходил на стороне контроллера
например при нажатии кнопки без фиксации
в Touch Press посылается out01=1 посылается 1
а при отпускании в Touch Release out01=0 посылается 0 или любые иные значения которые можно записать в память на процессоре
вопрос как реализовать это не доходит :smile37:

по поводу курса, пока не готов так как не так много еще работаю с Nextion

Разработки ecoins для дисплея Nextion

Добавлено: 15 июн 2023, 19:48
WildCat
[ref]PaveLesp32[/ref], на стороне МК это сделать ещё проще.
Состояние кнопки (или кнопок) перегнать из бит в байт, сохранить в eeprom. Затем из eeprom читать состояние для использования в проекте.

Проще - потому что работа с eeprom в nxt не очень удобна, индекс переменной нужно прописывать вручную, и не ошибиться с типами данных и количеством занимаемых переменой бит. В ФЛП это происходит автоматически.

Разработки ecoins для дисплея Nextion

Добавлено: 15 июн 2023, 22:05
PaveLesp32
[ref]WildCat[/ref], Добро, буду пробовать!

Спасибо!

Разработки ecoins для дисплея Nextion

Добавлено: 19 июн 2023, 14:39
PaveLesp32
Ребят! :smile37: Подскажите где можно посмотреть пример того как можно вывести изображение (картинку) из ранее закаченых в дисплей те которые по индексами или id, по какому нибудь событию на стороне процессора например включился насос и на дисплее зажглась лампа.
Причём только на одном окне и при отключении насоса картинка исчезла и появлялся прежний фон!

Спасибо

Разработки ecoins для дисплея Nextion

Добавлено: 19 июн 2023, 14:58
WildCat
[ref]PaveLesp32[/ref], для каждого элемента в дисплее можно установить изображение.
Далее работа по условиям.
if([значение параметра]==1)
{
t0.pic=1 /1 — id картинки для активного состояния
}else
{
t0.pic=2 /2 — id картинки для исходного состояния
}

Разработки ecoins для дисплея Nextion

Добавлено: 19 июн 2023, 17:50
PaveLesp32
[ref]WildCat[/ref], итак указал данный код в окне Touch Press

if(in9==1)
{
p0.pic=18
}else
{
p0.pic=20
}

то есть если у меня переменная in9 принимает состояние 1 то появляется картинка 18 если нет то 20 (фон подложки)

но вот проблема когда я включаю Debug на дисплее в месте картинке появляется картинка из списка загруженных под ID_0
как я понял потому что первоначально переменная in9 имеет значение 0
Возможно ли это как то поправить?

Сейчас указал в разделе 4.ВХОДНЫЕ ПОЛЬЗОВАТЕЛЬСКИЕ ПЕРЕМЕННЫЕ
значение по умолчанию переменной in9=20 (20 это у меня подложка в цвет фона)

или есть какой то иной более правильный способ?

Разработки ecoins для дисплея Nextion

Добавлено: 19 июн 2023, 18:58
WildCat
[ref]PaveLesp32[/ref], возьмите любой пример от ecoins , там есть картинки.

Разработки ecoins для дисплея Nextion

Добавлено: 20 июн 2023, 15:32
PaveLesp32
[ref]WildCat[/ref], вроде понимаю сейчас как там устроено с картинками,
вопрос еще по теме передачи из контроллера в дисплей значения float ставлю блок 17.02.04.3
указываю например значение 55.7 на стороне дисплея ставлю блок X0 который по float работает но на нем показывает 5570
ну а в таймере вписываю x0.val=in0
как сделать чтобы отображалось с запятой и как отсечь лишний нолик?

и еще вопрос как выводить строковые данные, со стороны МП ставлю блок и индексом Т
а на стороне дисплея не знаю как вывести данные

Спасибо

Разработки ecoins для дисплея Nextion

Добавлено: 20 июн 2023, 16:17
WildCat
PaveLesp32 писал(а): 20 июн 2023, 15:32 как сделать чтобы отображалось с запятой и как отсечь лишний нолик?
В настройках атрибута поля Х (float) есть пункт, который отвечает за количество знаков после запятой

Разработки ecoins для дисплея Nextion

Добавлено: 20 июн 2023, 17:13
PaveLesp32
WildCat писал(а): 20 июн 2023, 16:17
PaveLesp32 писал(а): 20 июн 2023, 15:32 как сделать чтобы отображалось с запятой и как отсечь лишний нолик?
В настройках атрибута поля Х (float) есть пункт, который отвечает за количество знаков после запятой
Спасибо, верно можно выбрать положение запятой. Но получается не совсем то
Из МК через уарт видно что идёт 4х значное число например переменная float 23.5 передаётся 2350 и в панели можно выбрать :
2,350
23,50
235,0
А выбрать 23,5 не получается
Может в пользовательском блоке можно уменьшить количество знаков? :smile37:

Разработки ecoins для дисплея Nextion

Добавлено: 20 июн 2023, 18:29
WildCat
В МК умножьте на 10, передайте int.
В дисплее float с одним знаком.

У меня достаточно много подобных данных передавалось, я float вообще не использую.

Разработки ecoins для дисплея Nextion

Добавлено: 20 июн 2023, 20:28
PaveLesp32
WildCat писал(а): 20 июн 2023, 18:29 В МК умножьте на 10, передайте int.
В дисплее float с одним знаком.

У меня достаточно много подобных данных передавалось, я float вообще не использую.
Спасибо, сейчас так и сделал, но есть нюанс например когда передаешь значение int 235 то все показывает хорошо 23.5
но если температура падает ниже 10 отображается (передается 23) то отображает 02.3
есть мысли как убирать нолик перед двойкой?
как я понимаю скриптами в панели как то?

Разработки ecoins для дисплея Nextion

Добавлено: 20 июн 2023, 22:37
ecoins
PaveLesp32 писал(а): 20 июн 2023, 20:28 но если температура падает ниже 10 отображается (передается 23) то отображает 02.3
Любопытно. Посоветовать сейчас ничего не могу, но с интересом буду ожидать решения этой проблемы.
С уважением, Энвер.

Разработки ecoins для дисплея Nextion

Добавлено: 21 июн 2023, 00:13
WildCat
[ref]PaveLesp32[/ref],
сейчас вот так:
1.jpg
а надо так?
2.jpg
Параметр ws0=0, ws1=1

При таких параметрах всё ок во всем диапазоне

[spoiler]
3.jpg
4.jpg
5.jpg
6.jpg
[/spoiler]

Разработки ecoins для дисплея Nextion

Добавлено: 22 июн 2023, 15:03
PaveLesp32
WildCat писал(а): 21 июн 2023, 00:13 [ref]PaveLesp32[/ref],
сейчас вот так:
1.jpg

а надо так?
2.jpg

Параметр ws0=0, ws1=1

При таких параметрах всё ок во всем диапазоне

[spoiler]
3.jpg

4.jpg

5.jpg

6.jpg
[/spoiler]
прошу прощение за долгий ответ,
да, так все хорошо отображает!

Спасибо Большое!

Разработки ecoins для дисплея Nextion

Добавлено: 26 июн 2023, 17:44
PaveLesp32
Ребята прошу помощи!
Есть задача используя на стороне Nextion одно окно (например n0) в котором отображаются данные и меняются со скоростью заданного таймера tMin в Time Event (100ms) n0.val=in0
а в таймере tMout строка такая
// 1.СОХРАНЕНИЕ ВЫВОДИМЫХ ПАРАМЕТРОВ В ПОЛЬЗОВАТЕЛЬСКИХ ПЕРЕМЕННЫХ outxx
//=================================================================================================
out03=n2.val
возможно ли как то через данное окно и отображать данные например температуру и нажав на него (глобальное включил и добавил клавиатуру) забив нужное число Уставку отправить в контроллер для записи в eeprom?
или требуется использование двух независимых окон для реализации такого?

Спасибо!!!

Разработки ecoins для дисплея Nextion

Добавлено: 26 июн 2023, 19:34
WildCat
PaveLesp32 писал(а): 26 июн 2023, 17:44 Спасибо!!!
Пожалуйста :)

А попробовать?

Можно, но идея так себе.
1. Не видно установленое значение.
2. Полученное текущее значение температуры будет постоянно отправляться в значение уставки.
3. Можно сделать наложение разных полей (с разными же переменными), и одна из них будет переменной отправки. При этом её нужно сделать прозрачным фоном (crop image). Но тут так же будет та же проблема, что в п.1.

В чем проблема выделить отдельное поле, или сделать доп страницу для ввода параметров?