|
OPENAT GPRS, connect |
|
|
|
Jul 2 2009, 06:59
|
Участник

Группа: Участник
Сообщений: 58
Регистрация: 22-06-09
Пользователь №: 50 523

|
Помогите разобраться с подключением к серверу через GPRS с помощию OPENAT приложения. Вобщем я с помощью АТ команд(WIP) настроил один модем для прослушивания определённого порта. Это будет сервер. Дальше попытался сделать элементарное приложение в OPENAT на основе WIP tcp_client. Просто поменял там адрес сервера на то что у меня и GPRS_APN, login, pass. Только чтоб он постучался к серверу. Залил приложение. Запускаю AT+WOPEN=1. Вываливаются строки: [GPRS]: initialized. [GSM]: initialized. [UART1]: initialized. [UART2]: initialized. []: initialized. И всё что дальше? На сервере ничего не происходит, он не определяет никакого коннекта к нему. Я пока только начинаю разбираться, наверно что-то простое упустил?
|
|
|
|
|
Jul 2 2009, 08:43
|
Участник

Группа: Участник
Сообщений: 36
Регистрация: 7-04-09
Из: Москва
Пользователь №: 47 296

|
Это отработала функция wip_netInitOpts. Далее надо wip_bearerOpen();wip_bearerSetOpts() по вкусу;wip_bearerStart(). Только не забудь проверить готовность сим карты.
upd : невнимательно прочитал нельзя менять GPRS_APN, логин и пароль иначе ты не выйдешь в инет через жпрс и не сможешь приконнектится
Сообщение отредактировал bronepoezd - Jul 2 2009, 08:53
|
|
|
|
|
Jul 2 2009, 09:09
|
Участник

Группа: Участник
Сообщений: 58
Регистрация: 22-06-09
Пользователь №: 50 523

|
Это нужно в OPENAT прописывать? Или как из терминала уже запускать при этом приложении? Мне бы хотелось чтоб при включении питания модем автоматически стучался в порт на сервере.
Как не менять APN пароль и логин там же по умолчанию: #define GPRS_APN "websfr" #define GPRS_USER "a2b" #define GPRS_PASSWORD "access" #define GPRS_PINCODE "0000"
А мне надо "internet.mts.ru", "mts", "mts". Или и с этим каракулями запустится?
|
|
|
|
|
Jul 2 2009, 09:18
|
Участник

Группа: Участник
Сообщений: 36
Регистрация: 7-04-09
Из: Москва
Пользователь №: 47 296

|
да, надо именно #define GPRS_APN "internet.mts.ru" и т.д. А как ты обращаешься к "серверу"? IP на каждой сессии меняется) Если ты хочешь сразу после включения стучаться-поймай сначала событие об полной инициализации сим карты
Сообщение отредактировал bronepoezd - Jul 2 2009, 09:19
|
|
|
|
|
Jul 2 2009, 09:25
|
Участник

Группа: Участник
Сообщений: 58
Регистрация: 22-06-09
Пользователь №: 50 523

|
Ну сервер я не трогаю пока, запустил там "AT+WIPBR=4,6,0" и "AT+WIPCREATE=3,1,2000,5,8" и всё, узнал IP "AT+WIPBR=3,6,15" и ждет слушает. А в OPENAT сделал приложение на основе WIP client изменил там IP адрес на полученный от сервера и порт поставил, APN поменял. Запустил наивно думал что приконектится, а нет. Для чего же это приложение пример, что оно делает кроме вывода этих строк?
Сообщение отредактировал ArtemTom - Jul 2 2009, 09:26
|
|
|
|
|
Jul 2 2009, 09:29
|
Участник

Группа: Участник
Сообщений: 36
Регистрация: 7-04-09
Из: Москва
Пользователь №: 47 296

|
Да блин, я не понял, ты что , вместо internet.mts.ru адрес сервера в GPRS_APN поставил?=) Сокету присвается ненулевое значение?
|
|
|
|
|
Jul 2 2009, 09:32
|
Участник

Группа: Участник
Сообщений: 58
Регистрация: 22-06-09
Пользователь №: 50 523

|
Нет конечно, там при создании на основе примера создается 7 файлов в cfg_gprs.c я исправил #define GPRS_APN "websfr" #define GPRS_USER "a2b" #define GPRS_PASSWORD "access" #define GPRS_PINCODE "0000"
А в entry_point.c #define PEER_STRADDR "192.168.1.5" #define PEER_PORT 2000 #define RCV_BUFFER_SIZE 10240 На нужные мне.
|
|
|
|
|
Jul 2 2009, 09:42
|
Участник

Группа: Участник
Сообщений: 36
Регистрация: 7-04-09
Из: Москва
Пользователь №: 47 296

|
Ну тут уже судить тяжело попробуй получить для начала данные с какого -нить ya.ru . Поставь трейсы в процедурах чтоб понять где отваливается). Лучше всего на мой взгяд написать свое приложение на основе примеров, как хоть понять можно как и что рабоает).
|
|
|
|
|
Jul 2 2009, 09:55
|
Участник

Группа: Участник
Сообщений: 58
Регистрация: 22-06-09
Пользователь №: 50 523

