Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: SIM300D CSD определение типа входящего вызова
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > Сотовая связь и ее приложения
gvidon2009
Помогите определить тип вызова в модеме SIM300 (voice, data).
HARMHARM
Разрешите +CLIP, +CRING. Всё это есть в документации.
DreamTwister
Команда AT+CLCC, параметр <mode>.
gvidon2009
HARMHARM, спасибо нашёл команду AT+CRC=1, после чего входящие вызовы стали помечаться +CRING: VOICE или REL ASYNC

Цитата(DreamTwister @ Sep 15 2009, 15:56) *
Команда AT+CLCC, параметр <mode>.


DreamTwister, а зачем нужна CLCC? Ведь взведение AT+CRC=1 даёт различать входящие.
DreamTwister
AT+CLCC дает возможность узнать еще много чего интересного о вызове, как входящем, так и исходящем. Я, к примеру, при помощи этой команды узнаю на какой стадии у меня исходящий вызов. Дозвониля ли я, или линия занята.

Я, в любом случае, ее применяю и предложил как альтернативный вариант.
Harbinger
Если вызовов более чем 1, она практически незаменима. smile.gif
Pat
Можно тут спрошу

Почему команда "ATD>SM1;\r\n" в эхе не возвращает \n
Палыч
Цитата(Pat @ Sep 16 2009, 23:58) *
Почему команда "ATD>SM1;\r\n" в эхе не возвращает \n

Имхо, в эхе возвращается символ '\n'... Наверное, он "теряется" среди символов ответа на эту команду: команда кончается передачей символа '\r'; после чего модуль Вам отвечает; в ответе используются всякие-разные символы (в том числе и '\n'), и символ '\n' среди них "теряется" (Вы его принимаете за один из символов ответа на команду).

P.S. Попробуйте передать команды "ATD>SM1;\r\n" и "ATD>SM1;\r" и сравните результат...
Pat
Цитата(Палыч @ Sep 17 2009, 16:40) *
P.S. Попробуйте передать команды "ATD>SM1;\r\n" и "ATD>SM1;\r" и сравните результат...


Если так "ATD>SM1;\r\n" то в конце 2 раза возвращает \r\r
Если так "ATD>SM1;\r" то в конце 1 раз возвращает \r

Но вызов идет по любому

Не хочет возвращать перевод строки.
Пришлось программу несколько править правда обошлось малостью.
HARMHARM
У SIM300 есть мелкие отличия в отправлямых ответах на команды, я пока писал обработчики нашел штуки 3. Неприятно, но пережить можно.
dac
Цитата(HARMHARM @ Sep 18 2009, 11:22) *
У SIM300 есть мелкие отличия в отправлямых ответах на команды, я пока писал обработчики нашел штуки 3. Неприятно, но пережить можно.

может имеет смысл выложить их здесь, чтоб все на грабли не наступали, заодно и CADiLO попинает китайцев, чтоб исправили либо прошивку, либо документацию
Палыч
Цитата(Pat @ Sep 18 2009, 01:53) *
Если так "ATD>SM1;\r\n" то в конце 2 раза возвращает \r\r
Зачем Вы передаёте с командой символ '\n'? Команды заканчиваются байтом <CR> ('\r' в языке Си).

P.S. В некоторых реализациях процедур ввода-вывода символ '\n' заменяется парой "\r\n". Это, конечно, если Вы передаёте команду, например, с персоналки. В терминалах, обычно, есть галка "Заменять символ ... парой символов...". В исполнительной среде языка Си замена символа определяется тем, как Вы открыли файл (поток данных или поток символов).
Pat
Цитата(Палыч @ Sep 18 2009, 08:38) *
Зачем Вы передаёте с командой символ '\n'? Команды заканчиваются байтом <CR> ('\r' в языке Си).


Вообще то не задумывался, просто сделал по примеру увиденному где то.
Я терминалкой отслеживаю что там с модуля летит, ну и более удобочитаемо получается.
HARMHARM
Цитата(dac @ Sep 18 2009, 09:00) *
заодно и CADiLO попинает китайцев, чтоб исправили либо прошивку

Ага, и у всех сразу перестанут работать устройства...
Цитата
либо документацию

Там вообще такие мелочи как \r или \n не отражены... А такие места я уже и сам не вспомню.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.