Передача SMS как работать в PDU формате

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Аватара пользователя
urry
Сверлит текстолит когтями
Сообщения: 1262
Зарегистрирован: Пн дек 08, 2008 10:58:48
Откуда: Винница
Контактная информация:

Сообщение urry »

Код: Выделить всё

usart_tx_text("07918350000005F131000B810859822945F20000A821D4E2940A9A36A7A069F2E80C3293DAE03099053983206AD29995CD6233\x1A\r\n");
Реклама
Аватара пользователя
Krik99
Потрогал лапой паяльник
Сообщения: 375
Зарегистрирован: Вс мар 04, 2007 13:14:25
Откуда: Украина
Контактная информация:

Сообщение Krik99 »

urry большое спасибо. Доберусь к отладочной плате с Тини2313 там надо поменять МК, так как после опытов был повреждён порт D :( и отпишусь если что.
Изображение
Реклама
Аватара пользователя
Danko
Сверлит текстолит когтями
Сообщения: 1287
Зарегистрирован: Пн окт 13, 2008 11:45:54
Откуда: РФ, Крым, г.Бахчисарай
Контактная информация:

Сообщение Danko »

Когда то сам ломал голову по аналогичной теме.
в архиве валялась ссылка.
http://imania.zp.ua/addinfo_pdu.php
Использовал прогу.
http://narod.yandex.ru/100.xhtml?ra-xp. ... PDUspy.zip
Аватара пользователя
Man
Встал на лапы
Сообщения: 83
Зарегистрирован: Чт ноя 13, 2008 19:22:03

Сообщение Man »

Сегодня добрался до терминалке начал попытки отправлять смс.
Пока получается отправлять через одну (какбы сказать на удачу) есть непоняки:
сначала посылаю получаю

Код: Выделить всё

OK или ERROR
получаю

Код: Выделить всё

AT+CMGS=18
получаю дальше отправляю

Код: Выделить всё

07919730071111F111000B819832039210F80000A804F4F29C0E
(непонятно бывает если сразу отправляешь отвечает ERROR,если с задержкой секунд 5 отправляется,также непонятно надо отправить символ сразу с 07919730071111F111000B819832039210F80000A804F4F29C0E или после как отправил.)
В SiMoCo телефон после всего отвечает

Код: Выделить всё

+CMGS: 31
а в терминалке хатя смс приходит.

К контролеру пока небуду пытатся подключать надо доконца разобратся , с дозвоном на все команды в терминале отвечает .
Вот так звонок делает SiMoCo.

Код: Выделить всё

Sent: ATD телефон;

OK
Sent: AT+CLCC

+CLCC: 1,0,2,0,0,"телефон",129

OK
Sent: AT+CLCC

+CLCC: 1,0,2,0,0,"телефон",129

OK
Sent: AT+CLCC

+CLCC: 1,0,2,0,0,"телефон",129

OK
Sent: AT+CLCC

+CLCC: 1,0,2,0,0,"телефон",129

OK
Sent: AT+CLCC

+CLCC: 1,0,2,0,0,"телефон",129

OK
Sent: AT+CLCC

+CLCC: 1,0,2,0,0,"телефон",129

OK
Sent: AT+CLCC

+CLCC: 1,0,3,0,0,"телефон",129

OK
Sent: AT+CHUP

OK
Может для звонка надо еше какието команды отправить точно незнаю.
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
urry
Сверлит текстолит когтями
Сообщения: 1262
Зарегистрирован: Пн дек 08, 2008 10:58:48
Откуда: Винница
Контактная информация:

Сообщение urry »

AT+CMGS=18

Почему 18 ?
Длина кода смс у Вас 0X36 - в десятичном виде 54 , отнимаем 3 =51, делим на 2 = 25.5

Т.е у Вас должно быть то ли
AT+CMGS=25
то ли 26 - как там с дробными, не помню.
Реклама
Аватара пользователя
Man
Встал на лапы
Сообщения: 83
Зарегистрирован: Чт ноя 13, 2008 19:22:03

Сообщение Man »

Вот из SIMoCo отправлена смс с текстом test.

Код: Выделить всё

Sent: AT+CMGS=18

Sent: 07919730071111F111000B819832039210F80000A804F4F29C0E
> 
+CMGS: 39

OK
Реклама
Аватара пользователя
urry
Сверлит текстолит когтями
Сообщения: 1262
Зарегистрирован: Пн дек 08, 2008 10:58:48
Откуда: Винница
Контактная информация:

Сообщение urry »

1. AT+CSCS="UCS2" ентер
2.AT+CMGS=25 ентер
Должна ответить >
3.07919730071111F111000B819832039210F80000A804F4F29C0E
Это контрZ, ентер
Аватара пользователя
Man
Встал на лапы
Сообщения: 83
Зарегистрирован: Чт ноя 13, 2008 19:22:03

Сообщение Man »

Смс стала отправляться стабильно спасибо за помощь.
Где брать номер смс центра? ато как-то через симко брать PDU текст неудобно чтоб мона было через PDU conversion составлять. Вот тут http://imania.zp.ua/addinfo_pdu.php описано что мона брать его из сим карты командой AT+CSCA ,пробал отвечает ERROR.
Аватара пользователя
urry
Сверлит текстолит когтями
Сообщения: 1262
Зарегистрирован: Пн дек 08, 2008 10:58:48
Откуда: Винница
Контактная информация:

Сообщение urry »

В инете, на сайте Вашего мобильного оператора. Там есть. Забиваете его в настройках телефона, где работа с смс. И забываете о этой проблеме.
Аватара пользователя
shtorm
Нашел транзистор. Понюхал.
Сообщения: 185
Зарегистрирован: Чт янв 22, 2009 14:03:25
Контактная информация:

Сообщение shtorm »

цитата со статьи:
Поле SCA:
12 байт максимум, может
быть меньше. Это зависит от
длины номера SMSC или
вообще может быть 00h –
тогда номер SMSC берется из
настроек телефона (Sim-
карты)
Аватара пользователя
Man
Встал на лапы
Сообщения: 83
Зарегистрирован: Чт ноя 13, 2008 19:22:03

Сообщение Man »

Нашел номер смс центра через прогу PDU(в приложении) вел тотже номер тотже текст смс , в этоге получилось 2 разных PDU текста длина из симко 25 байт из конвертера 28 байт:
из симко 07919730071111F111000B819832039210F80000A804F4F29C0E
из кон-ра 06919730071111F101000B919832039210F80008080074006500730074
при попытке отправить PDU код с конвертера приходит
>
+CMS ERROR: 38
Вложения
pdu.zip
PDU конвертер
(177.24 КБ) 497 скачиваний
TechMike
Прорезались зубы
Сообщения: 247
Зарегистрирован: Сб дек 15, 2007 23:00:54
Откуда: Moscow
Контактная информация:

Сообщение TechMike »

Man писал(а):Нашел номер смс центра через прогу PDU(в приложении) вел тотже номер тотже текст смс , в этоге получилось 2 разных PDU текста длина из симко 25 байт из конвертера 28 байт:
из симко 07919730071111F111000B819832039210F80000A804F4F29C0E
из кон-ра 06919730071111F101000B919832039210F80008080074006500730074
при попытке отправить PDU код с конвертера приходит
>
+CMS ERROR: 38
Програмка своя это хорошо, но есть "официальный" PDUSpy он все умеет и работает как надо, хоть и не удобен.

Аффтор достиг желаемой цели, может дать пару тройку ссылок для ознакомления и тема не будет так раздута?
Аватара пользователя
urry
Сверлит текстолит когтями
Сообщения: 1262
Зарегистрирован: Пн дек 08, 2008 10:58:48
Откуда: Винница
Контактная информация:

Сообщение urry »

Что же у Вас все так сложно...
У меня сегодня ДР, так вместо вотку пить - сижу ваяю прогу на вижуале.
Типа для удобства :)
Прикрепил файл - у меня нет "чистой" машины, чтобы оценить, на какие библиотеки ругается, попробуйте запустить и скажите, что хочет.
Вложения
sms_form.rar
(12.45 КБ) 413 скачиваний
Аватара пользователя
Man
Встал на лапы
Сообщения: 83
Зарегистрирован: Чт ноя 13, 2008 19:22:03

