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

 
 
> LWIP Как послать данные (tcp_write) по событию?
js_slider
сообщение Apr 29 2014, 09:49
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 29
Регистрация: 22-12-05
Пользователь №: 12 577



Здравствуйте.
Сделал на STM32F4 TCP/IP сервер c использованием lwip стека без OS.
Все работает замечательно по типу запрос-ответ. Ответ процедурой tcp_write реализован как и требуется из callback.
Но вот возникла необходимость посылать данные не по запросу, а по событию - по приходу строба на ножку.
Делал ссылку на pcb во время коннекта клиента, и отправлял данные вне callback...

Код
struct tcp_pcb *Globalpcb;
....
Globalpcb=pcb;
....

if(Globalpcb != NULL)
{
COUNT_TX=tcp_sndbuf(Globalpcb);
if(COUNT_TX > Len)
{
err = tcp_write(Globalpcb, Data, Len, 1);
tcp_output(Globalpcb);
}
}

все работает..., но не долго - периодически стек падает.

Вопрос как гармотно использовать tcp_write в данном случае чтобы не порушить стек? Кто сталкивался?

Сообщение отредактировал IgorKossak - Apr 29 2014, 11:34
Причина редактирования: [codebox] для длинного кода, [code] - для короткого!!!
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
scifi
сообщение Apr 29 2014, 10:44
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



Цитата(js_slider @ Apr 29 2014, 13:49) *
Но вот возникла необходимость посылать данные не по запросу, а по событию - по приходу строба на ножку.
Делал ссылку на pcb во время коннекта клиента, и отправлял данные вне callback...

Надеюсь, не из обработчика прерывания вызываете функции lwip. Потому что это отличный способ завалить программу.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- js_slider   LWIP Как послать данные (tcp_write) по событию?   Apr 29 2014, 09:49
|- - js_slider   Цитата(scifi @ Apr 29 2014, 13:44) Надеюс...   Apr 29 2014, 11:53
|- - scifi   Цитата(js_slider @ Apr 29 2014, 15:53) Из...   Apr 29 2014, 12:51
|- - kolobok0   Цитата(js_slider @ Apr 29 2014, 15:53) Из...   Apr 29 2014, 19:46
|- - KnightIgor   Цитата(kolobok0 @ Apr 29 2014, 20:46) поч...   Apr 30 2014, 10:14
- - js_slider   Благодарю всех откликнувшихся. Проблема решена. Де...   May 3 2014, 16:58
- - TriAlexAnt   Если можно, хочу задать вопрос в развитие данной т...   May 7 2014, 12:26
|- - scifi   Цитата(TriAlexAnt @ May 7 2014, 16:26) Хо...   May 7 2014, 13:50
|- - TriAlexAnt   Цитата(scifi @ May 7 2014, 16:50) HTTP не...   May 7 2014, 14:04
||- - scifi   Цитата(TriAlexAnt @ May 7 2014, 18:04) А ...   May 7 2014, 14:22
|- - jcxz   Цитата(scifi @ May 7 2014, 19:50) HTTP не...   May 7 2014, 15:26
- - doom13   Хочу к своему проекту прикрутить либу LWIP, пока ч...   May 19 2014, 08:09
|- - scifi   Цитата(doom13 @ May 19 2014, 16:19) Данна...   May 19 2014, 08:40
|- - doom13   Цитата(scifi @ May 19 2014, 15:50) Это си...   May 19 2014, 08:47
|- - scifi   Цитата(doom13 @ May 19 2014, 16:57) Посов...   May 19 2014, 08:54
|- - doom13   Цитата(scifi @ May 19 2014, 16:04) Можно ...   May 19 2014, 09:19
- - andrewlekar   ЦитатаДанная либа не позволяет послать фрагментиро...   May 20 2014, 00:39
|- - doom13   Цитата(andrewlekar @ May 20 2014, 07:49) ...   May 20 2014, 02:55
- - Golikov A.   проблема в том что макс пакет около 1500 байт, 143...   May 20 2014, 00:46
|- - doom13   Цитата(Golikov A. @ May 20 2014, 07:56) п...   May 20 2014, 03:34
- - Golikov A.   А! ну у вас ошибка терминологии) Если у вас е...   May 20 2014, 03:04
- - Golikov A.   странно это все для меня, ну если вы говорите.... ...   May 20 2014, 03:39
- - doom13   В либе LwIP часто встречается термин PCB, если мож...   Jun 3 2014, 09:18
|- - scifi   Цитата(doom13 @ Jun 3 2014, 17:28) В либе...   Jun 3 2014, 09:36
|- - doom13   Цитата(scifi @ Jun 3 2014, 16:46) Protoco...   Jun 3 2014, 09:40
- - doom13   Нужна помощь, не могу понять, чего не хватает, что...   Jun 4 2014, 04:41
- - Golikov A.   как минимум надо дергать еще функции LwIP которые ...   Jun 4 2014, 05:41
|- - doom13   Цитата(Golikov A. @ Jun 4 2014, 12:51) ка...   Jun 4 2014, 05:52
|- - scifi   Цитата(doom13 @ Jun 4 2014, 14:02) Почему...   Jun 4 2014, 06:11
|- - doom13   Цитата(scifi @ Jun 4 2014, 13:21) Что-то ...   Jun 4 2014, 06:16
|- - scifi   Цитата(doom13 @ Jun 4 2014, 14:26) Я пока...   Jun 4 2014, 06:47
|- - doom13   Цитата(scifi @ Jun 4 2014, 13:57) Отправк...   Jun 4 2014, 06:56
|- - scifi   Цитата(doom13 @ Jun 4 2014, 15:06) По иде...   Jun 4 2014, 07:02
|- - doom13   Цитата(scifi @ Jun 4 2014, 14:12) Мы нав...   Jun 4 2014, 07:14
|- - scifi   Цитата(doom13 @ Jun 4 2014, 15:24) Вы про...   Jun 4 2014, 07:21
- - doom13   Короче передача заработала, проблема была в том, ч...   Jun 4 2014, 08:13
|- - scifi   Цитата(doom13 @ Jun 4 2014, 16:23) Очеред...   Jun 4 2014, 10:44
|- - doom13   Цитата(scifi @ Jun 4 2014, 17:54) Что зна...   Jun 4 2014, 13:33
- - doom13   WireShark для некоторых пакетов, отправляемых LwIP...   Jun 5 2014, 02:35
- - doom13   Смотрю, что в ARP протоколе этих четырёх последних...   Jun 5 2014, 03:48
|- - jcxz   ARP-кадр у вас вроде верный. Не забыли, что пре пе...   Jun 5 2014, 07:05
|- - doom13   Цитата(jcxz @ Jun 5 2014, 14:15) ARP-кадр...   Jun 5 2014, 07:32
- - doom13   Приветствую. Разбирался с работой LwIP на плате с ...   Jun 10 2014, 04:47
|- - scifi   Цитата(doom13 @ Jun 10 2014, 12:57) Можно...   Jun 10 2014, 04:54
|- - doom13   Цитата(scifi @ Jun 10 2014, 12:04) Спаси...   Jun 10 2014, 07:28
- - doom13   Возник вопрос, получится ли использовать LwIP и AM...   Jun 11 2014, 03:11
|- - scifi   Цитата(doom13 @ Jun 11 2014, 11:21) Возни...   Jun 11 2014, 05:32
- - Golikov A.   LwIP можно утоптать в работу на аж на 2 КБайтах РА...   Jun 11 2014, 04:53
|- - doom13   Цитата(Golikov A. @ Jun 11 2014, 12:03) L...   Jun 11 2014, 05:54
|- - scifi   Цитата(doom13 @ Jun 11 2014, 14:04) Попыт...   Jun 11 2014, 05:57
|- - doom13   Цитата(scifi @ Jun 11 2014, 13:07) Для на...   Jun 11 2014, 05:59
|- - scifi   Цитата(scifi @ Jun 11 2014, 14:07) Для на...   Jun 11 2014, 06:26
||- - doom13   Цитата(scifi @ Jun 11 2014, 13:36) Википе...   Jun 11 2014, 06:42
|- - doom13   Цитата(scifi @ Jun 11 2014, 13:07) Для на...   Jun 11 2014, 09:25
|- - scifi   Цитата(doom13 @ Jun 11 2014, 17:35) Норма...   Jun 11 2014, 09:29
- - Golikov A.   по РАМ режут количество сокетов и их размеры для U...   Jun 11 2014, 06:17


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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 08:43
Рейтинг@Mail.ru


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