Страница 2 из 4
Добавлено: Ср июл 01, 2009 15:24:16
urry
Код: Выделить всё
usart_tx_text("07918350000005F131000B810859822945F20000A821D4E2940A9A36A7A069F2E80C3293DAE03099053983206AD29995CD6233\x1A\r\n");
Добавлено: Ср июл 01, 2009 15:40:49
Krik99
urry большое спасибо. Доберусь к отладочной плате с Тини2313 там надо поменять МК, так как после опытов был повреждён порт D

и отпишусь если что.
Добавлено: Ср июл 01, 2009 16:42:24
Danko
Когда то сам ломал голову по аналогичной теме.
в архиве валялась ссылка.
http://imania.zp.ua/addinfo_pdu.php
Использовал прогу.
http://narod.yandex.ru/100.xhtml?ra-xp. ... PDUspy.zip
Добавлено: Чт июл 02, 2009 09:16:00
Man
Сегодня добрался до терминалке начал попытки отправлять смс.
Пока получается отправлять через одну (какбы сказать на удачу) есть непоняки:
сначала посылаю
получаю
получаю
получаю
дальше отправляю
Код: Выделить всё
07919730071111F111000B819832039210F80000A804F4F29C0E
(непонятно бывает если сразу отправляешь отвечает ERROR,если с задержкой секунд 5 отправляется,также непонятно надо отправить символ
сразу с 07919730071111F111000B819832039210F80000A804F4F29C0E или после как отправил.)
В SiMoCo телефон после всего отвечает
а в терминалке
хатя смс приходит.
К контролеру пока небуду пытатся подключать надо доконца разобратся , с дозвоном на все команды в терминале отвечает
.
Вот так звонок делает 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
Может для звонка надо еше какието команды отправить точно незнаю.
Добавлено: Чт июл 02, 2009 09:33:14
urry
AT+CMGS=18
Почему 18 ?
Длина кода смс у Вас 0X36 - в десятичном виде 54 , отнимаем 3 =51, делим на 2 = 25.5
Т.е у Вас должно быть то ли
AT+CMGS=25
то ли 26 - как там с дробными, не помню.
Добавлено: Чт июл 02, 2009 10:00:48
Man
Вот из SIMoCo отправлена смс с текстом
test.
Код: Выделить всё
Sent: AT+CMGS=18
Sent: 07919730071111F111000B819832039210F80000A804F4F29C0E
>
+CMGS: 39
OK
Добавлено: Чт июл 02, 2009 10:14:11
urry
1. AT+CSCS="UCS2" ентер
2.AT+CMGS=25 ентер
Должна ответить >
3.07919730071111F111000B819832039210F80000A804F4F29C0E
Это контрZ, ентер
Добавлено: Чт июл 02, 2009 11:00:57
Man
Смс стала отправляться стабильно спасибо за помощь.
Где брать номер смс центра? ато как-то через симко брать PDU текст неудобно чтоб мона было через PDU conversion составлять. Вот тут
http://imania.zp.ua/addinfo_pdu.php описано что мона брать его из сим карты командой AT+CSCA ,пробал отвечает ERROR.
Добавлено: Чт июл 02, 2009 11:09:59
urry
В инете, на сайте Вашего мобильного оператора. Там есть. Забиваете его в настройках телефона, где работа с смс. И забываете о этой проблеме.
Добавлено: Чт июл 02, 2009 11:18:51
shtorm
цитата со статьи:
Поле SCA:
12 байт максимум, может
быть меньше. Это зависит от
длины номера SMSC или
вообще может быть 00h –
тогда номер SMSC берется из
настроек телефона (Sim-
карты)
Добавлено: Чт июл 02, 2009 12:06:20
Man
Нашел номер смс центра через прогу PDU(в приложении) вел тотже номер тотже текст смс , в этоге получилось 2 разных PDU текста длина из симко 25 байт из конвертера 28 байт:
из симко 07919730071111F111000B819832039210F80000A804F4F29C0E
из кон-ра 06919730071111F101000B919832039210F80008080074006500730074
при попытке отправить PDU код с конвертера приходит
>
+CMS ERROR: 38
Добавлено: Чт июл 02, 2009 14:51:07
TechMike
Man писал(а):Нашел номер смс центра через прогу PDU(в приложении) вел тотже номер тотже текст смс , в этоге получилось 2 разных PDU текста длина из симко 25 байт из конвертера 28 байт:
из симко 07919730071111F111000B819832039210F80000A804F4F29C0E
из кон-ра 06919730071111F101000B919832039210F80008080074006500730074
при попытке отправить PDU код с конвертера приходит
>
+CMS ERROR: 38
Програмка своя это хорошо, но есть "официальный" PDUSpy он все умеет и работает как надо, хоть и не удобен.
Аффтор достиг желаемой цели, может дать пару тройку ссылок для ознакомления и тема не будет так раздута?
Добавлено: Чт июл 02, 2009 15:04:07
urry
Что же у Вас все так сложно...
У меня сегодня ДР, так вместо вотку пить - сижу ваяю прогу на вижуале.
Типа для удобства
Прикрепил файл - у меня нет "чистой" машины, чтобы оценить, на какие библиотеки ругается, попробуйте запустить и скажите, что хочет.
Добавлено: Чт июл 02, 2009 15:32:38
Man
Поздравляю с ДР ,программу попробовал работает неначто неругается с нее PDU текст попробовал смс отправилась токо куда незнаю

И как она работает если мы номер смс центра негде неуказываем?
Добавлено: Чт июл 02, 2009 15:44:45
urry
номер для отправки в международном формате
код Украины 380 значит 12 цифр и полный момер мобилки
380961234567
для России 11 цифр .
Типа думайте

Спасибо за поздравление, ушел делать шашлык-машлык.
Да, номер центра - пишем 1 раз в настройках - и то, может и не надо - они могут скинуться автоматом при подключении к сети.
Добавлено: Чт июл 02, 2009 16:05:14
Man
Все разобрался завтро буду связывать с контролером , если несложно можете добавить в своей програме в конце строки еше этот символ
чтобы для терминалке ненадо было его копировать

Добавлено: Чт июл 02, 2009 16:33:10
urry
ну а терминалка здесь при чем ? Задача проги - выработать строку - сработал датчик, например - и зашиваем весь код в флеш контроллера.
Вот именно в таком виде и нужно, как я написал.
ну не сделал копирование строки в буфер обмена -
Добавлено: Чт июл 02, 2009 23:54:18
urry
Добавил копирование выходной строки в буфер обмена.
Нормально работает с кириллицей, но при наборе смс украинским языком заменять украинское i на английское.
Для желающих могу выложить исходники.
Добавлено: Сб июл 04, 2009 10:38:25
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");
}
Как я думаю в конце надо отправлять какой-то символ что передача окончена.
Добавлено: Сб июл 04, 2009 10:56:09
urry
Код: Выделить всё
putsf("ATE0\r\n");
putsf("AT+CSCS=\"UCS2\"\r\n");
putsf("AT+CMGS=22\r\n");