Подскажите по NEXTION панели

Brand2
Лейтенант
Сообщения: 450
Зарегистрирован: 26 фев 2018, 21:27
Откуда: Haifa
Имя: Alex
Благодарил (а): 2 раза
Поблагодарили: 5 раз

Подскажите по NEXTION панели

Сообщение Brand2 »

[ref]KulibinOrsk[/ref], пример в студию пожалуйста
KulibinOrsk
Лейтенант
Сообщения: 516
Зарегистрирован: 25 фев 2018, 08:48
Откуда: Оренбург
Имя: Александр

Подскажите по NEXTION панели

Сообщение KulibinOrsk »

[ref]Brand2[/ref], Вам что пример из 2-х строчек с флпрог нужен ? Или хотите фот-видео с панелей ?
Аватара пользователя
grin-mpx
Лейтенант
Сообщения: 477
Зарегистрирован: 17 июл 2017, 18:39
Откуда: Днепр. UA
Имя: Григорий

Подскажите по NEXTION панели

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

KulibinOrsk писал(а): 11 дек 2019, 12:02 - вывести и текст и фигуры различных цветов и в любое место программы
Во первых, не в любое, а на ТЕКУЩУЮ страницу.
KulibinOrsk писал(а): 11 дек 2019, 14:13 support, полагаю что во всех версиях (я проверил на 5.3.0) не работает вывод текста в панель NEXTION в частности NX3224T028-011.
Пытаюсь использовать панель просто как цветной дисплей (очень удобно кстати) и вот с flprog не выводит текст, при этом круги, квадраты разными цветами все отрабатывает.
Вот объясните мне, как чистая панель может вывести текст если в ней нет ШРИФТОВ. Даже в том параметре где Вы указали, отправка текста НА ТЕКУЩУЮ СТРАНИЦУ! нужно указать ID шрифта, а он заливается ТОЛЬКО из Nextion Editor.
send.jpg
Отправлено спустя 13 минут 35 секунд:
KulibinOrsk писал(а): 11 дек 2019, 13:18 Brand2, Вам что пример из 2-х строчек с флпрог нужен ? Или хотите фот-видео с панелей ?
Ценю Ваш юмор про 2 строчки. Отправка текста HELLO на дисплей, на текущую страницу.
Может Вы 2 блока имели ввиду?
[spoiler]struct _nextionLissenStruct{
char code;
String result;
long number;
};
_nextionLissenStruct _nextionTempLissen;
bool _nextionPaintTXT1_OldStae = 0;
bool _trgrt1 = 0;
bool _trgrt1I = 0;

void setup()
{

Serial2.begin(9600, SERIAL_8N1);
nextionSendCommand("", 2);
nextionSendCommand("page 0", 2);

}
void loop()
{

String _tempVariable_String;





//Плата:1
if (!(0)) { if (_trgrt1I) { _trgrt1 = 0;} else {_trgrt1 = 1; _trgrt1I = 1;} } else {_trgrt1 = 0; _trgrt1I = 0;};
if ( _trgrt1) { if ( ! _nextionPaintTXT1_OldStae) {_nextionPaintTXT1_OldStae = 1 ; _tempVariable_String = String ("xstr ") + String ("0") + String (",") + String ("0") + String (",") + String ("0") + String (",") + String ("0") + String (",") + String ("0") + String (",") + String ("0") + String (",") + String ("0") + String (",") + String ("1") + String (",") + String ("1") + String (",") + String ("1") + String (",\"") + String (" HELLO") + String ("\"");
nextionSendCommand(_tempVariable_String.c_str(), 2);}} else { _nextionPaintTXT1_OldStae = 0; }






}

