реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> LwIP обработка ошибок
SasaVitebsk
сообщение Aug 30 2017, 14:14
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 706
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



Доброго времени суток.
В приложении (FreeRTOS + LwIP) обрабатываю TCP/Modbus. Сделал несколько коннектов. Неблокирующее соединение + callback функция.
Всё работает, пока всё корректно. Бывает, что при некорректном закрытии соединения (например вис сервера) у меня в callback функцию возвращается ошибка. Что с ней делать - ума не приложу. Глубоко стек копать не могу. У меня ещё, кроме того, если остановку проца в дебаге делаю, то ethernet отваливается.
Пытаюсь закрыть соединение, но lwip возвращает ошибку (ERR_VAL -6 /* Illegal value.*/). Порывшись - вижу что pcb = 0, отсюда и ошибка.
Собственно вопрос состоит в том, как обработать ошибку, чтобы я смог закрыть коннект и освободить память.
Кто сталкивался?
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение Sep 1 2017, 12:04
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 706
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



Давайте упрощу вопрос. rolleyes.gif
Вот здесь http://www.ecoscentric.com/ecospro/doc/htm...h-callback.html вижу, что в событие NETCONN_EVT_RCVPLUS с длиной 0 приходят разные события... и ошибки, открытие и закрытие соединений. Открытие я определяю, так как идёт обращение к коннекту сервера. А как определить закрытие соединения? Кто подскажет?
Go to the top of the page
 
+Quote Post
BioWolf2000
сообщение Sep 8 2017, 20:27
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 79
Регистрация: 11-01-05
Из: Беларусь, Минск
Пользователь №: 1 897



Цитата(SasaVitebsk @ Aug 30 2017, 17:14) *
У меня ещё, кроме того, если остановку проца в дебаге делаю, то ethernet отваливается.


У меня в дебаге на раз пятый отваливается. Кто-нибудь победил? Процессор STM32F767
Пример взял для Stm32 из freemodbus 1.9 evalution version с сайта https://www.embedded-solutions.at. С версией 1.5 все работало не стабильно, непонятные ошибки с PBUF в LWIP и так далее


--------------------
ex740104/103 БГУИР
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd September 2017 - 18:07
Рейтинг@Mail.ru


Страница сгенерированна за 0.01336 секунд с 7
ELECTRONIX ©2004-2016