Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: SIM300: TCP/IP и RING одновременно работают?
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > Сотовая связь и ее приложения
afad
Использую SIM300D. Такая задачка. Используя внутренний TCP/IP модема, как клиент подключаюсь к серверу. Периодически (раз в 5 секунд) отправляю данные:
at+cipsend
> данные crlf ctrl+Z
OK

Это все работает без проблем.

Но вот задумал я еще и контролировать входящие звонки. Нужно сделать так: звоню с мобильного на модем, он выдает в контроллер RING, контроллер сбрасывает звонок (командой ATH) и выполняет определенные действия.

Но вот незадача, это часто не проходит!
Возможны 3 варианта событий:
1. Все по алгоритму, как описано выше. Это происходит в 20-30% случаев.
2. "Звонок не может быть установлен, перезвоните позже". Вот это да. А я то думал, что GPRS и прямое соединение работают независимо, а оказывается модем занят. 50% случаев.
3. При приходе звонка модем вообще виснет. Приходится перезапускать его снятием питания. 20-30% случаев.

Возможно я что-то не так делаю. Или чего-то не понимаю??? 05.gif

Кто-то сталкивался с подобной проблемой? Где-то описаны такие ситуации? Может кто-то пояснить, что происходит, когда запущен внутренний TCP/IP и приходят звонки?
Dron_Gus
У нас тоже часто "абонент временно недоступен". Раза с 3-4 дозванивается. С чем связанно не знаю.
afad
Режим работы такой.
Отправляю в модем команду отсылки данных:
at+cipsend
Модем отвечает приглашением переслать данные:
>
Передаю:
данные crlf ctrl+Z
Через примерно секунду (или быстрее) модем отвечает:
SEND OK

Проблема в том, что если звоню на модем во время от передачи at+cipsend до прихода SEND OK, то RING не выдается и SEND OK тоже. Похоже модем подвисает (или просто не выдает сообщений SEND OK и RING???).
Однако если звонить на модем вне этой процедуры (at+cipsend ... SEND OK), то все нормально, приходит RING.

Может проблема только в выдаче данных через UART модема? Ну типа конфликтуют программа TCP/IP и программа отвечающая за выдачу RING. Или проблема глубже?

Можно ли запретить выдачу сообщения RING, а звонки контролировать по сигналу RI?
afad
А происходит с модемом следующее. При приеме входящего звонка модем переключается на работу со звонком. Т.е. весь обмен с TCP/IP-сервером временно приостанавливается. RING все же выдается, правда с некоторой задержкой. После подачи команды отбоя звонка ATH модем отвечает на нее ОК и возвращается в работу с сервером. При этом все полученные за время обработки RING данные не теряются, а сохраняются во внутреннем буфере модема и выдаются при восстановлении работы с сервером (т.е. после того как модем ответит ОК на команду АТН).

Но почему иногда модем оказывается занятым, когда на него звонят, это вопрос на который, видимо нет и не будет ответа.
Палыч
Цитата(afad @ Oct 10 2008, 11:39) *
Но почему иногда модем оказывается занятым, когда на него звонят, это вопрос на который, видимо нет и не будет ответа.
Скорее всего - по той же причине, по которой бывают "заняты" телефоны (мобильные и обычные проводные) по которым никто не ведет разговор - нет свободного канала.
edo
не думаю, тогда бы не было корреляции между gprs-сессией и занятостью номера - на практике же при использовании gprs вероятность не дозвониться заметно возрастает.
Палыч
Цитата(edo @ Oct 12 2008, 20:59) *
не думаю, тогда бы не было корреляции между gprs-сессией и занятостью номера
Ну, почему же... GPRS-сессия "отъедает" четыре канала.
Harbinger
Цитата(Палыч @ Oct 13 2008, 08:19) *
Ну, почему же... GPRS-сессия "отъедает" четыре канала.
Точнее, до 4 тайм-слотов. Хотя вряд ли дело всегда в этом... наблюдал такое: звонишь во время GPRS-сессии, никто трубку не берёт, иногда - не в зоне; а после закрытия сессии модём выплёвывает с десяток "RING"-ов; т.е. вызов таки был обнаружен на уровне сети, но "заблудился в недрах" ОС. Что-то аналогичное можно наблюдать на ПК - при значительной загрузке CPU сообщения от программ запаздывают.
Alechek
А может все-таки дело в том, что SIM300 все-таки
GPRS mobile station class B ?
И, соотствественно, не может обслуживать голосовой канал при передаче данных?
edo
блин, а слона-то я и не заметил wink.gif

да, промотрел быстро документацию - похоже большинство устройств class b
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.