bool _isTimer(unsigned long startTime, unsigned long period )
{
unsigned long currentTime;
currentTime = millis();
if (currentTime>= startTime) {return (currentTime>=(startTime + period));} else {return (currentTime >=(4294967295-startTime+period));}
}
struct _nextionLissenStruct nextionSendCommand(const char* cmd, byte port )
{
while (Serial2.available()){Serial2.read(); }
Serial2.print(cmd);
Serial2.write(0xFF);
Serial2.write(0xFF);
Serial2.write(0xFF);
return nextionListen(port);
}
struct _nextionLissenStruct nextionListen( byte port )
{
byte _bite;
byte _end = 0xff;
byte cmd[100];
int index = 0;
_nextionLissenStruct temp;
temp.result = "";
temp.code = 'z';
temp.number = 0;
int countEnd = 0;
delay(50);
long startTime = millis();
while(! (countEnd==3)) {
while(Serial2.available()>0){
if(Serial2.available()>0){
_bite = Serial2.read();
cmd[index] = _bite;
index++;
if(_bite == _end){countEnd++;}
if(countEnd == 3){break;}
}}
if(_isTimer(startTime, 100)) {return temp;}
}
switch (cmd[0]) {
case 0x66:
temp.code = 'f';
temp.result = String(cmd[1], DEC);
return temp;
break;
case 0x70:
temp.code = 'p';
for (int i = 1; i < index - 3; i++) {
temp.result += char(cmd);}
return temp;
break;
case 0x71:
temp.code = 'q';
temp.number = uint32_t(cmd[4]) << 24 | uint32_t(cmd[3]) << 16 | uint32_t(cmd[2]) << 8 | uint32_t(cmd[1]);
return temp;
break;
default:
return temp;
break;
}
return temp;
}
int nextionAskPageNamper(byte port)
{
int result;
_nextionLissenStruct temp;
temp = nextionSendCommand("sendme",port);
if((temp.code == 'f')&&(temp.result != "")){result = temp.result.toInt();} else {result = -1;}
return result;
}

[/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
KulibinOrsk
Лейтенант
Сообщения: 516
Зарегистрирован: 25 фев 2018, 08:48
Откуда: Оренбург
Имя: Александр

Подскажите по NEXTION панели

Сообщение KulibinOrsk »

[ref]grin-mpx[/ref], вообще то тут речь про FLprog, так к сведению... Поэтому отправка текста и какой-нибудь фигуры из флпрог есть 2 строчки (утрированно).
Насчет выбора ID я пробовал разные варианты. Единственное не понятно: где в Nextion Editor указываем ID шрифта при создании пустого проекта. Вот тут может быть весь косяк, но пока с этим мутно все.
Аватара пользователя
grin-mpx
Лейтенант
Сообщения: 477
Зарегистрирован: 17 июл 2017, 18:39
Откуда: Днепр. UA
Имя: Григорий

Подскажите по NEXTION панели

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

KulibinOrsk писал(а): 11 дек 2019, 17:13 Единственное не понятно: где в Nextion Editor указываем ID шрифта при создании пустого проекта. Вот тут может быть весь косяк, но пока с этим мутно все.
Его нельзя просто так указать. Для начала его нужно сгенерировать. https://habr.com/ru/company/flprog/blog/392561/
Видео, включая генерацию шрифтов, примерно с 11 минуты.
[spoiler]https://www.youtube.com/watch?v=5bIc5ebpD0M[/spoiler]
Аватара пользователя
Nikan
Майор
Сообщения: 1194
Зарегистрирован: 29 дек 2016, 00:49
Откуда: москва

Подскажите по NEXTION панели

Сообщение Nikan »

.
Последний раз редактировалось Nikan 24 мар 2023, 01:23, всего редактировалось 1 раз.
SSSergeich
Капитан
Сообщения: 708
Зарегистрирован: 06 фев 2016, 11:01
Откуда: Ярославль
Имя: Сергей

Подскажите по NEXTION панели

Сообщение SSSergeich »

Nikan писал(а): 11 дек 2019, 22:48
SSSergeich писал(а): 11 дек 2019, 12:05 Думаю, многим будет интересен такой обзор!
Не слышал про такие.
в этой теме viewtopic.php?f=45&t=5946
Спасибо! Заинтересовался!)
KulibinOrsk
Лейтенант
Сообщения: 516
Зарегистрирован: 25 фев 2018, 08:48
Откуда: Оренбург
Имя: Александр

