Перейти к содержанию
    

LwIP: TCP сервер

Есть TCP сервер, который принимает данные и отправляет в другую часть приложения. а принимаемые из другой части приложения отправляет клиенту.

Отправка накопленных данных осуществляется в tcp_poll колбеке. К сожалению колбэк вызывается слишком редко (500мс) и уменьшит этот параметр не удается.

 

Пытался реализовать это с помощью NETCONN API

 

conn = netconn_new(NETCONN_TCP);
err = netconn_bind(conn, NULL, 7);
netconn_listen(conn);
while (1) 
{
    accept_err = netconn_accept(conn, &newconn);
    if (accept_err == ERR_OK)    // дождался соединения
    {
          netconn_recv(newconn, &buf);  // принимаю данные
    }
}

 

в другом месте (отдельной задачей ОС) пытаюсь отправить данные netconn_write(newconn, data, len, NETCONN_COPY); но ничего не получаю

 

как заставить такую контструкцию работать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Отправка накопленных данных осуществляется в tcp_poll колбеке. К сожалению колбэк вызывается слишком редко (500мс) и уменьшит этот параметр не удается.

Что мешает вызывать этот колбек самостоятельно почаще? Для этого не нужно влазить внутрь lwip.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

все в итоге заработало на NETCONN API, зря тему создал, поторопился. была банальная ошибка изза спешки

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...