Страница 1 из 1
Вопрос по АТ команде
Добавлено: Вт май 12, 2009 13:05:51
Arik
Помогите плиз! Хочу соединить тини 2313 и мобильник по усарту чтобы отправлять смс с микроконтроллера, и не получается

пишу команду
Код: Выделить всё
AT+CMGS=«+33146290800»<CR>Perezvoni mne. <ctrl>
И не отправляется! Я думаю что ошибка в <CR> и <ctrl>
но не знаю чем их надо заменить. Помогите пожалуйста. Спасибо![/code]
Re: Вопрос по АТ команде
Добавлено: Вт май 12, 2009 13:54:23
mr.Kirill
Ну насколько мне память не изменяет нужно сначала отправить
AT+CMGS="+33146290800"<CR>
телефон ответит знаком ">" и потом набрать текст сообщения + Ctrl+Z
Аналог CR - ASCII 0x0D
Аналог Ctrl + Z - ASCII 0x1A
PS. Сильно помидорами не кидать, писал на память. Давно уже не работал с этим.
Добавлено: Вт май 12, 2009 14:21:59
Arik
Спасибо!
А так пойдет?
AT+CMGS="+33146290800"0x0D
text_sms 0x1A
Добавлено: Вт май 12, 2009 17:51:30
mr.Kirill
Пробуй.
В крайнем случае - попробуй сначала через HyperTerminal
Добавлено: Ср май 13, 2009 14:21:49
Arik
Пробовал - не получается

Кто делал подскажите как?
Добавлено: Ср май 13, 2009 16:51:37
WildCat
а по моему там не голый текст в ASCII передается, а как то кодироваться должен. Тоже читал давно, но щяс не вспомню
Добавлено: Ср май 13, 2009 17:59:09
__Alexander
WildCat писал(а):а по моему там не голый текст в ASCII передается, а как то кодироваться должен. Тоже читал давно, но щяс не вспомню
Там голый ASCII.
К автору: у Вас вобще на просто AT команду отвечает ОК? Если да, то еще не факт, что ваш мобильник поддерживает весь перечень команд. Хотя ATD он обязан принять. Пробуйте позвонить в режиме VOICE.
И вобще, что за телефон? Имеется ли перечень команд?
PS: У некоторых команд есть обратная связь "?" или "=?", по ним тоже можно ориентироваться.
Добавлено: Пт май 15, 2009 01:30:16
Arik
Телефон самсунг команда ATD работает, отправка смс из программы для телефона проходит нормально, но отследить команды я не могу так как телефон подключается к программе по USB порту.
При подключении по блютузу к компу создаю в блютузе виртуальный СОМ порт и подключаюсь к телефону - команда ATD_номер проходит нормально, телефон звонит! А вот СМС видимо я не правильно задаю! Подкиньте примерчик как будет правильно? Спасибо!
Желательно рабочий код. Спасибо есче раз!
Добавлено: Пт май 15, 2009 07:35:16
asteroid7
Arik
Какая в телефоне включена кодировка? Что выдаёт на запрос?
А на эту что отвечает?
Как
mr.Kirill сказал делали?
Вместо +3 поставьте +7. Ответ от телефона > ждали?
Добавлено: Пт май 15, 2009 11:59:08
shtorm
возможно у вас не потдерживаеться текстовый режим отправки смс, проверить это можно командой AT+CMGF=?
если ответит +CMGF=(0,1) значит потдерживаеться оба режима (Text,PDU) ежели только 0 то увы..PDU если таки потдерживаеться текст то нужно его выставить по умолчанию AT+CMGF=1 (проверить текущее значение AT+CMGF?) и попробывать отправить с терминала.
Добавлено: Пт май 15, 2009 13:24:53
Arik
Ребята! Вобщем вот лог общения терминала с модемом. Я так понял, что модем не выходит из текстового режима и воспринимает команды как текст! Как быть? Что тогда делать? Может я не так завершаю?
Код: Выделить всё
AT E0 //инициализируем модем
OK
AT+CMGF? //проверяем режим передачи
+CMGF:0
OK
AT+CMGF=1 //проверяем возможен ли текстовый режим?
OK
AT+CMGF? //установился ли текстовый режим?
+CMGF:1
OK
AT+CMGS="+79243333333" 0x0D//пытаемся отправить смс
ERROR
AT+CMGS="+79243333333"//тогда так!
>
POZVONI MNE SROCHNO! 0x1A// тут должно всё вроде закончиться и отправиться
>
0x1A//не отправляется, приглашение для ввода текста остается :(
>
Добавлено: Пт май 15, 2009 13:45:37
shtorm
если в терминале то:
Код: Выделить всё
AT+CMGS="+79243333333"//тогда так!
>
POZVONI MNE SROCHNO! 0x1A
0x1A -писать ненужно, нужно нажать Ctrl+Z
Добавлено: Пт май 15, 2009 14:02:41
Krik99
Попробуй для начала так:
И если будеш отправлять через МК надо в конце команды писать \r \n , у мну без этого не работало.
Если после этого позвонит значит разбирайся с командами, а если нет - возможно плохое соеденение.
Добавлено: Пт май 15, 2009 14:10:39
Arik
shtorm писал(а):
0x1A -писать ненужно, нужно нажать Ctrl+Z
Да я понимаю что в терминале нужно нажать это клавосочетание, но я хочу передавать эти команды не с терминала, а с микроконтроллера! И пользуюсь программой Advanced Serial Port Monitor и в ней это сочетание клавиш (Ctrl+Z) удаляет введеный текст! Так где же изюминка спряталась? Как решить проблему? Какую команду отправляет терминал при нажатии этих клавиш?

Добавлено: Пт май 15, 2009 14:18:28
shtorm
Ctrl+Z -отправь 26 в Dec
после команды ATD -13 тоже в Dec
P.S. если хочешь увидить какая команда уходит в порт то включи на модеме эхо и без команды просто нажми нужную клавишу и увидишь его значение
Добавлено: Пт май 15, 2009 18:02:00
Krik99
Я использовал эту программу при отладке.
Добавлено: Пт май 15, 2009 18:42:15
__Alexander
Да я понимаю что в терминале нужно нажать это клавосочетание
Пошли <ctrl-Z>
Добавлено: Сб май 16, 2009 02:11:06
Arik
__Alexander писал(а):
Пошли <ctrl>
Пробовал - воспринимает как продолжение текста СМС - отвечает >
Может у кого текст исходника остался? покажите конец плиз!
Добавлено: Сб май 16, 2009 11:16:11
__Alexander
Arik писал(а):
Может у кого текст исходника остался? покажите конец плиз!
Можно попробывать еще так:
"textSMS\x1a\x0d"
Либо же подключи телефон к стандартной проге, отсылай из нее СМС и любым сниффером ком-порта посмотри обмен. Если, конечно, шнурок делает виртуальный ком.
А вобще, там тупо 0x1A
Добавлено: Сб май 16, 2009 13:14:11
Arik
Krik99 писал(а):Я использовал эту программу при отладке.
я ПРОБОВАЛ И ЭТУ ПРОГРАММУ - ТАЖЕ БЕДА! не выходит из режима >
Как сказать телефону что ввод текста смс окончен и дать ему команду 0х1А???
Спасибо!