kovz 0 5 сентября, 2011 Опубликовано 5 сентября, 2011 · Жалоба Можно подробнее? Передача DTMF работает, а как распознать полученные с мобильника сигналы? Куда конкретно, в какой буфер а может переменную сваливаются полученные сигналы DTMF, вот чего я пока не найду. Ведь они же выводятся на динамик, а значит где то прячатся. В виртуальный UART, который предназначен для отсылки AT команд, модуль выдает стандартный +QTONEDET: <DTMF>, если данный функционал предварительно включен через АТ команду. Функцию для отсылки написали, а вот для приёма пока нет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
V125 0 5 сентября, 2011 Опубликовано 5 сентября, 2011 (изменено) · Жалоба Значит ф-цию приема DTMF надобно писать самому. kovz Вам была необходимость писать самому или я один несчастный шагаю по садово-огородному инвентарю? Изменено 5 сентября, 2011 пользователем V125 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
kovz 0 6 сентября, 2011 Опубликовано 6 сентября, 2011 · Жалоба kovz Вам была необходимость писать самому или я один несчастный шагаю по садово-огородному инвентарю? Не совсем понял вопрос... Крутится задача, в неё падает событие от модема, а дальше парсим что именно пришло. Если это DTMF, то делаем то, что нам нужно - хоть функцию вызываем, хоть что угодно. Если вы имеете ввиду, что по приходу DTMF, модем должен сам вызывать какую-то функцию, то штатно такой возможности нет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
V125 0 6 сентября, 2011 Опубликовано 6 сентября, 2011 (изменено) · Жалоба Звоню с мобильного на модуль М12, он поднимает трубку. На мобильном нажимаю кн.1 - устанавливаем GPIO0 ==1; кн.2 - устанавливаем GPIO0 ==0; кн.3 - устанавливаем GPIO1 ==1; кн.4 - устанавливаем GPIO1 ==0; этакое дистанционное управление посредством DTMF сигналов. SMS управление ненадежно во времени, может запоздать. Изменено 6 сентября, 2011 пользователем V125 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
V125 0 8 сентября, 2011 Опубликовано 8 сентября, 2011 (изменено) · Жалоба Пытался запустить GPRS. С интернетом вроде соединяется, получаю IP. При попытке зайти на сервер получаю CallBack_getipbyname(contexid=0, result=0,error=110,num_entry=0) или CallBack_getipbyname(contexid=0, result=0,error=108,num_entry=0) Что за error=108,110 такие? Изменено 8 сентября, 2011 пользователем V125 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
V125 0 31 октября, 2011 Опубликовано 31 октября, 2011 (изменено) · Жалоба Как правильно (под O_CPU) прочитать СМС? что так Ql_SMSInitialize(); Ql_SetSMSFormat(QL_SMS_FMT_TXT); Ql_ReadSMS(sms_idx, &read_sms); что эдак AT+CMGF=1 AT+CMGR=1,0 или даже AT+CMGL="ALL" в результате нет текстового режима +CMGR: "REC READ","94C6475627C6564735B435","","2011/10/31 13:44:59+16",208,64,0,8,"+79043490003",145,77 0053004D00530020043E0442043F044004300432043B0435043D043E0020 Тогда сам себе отвечаю Полдня вчера просидел ломая голову. Подвела жадность. СМС посылал бесплатно с сайта ТЕЛЕ2 вот модуль и принимал всякую охинею ( хотя на трубку приходят как положено текстом ). С трубки на модуль все отсылается- получается отлично, в текстовом режиме. Изменено 31 октября, 2011 пользователем V125 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SiriuS 0 31 октября, 2011 Опубликовано 31 октября, 2011 (изменено) · Жалоба Как правильно (под O_CPU) прочитать СМС? что так Ql_SMSInitialize(); Ql_SetSMSFormat(QL_SMS_FMT_TXT); Ql_ReadSMS(sms_idx, &read_sms); что эдак AT+CMGF=1 AT+CMGR=1,0 или даже AT+CMGL="ALL" в результате нет текстового режима +CMGR: "REC READ","94C6475627C6564735B435","","2011/10/31 13:44:59+16",208,64,0,8,"+79043490003",145,77 0053004D00530020043E0442043F044004300432043B0435043D043E0020 Тогда сам себе отвечаю Полдня вчера просидел ломая голову. Подвела жадность. СМС посылал бесплатно с сайта ТЕЛЕ2 вот модуль и принимал всякую охинею ( хотя на трубку приходят как положено текстом ). С трубки на модуль все отсылается- получается отлично, в текстовом режиме. Верно ли я Вас понял: Вы не можете прочитать СМС отправленную с сайта на модуль М10 в текстовом режиме? Читая СМС что через ОЦПУ, что АТ командами результат одинаков. 1. Какая версия используемой прошивки? Попробую на ней, поскольку у меня на последней все нормально работает. 2. Вы шлете СМС кирилицей или англ. буквами? На М12 тоже читает СМС: +CMGR: "REC READ","777","","2011/06/06 16:05:39+08" Hello! *** Besplatnye D-JINGLy! Zvonite 465! Изменено 31 октября, 2011 пользователем CupuyC Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
V125 0 31 октября, 2011 Опубликовано 31 октября, 2011 (изменено) · Жалоба Шлю текст английскими буквами, русскими и пытаться не стал. Если слать СМС с трубки (сразу не проверил) все отлично. Если с бесплатного сервиса ТЕЛЕ2 - приходит на модуль вереница циферок. Тоесть только PDU режим без вариантов. Попозжа проверю Мегафонов сервис. Модуль М12. Версия M12BR01A01N32_OCPU + моя писанина. Если подарите новую версию прошивки OCPU, буду признателен и неслыханно счастлив. Видимо сервис передает в PDU режиме. Обычная трубка его преобразовывает в текст, а модуль не может. Изменено 31 октября, 2011 пользователем V125 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Flashboy_87 0 31 октября, 2011 Опубликовано 31 октября, 2011 (изменено) · Жалоба Запросите M12BR02A02N32_OCPU и OpenCPU_SDK_V3.3 Изменено 31 октября, 2011 пользователем Aleksandr_q Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
pau62 0 31 октября, 2011 Опубликовано 31 октября, 2011 (изменено) · Жалоба Шлю текст английскими буквами, русскими и пытаться не стал. Если слать СМС с трубки (сразу не проверил) все отлично. Если с бесплатного сервиса ТЕЛЕ2 - приходит на модуль вереница циферок. Тоесть только PDU режим без вариантов. Скорее это юникод. Хотяб глазами в терминале попробуйте разобрать. Я сейчас ковыряюсь с квектелом с русскоязычными смс как раз с теле2 все нормально. Изменено 31 октября, 2011 пользователем pau62 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
V125 0 31 октября, 2011 Опубликовано 31 октября, 2011 (изменено) · Жалоба Даже если это Юникод (Bin,Hex,Dec,Oct) что я буду с ним делать? Так ведь хрен редьки не слаще. Там выше пример абракадабры, но я столько не выпью. Возможно другой оператор внесет ясность, но я полдня безуспешно бился с ТЕЛЕ2 и ничего не вышло. Изменено 31 октября, 2011 пользователем V125 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
pau62 0 31 октября, 2011 Опубликовано 31 октября, 2011 · Жалоба Даже если это Юникод (Bin,Hex,Dec,Oct) что я буду с ним делать? Так ведь хрен редьки не слаще. Там выше пример абракадабры, но я столько не выпью. Возможно другой оператор внесет ясность, но я полдня безуспешно бился с ТЕЛЕ2 и ничего не вышло. О как. Ну если за полдня не вышло, значит не судьба. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gegel 0 31 октября, 2011 Опубликовано 31 октября, 2011 (изменено) · Жалоба Скорее это юникод. Хотяб глазами в терминале попробуйте разобрать. Я сейчас ковыряюсь с квектелом с русскоязычными смс как раз с теле2 все нормально. Юникод, конечно. Первые 3 буквы не русские :) а латинские: SMS Дальше не стал разбирать. Наверное, сайт рекламу рус. дописывает, а если в смс есть хоть один русский символ, то, естественно, все в юникоде. По поводу перекодировщика - это вообще не проблема, на этом форуме вопросы вроде обсуждались. Каждый символ кодируется двумя байтами. Если первый байт 00, то это латиница, и второй байт определяет ascii-код символа. Например 0053 - символ 0x53 - "S" Таким образом, если Вы будете использовать СМС для управления и только в латинице, то самый примитивный алго видится таковым: если первые символы в скобках "00", то обрабатываем как юникод. В этом случае сначала переводим в HEX по два символа (длина уменьшается в два раза. Затем смотри по парам: если первый байт пары 0, то второй пишем в выходную строку. Завершает строку нулем. Т.о. останутся только латинские символы в виде c-строки. Изменено 31 октября, 2011 пользователем GeGeL Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
V125 0 31 октября, 2011 Опубликовано 31 октября, 2011 (изменено) · Жалоба Разобрались всем миром. Я даже и не подумал, что это может быть Юникодом. Вроде и перекодировать не сложно но пока не хоца, пока другие задачи. Существует ли в ОЦПУ функция задержки наподобие delay_ms(); ? Изменено 31 октября, 2011 пользователем V125 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SiriuS 0 1 ноября, 2011 Опубликовано 1 ноября, 2011 · Жалоба Разобрались всем миром. Я даже и не подумал, что это может быть Юникодом. Вроде и перекодировать не сложно но пока не хоца, пока другие задачи. Существует ли в ОЦПУ функция задержки наподобие delay_ms(); ? Нет такой функции. Для этих целей можно написать свою функцию используя из time.h функцию, которая считает время. Вставить ее в цикл и получим delay(). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться