реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> AT команды работы с SMS
Злодей
сообщение Jun 25 2009, 11:25
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 149
Регистрация: 29-04-08
Из: Петербург
Пользователь №: 37 142



Модуль, вероятно, будет sim300, сейчас работаю с мобилой. После теории и практики остались вопросы:

Каким образом сообщениям присваиваются номера? (AT+CMGR=<номер>)

Как сделать вот это: AT+CMGR="одно_новое_сообщение"? Пока думаю стелать AT+CMGL="REC UNREAD", выпарсить оттуда <номер>, и потом его уже AT+CMGR=<номер>. Может есть пути проще?

Можно сделать AT+CMGL="REC UNREAD" не снимая с мессаг флаг UNREAD? Ну или иным способом узнать номер непрочитанных мессаг, не снимая с них флаг?

Спасибо.
Go to the top of the page
 
+Quote Post
Палыч
сообщение Jun 25 2009, 12:53
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(Злодей @ Jun 25 2009, 14:25) *
Каким образом сообщениям присваиваются номера? (AT+CMGR=<номер>)
Чтобы не париться с этим вопросом, обычно, используют команду AT+CNMI. При приходе новой СМС модуль сам Вам раскажет куда он поместил эту СМСку.
Go to the top of the page
 
+Quote Post
Sanya_kv
сообщение Jun 25 2009, 13:21
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 185
Регистрация: 25-02-09
Из: Россия
Пользователь №: 45 369



Делаю так:
Контролирую асинхронные данные, попутно занимаюсь своими делами.
При получении "+CMTI:", в зависимости от того, чем занят, или незанят,
Читаю все (AT+CMGR=1...), допустим 1-е 10 сообщений, обрабатываю,
и в конце выполняю "AT+CMGDA=\"DEL READ\".
Go to the top of the page
 
+Quote Post
Злодей
сообщение Jun 25 2009, 14:50
Сообщение #4


Частый гость
**

Группа: Участник
Сообщений: 149
Регистрация: 29-04-08
Из: Петербург
Пользователь №: 37 142



Цитата(Палыч @ Jun 25 2009, 16:53) *
Чтобы не париться с этим вопросом, обычно, используют команду AT+CNMI. При приходе новой СМС модуль сам Вам раскажет куда он поместил эту СМСку.
Цитата(Sanya_kv @ Jun 25 2009, 17:21) *
Делаю так:
Контролирую асинхронные данные, попутно занимаюсь своими делами.
При получении "+CMTI:", в зависимости от того, чем занят, или незанят,
Читаю все (AT+CMGR=1...), допустим 1-е 10 сообщений, обрабатываю,
и в конце выполняю "AT+CMGDA=\"DEL READ\".
А при запуске проверять, не сбросился ли МК например во время обработки последнего сообщения?

Задумываясь предусмотреть хранение входящих ссобщений с настройками модуля я вообще впадаю в ступор...

Нумирация сообщений описана стандартом? В мобиле всего сотня мессаг, номера у них от 1 до 1700!
Go to the top of the page
 
+Quote Post
Sanya_kv
сообщение Jun 25 2009, 15:34
Сообщение #5


Частый гость
**

Группа: Свой
Сообщений: 185
Регистрация: 25-02-09
Из: Россия
Пользователь №: 45 369



Цитата(Злодей @ Jun 25 2009, 18:50) *
А при запуске проверять, не сбросился ли МК например во время обработки последнего сообщения?

Это уж как программу напишите.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 04:14
Рейтинг@Mail.ru


Страница сгенерированна за 0.01388 секунд с 7
ELECTRONIX ©2004-2016