|
|
  |
пока не понятные баги OpenCPU в M10 |
|
|
|
Sep 5 2011, 06:47
|
Частый гость
 
Группа: Участник
Сообщений: 105
Регистрация: 25-07-05
Пользователь №: 7 079

|
Цитата(V125 @ Sep 3 2011, 13:30)  Можно подробнее? Передача DTMF работает, а как распознать полученные с мобильника сигналы? Куда конкретно, в какой буфер а может переменную сваливаются полученные сигналы DTMF, вот чего я пока не найду. Ведь они же выводятся на динамик, а значит где то прячатся. В виртуальный UART, который предназначен для отсылки AT команд, модуль выдает стандартный +QTONEDET: <DTMF>, если данный функционал предварительно включен через АТ команду. Функцию для отсылки написали, а вот для приёма пока нет.
|
|
|
|
|
Sep 6 2011, 07:59
|
Частый гость
 
Группа: Участник
Сообщений: 105
Регистрация: 25-07-05
Пользователь №: 7 079

|
Цитата(V125 @ Sep 5 2011, 22:51)  kovz Вам была необходимость писать самому или я один несчастный шагаю по садово-огородному инвентарю? Не совсем понял вопрос... Крутится задача, в неё падает событие от модема, а дальше парсим что именно пришло. Если это DTMF, то делаем то, что нам нужно - хоть функцию вызываем, хоть что угодно. Если вы имеете ввиду, что по приходу DTMF, модем должен сам вызывать какую-то функцию, то штатно такой возможности нет.
|
|
|
|
|
Sep 8 2011, 19:20
|
Частый гость
 
Группа: Участник
Сообщений: 151
Регистрация: 24-06-11
Пользователь №: 65 866

|
Пытался запустить 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 такие?
Сообщение отредактировал V125 - Sep 8 2011, 19:39
|
|
|
|
|
Oct 31 2011, 10:05
|
Частый гость
 
Группа: Участник
Сообщений: 151
Регистрация: 24-06-11
Пользователь №: 65 866

|
Как правильно (под 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 вот модуль и принимал всякую охинею ( хотя на трубку приходят как положено текстом ). С трубки на модуль все отсылается- получается отлично, в текстовом режиме.
Сообщение отредактировал V125 - Oct 31 2011, 11:03
|
|
|
|
|
Oct 31 2011, 15:10
|

Частый гость
 
Группа: Свой
Сообщений: 188
Регистрация: 21-04-06
Из: Украина, Киев
Пользователь №: 16 335

|
Цитата(V125 @ Oct 31 2011, 13:05)  Как правильно (под 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!
Сообщение отредактировал CupuyC - Oct 31 2011, 15:52
|
|
|
|
|
Oct 31 2011, 15:50
|
Частый гость
 
Группа: Участник
Сообщений: 116
Регистрация: 22-10-11
Из: Россия
Пользователь №: 67 897

|
Цитата(V125 @ Oct 31 2011, 19:30)  Шлю текст английскими буквами, русскими и пытаться не стал. Если слать СМС с трубки (сразу не проверил) все отлично. Если с бесплатного сервиса ТЕЛЕ2 - приходит на модуль вереница циферок. Тоесть только PDU режим без вариантов. Скорее это юникод. Хотяб глазами в терминале попробуйте разобрать. Я сейчас ковыряюсь с квектелом с русскоязычными смс как раз с теле2 все нормально.
Сообщение отредактировал pau62 - Oct 31 2011, 15:53
|
|
|
|
|
Oct 31 2011, 16:38
|
Частый гость
 
Группа: Участник
Сообщений: 116
Регистрация: 22-10-11
Из: Россия
Пользователь №: 67 897

|
Цитата(V125 @ Oct 31 2011, 20:05)  Даже если это Юникод (Bin,Hex,Dec,Oct) что я буду с ним делать? Так ведь хрен редьки не слаще. Там выше пример абракадабры, но я столько не выпью. Возможно другой оператор внесет ясность, но я полдня безуспешно бился с ТЕЛЕ2 и ничего не вышло. О как. Ну если за полдня не вышло, значит не судьба.
|
|
|
|
|
Oct 31 2011, 17:47
|
Местный
  
Группа: Свой
Сообщений: 403
Регистрация: 29-04-11
Из: Украина
Пользователь №: 64 682

|
Цитата(pau62 @ Oct 31 2011, 19:50)  Скорее это юникод. Хотяб глазами в терминале попробуйте разобрать. Я сейчас ковыряюсь с квектелом с русскоязычными смс как раз с теле2 все нормально. Юникод, конечно. Первые 3 буквы не русские  а латинские: SMS Дальше не стал разбирать. Наверное, сайт рекламу рус. дописывает, а если в смс есть хоть один русский символ, то, естественно, все в юникоде. По поводу перекодировщика - это вообще не проблема, на этом форуме вопросы вроде обсуждались. Каждый символ кодируется двумя байтами. Если первый байт 00, то это латиница, и второй байт определяет ascii-код символа. Например 0053 - символ 0x53 - "S" Таким образом, если Вы будете использовать СМС для управления и только в латинице, то самый примитивный алго видится таковым: если первые символы в скобках "00", то обрабатываем как юникод. В этом случае сначала переводим в HEX по два символа (длина уменьшается в два раза. Затем смотри по парам: если первый байт пары 0, то второй пишем в выходную строку. Завершает строку нулем. Т.о. останутся только латинские символы в виде c-строки.
Сообщение отредактировал GeGeL - Oct 31 2011, 18:02
|
|
|
|
|
Nov 1 2011, 11:58
|

Частый гость
 
Группа: Свой
Сообщений: 188
Регистрация: 21-04-06
Из: Украина, Киев
Пользователь №: 16 335

|
Цитата(V125 @ Oct 31 2011, 21:11)  Разобрались всем миром. Я даже и не подумал, что это может быть Юникодом. Вроде и перекодировать не сложно но пока не хоца, пока другие задачи. Существует ли в ОЦПУ функция задержки наподобие delay_ms(); ? Нет такой функции. Для этих целей можно написать свою функцию используя из time.h функцию, которая считает время. Вставить ее в цикл и получим delay().
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|