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

 
 
> TCP/IP стек wIP в модулях Wavecom, Получение кода ошибки
Eddy_Og
сообщение Sep 13 2007, 09:14
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 36
Регистрация: 16-08-06
Пользователь №: 19 579



В новых модулях Wavecom, Q24PL, Q2686, используется TCP/IP стек wIP (а не eDLib, как в старых модулях Q2406B). При работе с этим новым стеком, с сокетами в режиме клиента, при возникновени ошибок можно получить тип ошибки. По описанию это делается функцией
wip_getOpts(socket,WIP_COPT_ERROR, err1,WIP_COPT_END);
Но при попытке ей воспользоваться в любом случае возвращается ошибка WIP_CERR_NOT_SUPPORTED, т.е. якобы WIP_COPT_ERROR - недопустимая опция. При том, что компиляция выполняется и эта опция в заголовочных файлах присутствует. Эта же функция, но возвращающая другие параметры, например, размер буфера записи
wip_getOpts(socket,WIP_COPT_SND_BUFSIZE,allbuf,WIP_COPT_NWRITE, freebuf,WIP_COPT_END);
успешно выполняется. В чем может быть дело? Код ошибки нужен, так как в зависимости от него будет приниматься решение, то-ли надо сразу переоткрывать сокет, то-ли сделать паузу, то-ли вообще все отвалилось и надо заново открывать GPRS-сессию.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Yuriy_Rus
сообщение Sep 14 2007, 08:13
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 68
Регистрация: 24-07-06
Пользователь №: 19 039



Здравствуйте...
К сожалению не могу помочь вам в решении вашей проблемы... 05.gif
Дело в том, что я тоже работаю с модемами Wavecom с TCP/IP стеком, только они давольно старые (1206В). Не подскажите ли вы как при установленном сокет соединении между 2 модемами его закрыть через комндный режим...
То есть я установил соединение, получил Ok_Info_WaitingForData, далле ввожу +++
То еть выхожу в командный режим...
А как теперь в командном режиме разорвать сокет-соединение или закрыть свой сокет (может есть какая-то команда)?
AT#LTCPSTOP - не помогает... help.gif
Go to the top of the page
 
+Quote Post
Eddy_Og
сообщение Sep 14 2007, 11:20
Сообщение #3


Участник
*

Группа: Новичок
Сообщений: 36
Регистрация: 16-08-06
Пользователь №: 19 579



Цитата
А как теперь в командном режиме разорвать сокет-соединение или закрыть свой сокет (может есть какая-то команда)?
AT#LTCPSTOP - не помогает... help.gif


Я использую внутренний софт, там есть команды закрытия сокета. В старом стеке (eDLib) для открытия используется команда ed_SocketTCPStart, для останова ed_SocketTCPStop. В новом (wIP) открытие выполняется функцией wip_TCPClientCreate, для закрытия есть две функции, wip_close и wip_shutdown. Значит, команда для закрытие сокета внешним приложением тоже должна быть.
Проблема может быть вызвана еще тем, что переход из режима передачи данных в командный выполняется не сразу, а то и вообще по каким-то причинам не выполняется. Во всяком случае при обычной модемной связи там точно есть какая-то пауза.
У меня сделано так. Вся реализация обмена по TCP делается внутренним софтом, зашиваемым в модуль, а внешний микроконтроллер только принимает и передает данные с помощью созданных для этой цели AT-команд.
Go to the top of the page
 
+Quote Post
Yuriy_Rus
сообщение Sep 17 2007, 04:56
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 68
Регистрация: 24-07-06
Пользователь №: 19 039



Цитата(Eddy_Og @ Sep 14 2007, 15:20) *
Значит, команда для закрытие сокета внешним приложением тоже должна быть.

Вот очень хотелось бы узнать какая АТ-команда выполняет данную операцию... wassat.gif
Вы, случайно, не знаете?

Цитата(Eddy_Og @ Sep 14 2007, 15:20) *
Проблема может быть вызвана еще тем, что переход из режима передачи данных в командный выполняется не сразу, а то и вообще по каким-то причинам не выполняется. Во всяком случае при обычной модемной связи там точно есть какая-то пауза.

Нет с этим проблем точно нет, после +++ ОК приходит где-то через 1-4 секунды (в чём причина такого разброса времени я пока не знаю, но точно могу скзать, что это как-то связано с объёмом переданной информации за сеанс)... sad.gif

Сообщение отредактировал Yuriy_Rus - Sep 17 2007, 04:57
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 13:02
Рейтинг@Mail.ru


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