|
А если тариф такой что у модемов только локальная сеть и они инет не видят? Ну что никто не делал на основе этого примера WIP tcp_client. Он должен только эти строки чтоль выводить или конектится сразу? Может после них нужно набрать что? Лучше всего на мой взгяд написать свое приложение на основе примеров. Да, но для этого надо наверно понять что в примерах, я пока начинаю разбираться и фразы Только не забудь проверить готовность сим карты поймай сначала событие об полной инициализации сим карты Мне не совсем понятно как реализовывать. Может кто делал что подобное дайте мне примеры, чтоб быстрей пошло.
|
|
|
|
|
Jul 2 2009, 10:03
|
Участник

Группа: Участник
Сообщений: 36
Регистрация: 7-04-09
Из: Москва
Пользователь №: 47 296

|
>Мне не совсем понятно как реализовывать.
adl_tmrHandler_t Check_SIM() { adl_simState_e SIM_event; SIM_event = adl_simGetState (); TRACE((1,"SIM state: %d",SIM_event)); switch (SIM_event) { case ADL_SIM_STATE_INIT: TRACE((1,"Service init state (PIN state not known yet)")); break; case ADL_SIM_STATE_REMOVED: TRACE((1,"SIM removed")); break; case ADL_SIM_STATE_INSERTED: TRACE((1,"SIM inserted (PIN state not known yet)")); break; case ADL_SIM_STATE_FULL_INIT: TRACE((1,"SIM Full Init done")); //sim готова к работе break; case ADL_SIM_STATE_PIN_ERROR: TRACE((1,"SIM error state")); break; case ADL_SIM_STATE_PIN_OK: TRACE((1,"PIN code OK, waiting for full init")); break; case ADL_SIM_STATE_PIN_WAIT: TRACE((1,"SIM inserted, PIN code not entered yet")); break; case ADL_SIM_STATE_PUK_WAIT: TRACE((1,"PIN is locked, PUK code is required")); break; case ADL_SIM_STATE_PUK_ERROR: TRACE((1,"Wrong PUK input")); break; case ADL_SIM_STATE_FAILURE: TRACE((1,"PUK is locked, SIM is unavailable")); break; }; }
void adl_main ( adl_InitType_e InitType ) { My_tmr = (adl_tmr_t *)adl_tmrSubscribe ( TRUE, 10, ADL_TMR_TYPE_100MS, (adl_tmrHandler_t)Check_SIM ); }
|
|
|
|
|
Jul 2 2009, 10:29
|
Участник

Группа: Участник
Сообщений: 58
Регистрация: 22-06-09
Пользователь №: 50 523

|
bronepoezd Спасибо будем пробовать. А может есть исходничком уже что-то работающее? А то куда вставлять и сработало или нет непонятно.
И ещё вопрос чем отличаются файлы при компиляции? gcc_Client.dwl gcc_Client.wpb.dwl У меня в некоторых случаях заливается только один в некоторых другой.
Сообщение отредактировал ArtemTom - Jul 2 2009, 10:15
|
|
|
|
|
Jul 2 2009, 10:36
|
Участник

Группа: Участник
Сообщений: 36
Регистрация: 7-04-09
Из: Москва
Пользователь №: 47 296

|
Сжатый /несжатый я лью обычно несжатый) Мой исходник на 1500 строк точно будет еще менее понятен) http://www.compeljournal.ru/enews/2007/19/9 почитай вот это и встраивай в adl' евский пример hello world=) я так разбирался)
|
|
|
|
|
Jul 2 2009, 10:45
|
Участник

Группа: Участник
Сообщений: 58
Регистрация: 22-06-09
Пользователь №: 50 523

|
Спасибо будем разбиратся. А не бывало что при заливке сразу еррор и пишется передача прервана удаленной системой? У тебя весь код одним файлом? И при какой скорости заливаешь?
Да и самое главное забыл, можно как тестить без заливки в модем? Что каждые 5 мин не перезаливать. Target monitoring tool вроде для этого?
Сообщение отредактировал ArtemTom - Jul 2 2009, 10:51
|
|
|
|
|
Jul 2 2009, 11:12
|
Участник

Группа: Участник
Сообщений: 36
Регистрация: 7-04-09
Из: Москва
Пользователь №: 47 296

|
1) Да бывает=) 2) все одним файлом 3) я так и не смог настроить эмулятор) так что забил и тестю на модеме) тока надо поаккуратнее)я долго его реанимировал после fault 004=)
|
|
|
|
|
Jul 2 2009, 12:06
|
Участник

Группа: Участник
Сообщений: 58
Регистрация: 22-06-09
Пользователь №: 50 523

|
bronepoezdТут есть вроде как работающие приложение, там и проверка как у тебя sim карты идет, и по коду вроде всё должно работать, а когда заливаю в модем он мне выдает все те же 5 строк и всё. Как там дальше что запускать, по коду он мне должен строки выдавать по процессом ну или хотябы ошибки какие, а тут эти 5 строк и всё. Посмотри, может скажешь что. Вобщем эти строки после WOPEN=1 выскакивают и что дальше? Автоматом все должно быть или мне что делать?
Прикрепленные файлы
src.rar ( 19.34 килобайт )
Кол-во скачиваний: 34
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|