Потеря данных через UART ESP8266 Nodemcu ->NEXTION

Теряются данные при общении ESP и Nextion

На этом форуме Вы можете задать вопросы знатокам программы и автору.
Ответить
stigmat1996
Рядовой
Сообщения: 45
Зарегистрирован: 02.05.2019{, 20:37}
Репутация: 2
Имя: Юрий

Потеря данных через UART ESP8266 Nodemcu ->NEXTION

#1

Сообщение stigmat1996 » 23.11.2019{, 16:16}

У меня большой проект для МК и экрана, поэтому при использовании стандартных блоков для работы с Нехтион были большие тормоза 5-20сек, однако все данные доходили.

Решил использовать стандартные блоки для приема с Юарт + два пользовательские блоки для отправки переменной и включения таймера. Делал по этому видео


Все нормально работает, пока не надо отправить и принимать большее количество данных - данные просто теряются. Уже пробовал с Некстион дублировать при отправке, однако это не помогло. При получении данных с Юарт, выдерживается пауза 10мс, пробовал ставить и 200мс - тоже не помогло.

При отправке с Некстион в дебаггере эмулятора все хорошо.

Как сделать так, чтобы данные не терялись? От чего это зависит?

Использую физический UART, FlProg 5.3.0, Nextion Editor V0.58

В Некстион:
Touch event: print "rele1"
Touch realese event: tm0.en=1
print "rele1"


Блок для відправки змінної на Некстион:
if(send==1)
{
Serial.print((String)name+"=\""+data+"\""+char(255)+char(255)+char(255));
}

edyapd
Капитан
Сообщения: 768
Зарегистрирован: 20.09.2019{, 11:38}
Репутация: 65
Имя: Эдуард

Потеря данных через UART ESP8266 Nodemcu ->NEXTION

#2

Сообщение edyapd » 23.11.2019{, 16:48}

С Nextion не работал, не знаю, что это такое. Но, в видео проскользнула такая фраза "Буфер очищается по заполнению" (не дословно, но как-то так).
Так может быть в этом собака порылась?

stigmat1996
Рядовой
Сообщения: 45
Зарегистрирован: 02.05.2019{, 20:37}
Репутация: 2
Имя: Юрий

Потеря данных через UART ESP8266 Nodemcu ->NEXTION

#3

Сообщение stigmat1996 » 23.11.2019{, 17:10}

У меня есть страница где нужно ввести данные вайфай и после нажатия кнопки запускается таймер, который шлет поочередно данные с частотой 400мс, чтобы норм принялось. Затем он запускает еще один таймер, который каждые 10 сек запускает первый таймер, до того момента, пока ЕСП не подключится к вайфай и пришлет команду на переход на другую страницу.

Возможно проблема и в буфере, я не знаю как с этим бороться. :smile113:

Brand2
Лейтенант
Сообщения: 414
Зарегистрирован: 26.02.2018{, 21:27}
Репутация: 42
Откуда: Haifa
Имя: Alex

Потеря данных через UART ESP8266 Nodemcu ->NEXTION

#4

Сообщение Brand2 » 23.11.2019{, 18:49}

stigmat1996, Выложите проект Nextion и FLPROG сюда,тогда можно и разбираться а не гадать как и что у Вас там.

Аватара пользователя
grin-mpx
Лейтенант
Сообщения: 477
Зарегистрирован: 17.07.2017{, 18:39}
Репутация: 55
Откуда: Днепр. UA
Имя: Григорий

Потеря данных через UART ESP8266 Nodemcu ->NEXTION

#5

Сообщение grin-mpx » 23.11.2019{, 22:55}

stigmat1996 писал(а):
23.11.2019{, 17:10}
У меня есть страница где нужно ввести данные вайфай и после нажатия кнопки запускается таймер, который шлет поочередно данные с частотой 400мс, чтобы норм принялось.
Я думаю это изначально тупиковое направление, отправлять с дисплея данные при отсутствии информации что там происходит в контроллере и чем он в данный момент занят. Лучший вариант писать данные в переменные на дисплее, а контроллером уже их опрашивать, причем по условию, например при нажатии кнопки СОХРАНИТЬ.
И вообще, у меня правило такое: контроллер спросил-дисплей ответил, контроллер сказал-дисплей сделал.
При этом контроллер постоянно следит на какой странице дисплей, была ли изменена переменная отвечающая за кнопки и пр. и только конкретно на этой странице .

ShishkaRoman
Рядовой
Сообщения: 44
Зарегистрирован: 18.06.2020{, 11:36}
Репутация: 1
Имя: Roman

Потеря данных через UART ESP8266 Nodemcu ->NEXTION

#6

Сообщение ShishkaRoman » 07.05.2023{, 21:04}

stigmat1996 писал(а):
23.11.2019{, 16:16}
S
Можете викласти власні блоки. Я щось не можу їх зібрати

Ответить

Вернуться в «Спросить у знатоков»