Подскажите по NEXTION панели

Сообщение KulibinOrsk »

[ref]grin-mpx[/ref], благодарю за подсказку. Сгенерил. Заработало. Видимо тот большой дисплей был со шрифтами с завода, это то и внесло смуту что во всех должно быть...
Осталось решить ситуацию с русским шрифтом, чтобы не вставлять текст картинками, хотя и это будет не плохо.
SSSergeich
Капитан
Сообщения: 708
Зарегистрирован: 06 фев 2016, 11:01
Откуда: Ярославль
Имя: Сергей

Подскажите по NEXTION панели

Сообщение SSSergeich »

KulibinOrsk писал(а): 12 дек 2019, 07:21 Осталось решить ситуацию с русским шрифтом,
Что не так с русскими шрифтами?
KulibinOrsk
Лейтенант
Сообщения: 516
Зарегистрирован: 25 фев 2018, 08:48
Откуда: Оренбург
Имя: Александр

Подскажите по NEXTION панели

Сообщение KulibinOrsk »

[ref]SSSergeich[/ref], каракули вместо текста. Хотя и выбрал iso8995-5 (как было рекомендовано для отображения кирилицы)
SSSergeich
Капитан
Сообщения: 708
Зарегистрирован: 06 фев 2016, 11:01
Откуда: Ярославль
Имя: Сергей

Подскажите по NEXTION панели

Сообщение SSSergeich »

[ref]KulibinOrsk[/ref], А в дебаггере нормально?
Аватара пользователя
sser
Рядовой
Сообщения: 82
Зарегистрирован: 02 янв 2018, 12:19
Откуда: Н.Новгород
Имя: Сергей
Контактная информация:

Подскажите по NEXTION панели

Сообщение sser »

В Nextion editor отвалилась нижняя панель служащая для соединения с Некстион через СОМ порт.
операционка (Windows 7).
http://arduino.ru/sites/default/files/u25112/n1.jpg
Сейчас вот так :
http://arduino.ru/sites/default/files/u25112/n2.jpg
Кто знает как решить эту проблему?
Reset Layout- не помогло, удаление программы -не помогло,откат версии-не помог..... :smile37:
Пробовал на другом компе -там всё нормально...
Brand2
Лейтенант
Сообщения: 450
Зарегистрирован: 26 фев 2018, 21:27
Откуда: Haifa
Имя: Alex
Благодарил (а): 2 раза
Поблагодарили: 5 раз

Подскажите по NEXTION панели

Сообщение Brand2 »

[ref]sser[/ref], у вас на картинке n2.jpg в строке SEND COMMAND TO выбран CURRENT SIMULATOR,поэтому Вв и не видите строку для соединения с COM PORT,на n1.jg же установленно NEXTION DEVICE,поэтому и появляется строка для подключения к COM порту.
Аватара пользователя
sser
Рядовой
Сообщения: 82
Зарегистрирован: 02 янв 2018, 12:19
Откуда: Н.Новгород
Имя: Сергей
Контактная информация:

Подскажите по NEXTION панели

Сообщение sser »

Верхняя строка для связи с физической панелью.
А нижняя для подключения эмулятора панели к ардуине.
Это ничего не меняет.
Смотрите :
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
moiseenko75
Рядовой
Сообщения: 46
Зарегистрирован: 14 ноя 2017, 03:46
Откуда: Макеевка
Благодарил (а): 1 раз

Подскажите по NEXTION панели

Сообщение moiseenko75 »

[ref]KulibinOrsk[/ref], Нужные надписи можно прописать в дисплее и по нужным условиям будет выводится та или иная надпись даже нужного цвета или бегущая строка не нагружая ардуину. Вот тут можно поковыряться повыписывать https://nextion.tech/editor_guide/ то что может пригодится. Чем больше впитываешь информации тем больше начинает играет фантазия реализации необходимого. https://youtu.be/9DHP9fJe0Go
Ответить

Вернуться в «Помогите, а то я "нимагу"»

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

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