Сообщение Man »

Поздравляю с ДР ,программу попробовал работает неначто неругается с нее PDU текст попробовал смс отправилась токо куда незнаю :)
И как она работает если мы номер смс центра негде неуказываем?
Аватара пользователя
urry
Сверлит текстолит когтями
Сообщения: 1262
Зарегистрирован: Пн дек 08, 2008 10:58:48
Откуда: Винница
Контактная информация:

Сообщение urry »

номер для отправки в международном формате
код Украины 380 значит 12 цифр и полный момер мобилки
380961234567
для России 11 цифр .
Типа думайте :)
Спасибо за поздравление, ушел делать шашлык-машлык.
Да, номер центра - пишем 1 раз в настройках - и то, может и не надо - они могут скинуться автоматом при подключении к сети.
Аватара пользователя
Man
Встал на лапы
Сообщения: 83
Зарегистрирован: Чт ноя 13, 2008 19:22:03

Сообщение Man »

Все разобрался завтро буду связывать с контролером , если несложно можете добавить в своей програме в конце строки еше этот символ чтобы для терминалке ненадо было его копировать :))
Аватара пользователя
urry
Сверлит текстолит когтями
Сообщения: 1262
Зарегистрирован: Пн дек 08, 2008 10:58:48
Откуда: Винница
Контактная информация:

Сообщение urry »

ну а терминалка здесь при чем ? Задача проги - выработать строку - сработал датчик, например - и зашиваем весь код в флеш контроллера.
Вот именно в таком виде и нужно, как я написал.
ну не сделал копирование строки в буфер обмена -
Последний раз редактировалось urry Пт июл 03, 2009 08:30:46, всего редактировалось 1 раз.
Аватара пользователя
urry
Сверлит текстолит когтями
Сообщения: 1262
Зарегистрирован: Пн дек 08, 2008 10:58:48
Откуда: Винница
Контактная информация:

Сообщение urry »

Добавил копирование выходной строки в буфер обмена.
Нормально работает с кириллицей, но при наборе смс украинским языком заменять украинское i на английское.
Для желающих могу выложить исходники.
Вложения
sms_form.rar
(12.44 КБ) 401 скачивание
Аватара пользователя
Man
Встал на лапы
Сообщения: 83
Зарегистрирован: Чт ноя 13, 2008 19:22:03

Сообщение Man »

Сегодня добрался до железа попробовал отправлять команды , на терминале наблюдаю следуюшиее что все без пробелов и перехода отправляется одной строкой:

Код: Выделить всё

ATE0ATE0AT+CSCS="UCS2"AT+CMGS=220011000B919732039210F80008C1080074006500730074 
Использована стандартная библиотека по работе с uart из cvavr ,функция отправки:

Код: Выделить всё

void sms(){
   putsf("ATE0");
   delay_ms(10);
   putsf("ATE0");
   delay_ms(10);
   putsf("AT+CSCS=\"UCS2\"");
   delay_ms(10);
   putsf("AT+CMGS=22");
   delay_ms(10);
   putsf("0011000B919732039210F80008C1080074006500730074\x1A\r\n"); 
  // delay_ms(10);
   //putsf("0011000B919732039210F80008C1080074006500730074\x1A\r\n"); 
   }
Как я думаю в конце надо отправлять какой-то символ что передача окончена.
Аватара пользователя
urry
Сверлит текстолит когтями
Сообщения: 1262
Зарегистрирован: Пн дек 08, 2008 10:58:48
Откуда: Винница
Контактная информация:

Сообщение urry »

Код: Выделить всё

putsf("ATE0\r\n");
putsf("AT+CSCS=\"UCS2\"\r\n"); 
 putsf("AT+CMGS=22\r\n");
 
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»