Диалог происходит по средством AT команд. Мы шлём модулю нужную команду или запрос, а он её выполняет и отвечает. Самая простая команда AT, на которую модуль тут же ответит OK, если модуль подключен и исправен. Самые популярные команды рассмотрим далее.
Почти все команды имеют 3 режима:
A/ — повтор предыдущей команды
В статье, идёт речь о GSM модуле SIM900 (B09). Напоминаю, т.к. есть ещё и другие разновидности этого модуля и формат команд с ними может немного отличаться.
По умолчанию модуль настроен 9600 8N1, 9600 – скорость, 8 – бит в посылки, N – нет контроля чётности, 1- стоп бит.
Команда | Ответ | Описание |
AT+IPR? | +IPR: 0 OK | Скорость порта: 0 – автоматически 1200 2400 4800 9600 19200 38400 57600 115200 |
AT+ICF? | +ICF: 3,3 OK | Настройки передачи. Первый параметр: Бит в посылке/чётность/стоп бит 1 – 8/0/2 2 – 8/1/1 3 – 8/0/1 4 – 7/0/2 5 – 7/1/1 6 – 7/0/1 Второй параметр – чётность: 0 – нечётный 1 – чётный 3 – нет |
AT+IFC? | +IFC: 0,0 OK | Контроль передачи данных Первый параметр – терминалом от модуля Второй параметр – модулем от терминала 0 – нет контроля 1 – программный 2 – аппаратный |
Команда | Ответ | Описание |
AT+GCAP | +GCAP:+FCLASS,+CGSM OK | Возможности модуля |
AT+GMM | SIMCOM_SIM900 OK | Идентификатор модуля |
AT+GMR | Revision:1137B09SIM900M64_ST OK | Ревизия |
AT+GSN | 01322600XXXXXXX OK | IMEI |
Команда | Ответ | Описание |
AT+COPS? | +COPS: 0,0,»MTS-RUS» OK | Информация об операторе |
AT+COPS=? | +COPS: (2,»MTS RUS»,»»,»25001″),(1,»MOTIV»,»MOTIV»,»25035″),(1,»Utel»,»Utel»,»25039″),,(0,1,4),(0,1,2) OK | Доступные операторы |
AT+CPAS | +CPAS: 0 OK | Информация о состояние модуля 0 – готов к работе 2 – неизвестно 3 – входящий звонок 4 – голосовое соединение |
AT+CREG? | +CREG: 0,1 OK | Тип регистрации сети Первый параметр: 0 – нет кода регистрации сети 1 – есть код регистрации сети 2 – есть код регистрации сети + доп параметры Второй параметр: 0 – не зарегистрирован, поиска сети нет 1 – зарегистрирован, домашняя сеть 2 – не зарегистрирован, идёт поиск новой сети 3 – регистрация отклонена 4 – неизвестно 5 – роуминг |
AT+CSQ | +CSQ: 17,0 OK | Уровень сигнала: 0 -115 дБл и меньше 1 -112 дБл 2-30 -110. .-54 дБл 31 -52 дБл и сильнее 99 – нет сигнала. |
AT+CCLK? | +CCLK: «00/01/01,04:21:27+00» OK | Текущая дата и время телефона. |
AT+CBC | +CBC: 0,95,4134 OK | Монитор напряжения питания модуля Первый параметр: 0 – не заряжается 1 – заряжается 2 – зарядка окончена Второй параметр: 1-100 % — уровень заряда батареи Третий параметр: Напряжение питание модуля (VBAT), мВ |
AT+CADC? | +CADC: 1,7 OK | Значение АЦП (до 2,8В) |
Команда | Ответ | Описание |
AT+CLIP=1 | OK | АОН 1 – вкл / 0 – выкл |
AT+GSMBUSY=0 | OK | Запрет входящих звонков 0 – разрешены 1 – запрещены |
ATS0=0 | OK | Автоответ 0 – ручной 1-более – автомотический после заданного количества звонков |
Команда | Ответ | Описание |
AT+CMGF=1 | OK | Текстовый режим 1 – включить 0 – выключить см. примечание |
AT+CSCS= «GSM» | OK | Кодировка текстового режима Доступны следующие кодировки: IRA, GSM, UCS2, HEX, PCCP, PCDN, 8859-1 см. примечание |
AT+CSCB=0 | OK | Приём специальных сообщений 0 – разрешен (по умолчанию) 1 – запрещен |
Команда | Ответ | Описание |
ATE0 | OK | ЭХО 1 – вкл (по умолчанию) / 0 – выкл |
ATV1 | OK | Формат ответа модуля 0 – только ответ 1 – полный ответ с ЭХО (по умолчанию) |
AT+CMEE=0 | OK | Информация об ошибках 0 – отключён (по умолчанию) 1 – код ошибки 2 – описание ошибки |
AT+CCLK=»13/09/25,13:25:33+05″ | OK | Установка часов «yy/mm/dd,hh:mm:ss+zz» Где: год/месяц/дата, часы:минуты:секунды +часовой пояс |
AT+CPIN=XXXX | Ввод PIN кода | |
ATZ0 | Сброс настроек до по умолчанию (не до заводских) 0 или 1 – выбор профиля | |
AT&F | Сброс настроек до заводских | |
AT&W | OK | Сохранение настроек для текущего профиля Параметр 0 или 1 — выбор профиля Параметр указывать сразу за командой (AT&W0) |
AT+CPOWD=1 | NORMAL POWER DOWN | Выключение модуля 0 – срочное 1 – нормальное |
AT+CFUN=1,1 | Энергосберегающий режим и перезагрузка Первый параметр: 0 – минимальный функционал 1 – нормальный режим (по умолчанию) 2 – выключения цепей приёма и передачи сигнала Второй параметр: 0 – выполнить без перезагрузки 1 – перезагрузить (доступно только в нормальном режиме, т. е. параметры = 1,1) |
Команда | Ответ | Описание |
ATD+790XXXXXXXX; | OK | Позвонить на номер +790XXXXXXXX; |
NO DIALTONE BUSY NO CARRIER NO ANSWER | Нет сигнала Если вызов отклонён Повесили трубку Нет ответа | |
ATDL | OK | Позвонить по последнему исходящему номеру |
ATA | OK | Ответить на звонок |
ATH0 | OK | Повесить трубку/ разорвать соединение |
RING | Входящий звонок | |
AT+CLIP=1 | OK | см. настройки |
RING +CLIP: «+790XXXXXXXX»,145,»»,,»»,0 | Входящий звонок с включенным АОН Где: Первый параметр – номер телефона входящего звонка 2 – тип входящего номера 129 – не определен 161 – национальный 145 – интернациональный 177 – сетевой, специальный |
Команда | Ответ | Описание |
AT+CMGS=»+790XXXXXXXX» >Test sms text | > +CMGS: 15 OK | Отправка СМС. Указываем номер получателя в кавычках и отправляем модулю с символом переноса строки (13 в ASCII). После приглашения «>» вводим текст сообщения. Для отправки в конце сообщения отправляем символ SUB (26 в ASCII) или ESC (27) для отмены. |
AT+CMGF=1 AT+CSCS= «GSM» | Режим и кодировка. см. настройки и примечание | |
+CMTI: «SM»,4 | Уведомление о приходе СМС. Второй параметр номер пришедшего СМС. | |
AT+CMGL=»REC UNREAD» | +CMGL: 4,»REC UNREAD»,»+790XXXXXXXX»,»»,»13/09/24,23:02:22+24″ Test2. OK | Чтение групп СМС. Всего 5 групп: REC UNREAD – входящие непрочитанные REC READ – входящие прочитанные STO UNSENT – Пользовательские непрочитанные STO SENT – пользовательские прочитанные ALL – прочитать все сообщения |
AT+CMGR=2 | +CMGR: «REC READ»,»+790XXXXXXXX»,»»,»13/09/21,11:57:46+24″ Test sms text OK | Чтение SMS сообщений. Запрос: Первый параметр – номер сообщения. Второй параметр (необязателен): 0 – обычный режим (по умолчанию) 1 – не изменять статус сообщения Первый параметр – группа сообщений, см предыдущий пункт. Второй параметр – номер отправителя 3 – дата отправки Далее следует текс сообщения. |
AT+CMGDA=»DEL SENT» | OK | Удаление групп СМС: DEL READ — прочитанные DEL UNREAD — не прочитанные DEL SENT — отправленные DEL UNSENT — не отправленные DEL INBOX — полученные DEL ALL — всех сообщения |
AT+CMGD=4 | OK | Удаление СМС. Первый параметр – номер сообщения Второй параметр: 0 – удаление указанного сообщения (по умолчанию) 1 – удаление прочитанных сообщений 2 – удаление прочитанных и отправленных сообщений 3 – удаление прочитанных, отправленных и не отправленных сообщений 4 – удаление всех сообщений |
AT+CSCA? | +CSCA: «+79126313431»,145 OK | Возвращает номер сервис центра отправки сообщений. |
Команда | Ответ | Описание |
AT+VTD=3 | OK | Длительность тоновых сигналов для AT+VTD. Значение параметра 1..255 |
AT+VTS=»1,4,#,A,6,7,0″ | OK | Отправить последовательность тоновых сигналов (до 20). Длительность задается командой AT+VTS. |
AT+CLDTMF=7, «1,4,#,A,6,7,0» | OK | Проиграть на модуле (через аудио выход) тоновые сигналы. Первый параметр — длительность 1-100 Второй параметр – строка тоновых сигналов, до 20. |
AT+VTD и AT+VTS команды, как мне кажется, работаю не корректно. VTD – должна устанавливать длительность тонового сигнала, а не паузу между ними, в то время когда тоновый сигнал в AT+VTS проигрывается быстро.
Команда | Ответ | Описание |
AT+CUSD=1,»#100#» | OK +CUSD: 0,»Balance:240,68r «, | USSD запрос Первый параметр – режим обработки операции: 0 – выполнить запрос, ответ проигнорировать 1 – выполнить запрос, вернуть ответ 2 – отменить запрос Второй параметр – запрос в кавычках. |
ATD#100#; | OK +CUSD: 0,»Balance:240,68r «, | Упрощенный USSD запрос (работает только при GSM кодировке) |
Отмечу, что есть 2 варианта USSD запроса: начиная с * и начиная с #. В первом варианте ответ приходит на русском языке, во втором в латинице, если оператор такой запрос поддерживает и не ответит так же, как и в первом случае.
Режим отображения такой же, как и для СМС.
От текстового режима (PDU или текстовый) и кодировки модуля зависит формат ввода номеров, USSD запросов, входящих и исходящих СМС.
Самый геморройный и универсальный вариант – это PDU режим, т.к. в нём можно без проблем отправлять и принимать любые текстовые данные, но из-за его «геморойности» рассматривать его не буду.
Самый простой вариант – GSM кодировка. В нём номера вводятся привычным цифровым методом, исходящие и исходящие сообщения, как СМС, так и USSD в латинице отображаются, как им и полагается. С кириллицей дела обстоят посложнее, модуль входящие сообщения с ней отображает в UNICOD, точнее в HEX значениях UNICOD. С исходящими сообщениями дела обстоят сложнее!
Второй вариант, посложнее – UCS2 кодировка. Входящие и исходящие сообщения, USSD запросы, номера телефонов в запросах – всё пишется в UNICOD. Упрощенные USSD запросы не работают.
Другие варианты мной плохо опробованы, но у них тоже всё идёт в своей кодировке.
Кодировка | Запрос | Ответ |
PDU | AT+CMGR=2 | +CMGR: 1,»»,38 07919720780110F0000B919710325476F800003190121 175644215D4F29C0E9AB7E72E50985DC6B7CAF8B24B5E07 OK |
AT+CMGR=3 | +CMGR: 1,»»,59 07919720780110F0000B919710325476F800083190122 185134228005400650073007400200073006D00730020 0032002E0020042204350441044200200441043C0441 OK | |
GSM | AT+CMGR=2 | +CMGR: «REC READ»,»+79012345678″,»»,»13/09/21,11:57:46+24″ Test sms text OK |
AT+CMGR=3 | AT+CMGR=3 +CMGR: «REC READ»,»+79012345678″,»»,»13/09/21,12:58:31+24″ 005400650073007400200073006D007300200032 002E0020042204350441044200200441043C0441 OK | |
AT+CUSD=1,»#100#» | OK +CUSD: 0,»Balance:240,68r «, | |
UCS2 | AT+CMGR=2 | +CMGR: «REC READ»,»002B0037003900300031 0032003300340035003600370038″,»»,»13/09/21,11:57:46+24″ 005400650073007400200073006D0073002E0020 0061006C00650078002D006500780065002E00720075 OK |
AT+CMGR=3 | +CMGR: «REC READ»,»002B00370039003000310032 003300340035003600370038″,»»,»13/09/21,12:58:31+24″ 005400650073007400200073006D007300200032 002E0020042204350441044200200441043C0441 OK | |
AT+CUSD=1,»00230031 003000300023″ | OK +CUSD: 0,»00420061006C0061006E00630065003A0032 |
Текст сообщений выданного на запрос «AT+CMGR=3» — «Test sms 2. Тест смс»
В юникоде символы кодируются в шестнадцатиричке записанной в текстовом виде, при этом первые 127 символов просто переводятся в HEX, а вот к кириллице добавляется 350h.
Пример: 1 – 0031, G – 0047, z — 007A, Ы — 042B, я — 044F
Программка для кодировки и раскодировки UNICODE – скачать.
В статье привёл значительную часть основных команд GSM модуля SIM900 из огромного списка поддерживаемых им. Для большинства задач все приведенные команды не будут нужны, а хватит только малой их части. В одной из следующих статьей рассмотрю, как пользоваться GPRS AT-командами и пример его использования на примере простенькой домашней сигнализации. Так же бы было интересно достать и посмотреть прошивку «All-in-One».
В предыдущей статье мы говорили о модуле SIM800l. В этой статье я хотел бы рассказать об управлении этим модулем. Как было сказано ранее — модуль управляется через UART интерфейс посредством AT команд. Конечно, все AT команды я перечислять не буду — для этого существует даташит, в котором все они подробно расписаны. Даташит вы можете скачать в конце статьи. Остановимся на самых распространенных и необходимых AT командах управления модулем SIM800l. Но прежде, я вкратце расскажу о том как подключить модуль. Итак, с питанием понятно — напряжение 4В и ток не менее 2А. Также понадобится переходник USB-UART, например такой. Подключаем переходник в свободный USB порт компьютера устанавливаем драйвера, далее подключаем RX вывод переходника к TX выводу модуля, а TX вывод модуля к RX выводу переходника. Вот и все. Запускаем любую терминальную программу (Hyper Terminal или PuTTy), и вносим настройки. Собственно по настройкам:
После подключения шлем модулю первую команду — AT и жмем Ентер. Если все правильно модуль должен ответить — OK. Теперь несколько команд для принудительной настройки UART порта модуля:
AT+IPR=115200 — эта команда настраивает скорость порта на 115200. Можно поставить любое значение: 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200. Если поставить 0, то это означает автоопределение скорости (настройка по умолчанию). На команду модуль отвечает OK, или ERROR — если что-то не так. Чтобы узнать текущую установленную скорость даем команду AT+IPR?
AT+ICF=3,3 — эта команда служит для установки четности порта модуля. Имеет два параметра. Первый — отвечает за кол-во бит в посылке/четность/стопбит. Вот все варианты: 1 – 8/0/2, 2 – 8/1/1, 3 – 8/0/1, 4 – 7/0/2, 5 – 7/1/1, 6 – 7/0/1. Второй параметр — четность. Варианты: 0 – нечётный, 1 – чётный, 3 – нет. Т.е. команда AT+ICF=3,3 означает 8/0/1 (8 бит посылка, четность нет, стоп бит — 1). Для проверки текущей четности вводим AT+ICF?.
AT+IFC=0,0 — эта команда для установки контроля передачи данных. Первый параметр – терминалом от модуля, второй параметр – модулем от терминала. Возможные варианты: 0 – нет контроля, 1 – программный, 2 – аппаратный. По умолчанию контроль выключен.
Далее команды о состоянии модуля. Думаю принцип понятен и их я приведу уже в виде таблиц для удобства.
Команда | Ответ | Описание |
AT+GCAP | +GCAP:+FCLASS,+CGSM OK | Возможности модуля |
AT+GMM | SIMCOM_SIM900 OK | Идентификатор модуля |
AT+GMR | Revision:1137B09SIM900M64_ST OK | Ревизия |
AT+GSN | 01322600XXXXXXX OK | IMEI |
AT+COPS? | +COPS: 0,0,»MTS-RUS» OK | Информация об операторе |
AT+COPS=? | +COPS: (2,»MTS RUS»,»»,»25001″),(1,»MOTIV»,»MOTIV»,»25035″),(1,»Utel»,»Utel»,»25039″),,(0,1,4),(0,1,2) OK | Доступные операторы |
AT+CPAS | +CPAS: 0 OK | Информация о состояние модуля 0 – готов к работе 2 – неизвестно 3 – входящий звонок 4 – голосовое соединение |
AT+CREG? | +CREG: 0,1 OK | Тип регистрации сети Первый параметр: 0 – нет кода регистрации сети 1 – есть код регистрации сети 2 – есть код регистрации сети + доп параметры Второй параметр: 0 – не зарегистрирован, поиска сети нет 1 – зарегистрирован, домашняя сеть 2 – не зарегистрирован, идёт поиск новой сети 3 – регистрация отклонена 4 – неизвестно 5 – роуминг |
AT+CSQ | +CSQ: 17,0 OK | Уровень сигнала: 0 -115 дБл и меньше 1 -112 дБл 2-30 -110. .-54 дБл 31 -52 дБл и сильнее 99 – нет сигнала. |
AT+CCLK? | +CCLK: «00/01/01,04:21:27+00» OK | Текущая дата и время телефона. |
AT+CBC | +CBC: 0,95,4134 OK | Монитор напряжения питания модуля Первый параметр: 0 – не заряжается 1 – заряжается 2 – зарядка окончена Второй параметр: 1-100 % — уровень заряда батареи Третий параметр: Напряжение питание модуля (VBAT), мВ |
AT+CADC? | +CADC: 1,7 OK | Значение АЦП (до 2,8В) |
Команды настроек вызовов
Команда | Ответ | Описание |
AT+CLIP=1 | OK | АОН 1 – вкл / 0 – выкл |
AT+GSMBUSY=0 | OK | Запрет входящих звонков 0 – разрешены 1 – запрещены |
ATS0=0 | OK | Автоответ 0 – ручной 1-более – автомотический после заданного количества звонков |
Команды настроек СМС
Команда | Ответ | Описание |
AT+CMGF=1 | OK | Текстовый режим 1 – включить 0 – выключить см. примечание |
AT+CSCS= «GSM» | OK | Кодировка текстового режима Доступны следующие кодировки: IRA, GSM, UCS2, HEX, PCCP, PCDN, 8859-1 см. примечание |
AT+CSCB=0 | OK | Приём специальных сообщений 0 – разрешен (по умолчанию) 1 – запрещен |
Прочие команды настроек модуля
Команда | Ответ | Описание |
ATE0 | OK | ЭХО 1 – вкл (по умолчанию) / 0 – выкл |
ATV1 | OK | Формат ответа модуля 0 – только ответ 1 – полный ответ с ЭХО (по умолчанию) |
AT+CMEE=0 | OK | Информация об ошибках 0 – отключён (по умолчанию) 1 – код ошибки 2 – описание ошибки |
AT+CCLK=»13/09/25,13:25:33+05″ | OK | Установка часов «yy/mm/dd,hh:mm:ss+zz» Где: год/месяц/дата, часы:минуты:секунды +часовой пояс |
AT+CPIN=XXXX | Ввод PIN кода | |
ATZ0 | Сброс настроек до значений по умолчанию (не до заводских) 0 или 1 – выбор профиля | |
AT&F | Сброс настроек до заводских | |
AT&W | OK | Сохранение настроек для текущего профиля Параметр 0 или 1 — выбор профиля Параметр указывать сразу за командой (AT&W0) |
AT+CPOWD=1 | NORMAL POWER DOWN | Выключение модуля 0 – срочное 1 – нормальное |
AT+CFUN=1,1 | Энергосберегающий режим и перезагрузка Первый параметр: 0 – минимальный функционал 1 – нормальный режим (по умолчанию) 2 – выключения цепей приёма и передачи сигнала Второй параметр: 0 – выполнить без перезагрузки 1 – перезагрузить (доступно только в нормальном режиме, т. е. параметры = 1,1) |
Команды для осуществления телефонных звонков
Команда | Ответ | Описание |
ATD+380XXXXXXXX; | OK | Позвонить на номер +380XXXXXXXX; |
NO DIALTONE BUSY NO CARRIER NO ANSWER | Нет сигнала Если вызов отклонён Повесили трубку Нет ответа | |
ATDL | OK | Позвонить по последнему исходящему номеру |
ATA | OK | Ответить на звонок |
ATH0 | OK | Повесить трубку/ разорвать соединение |
RING | Входящий звонок | |
AT+CLIP=1 | OK | см. настройки |
RING +CLIP: «+380XXXXXXXX»,145,»»,,»»,0 | Входящий звонок с включенным АОН Где: Первый параметр – номер телефона входящего звонка 2 – тип входящего номера 129 – не определен 161 – национальный 145 – интернациональный 177 – сетевой, специальный |
Команды для отправки СМС сообщений
Команда | Ответ | Описание |
AT+CMGS= «+380XXXXXXXX» | > +CMGS: 15 OK | Отправка СМС. Указываем номер получателя в кавычках и отправляем модулю с символом переноса строки (13 в ASCII). После приглашения «>» вводим текст сообщения. Для отправки в конце сообщения отправляем символ SUB (26 в ASCII) или ESC (27) для отмены. |
AT+CMGF=1 AT+CSCS= «GSM» | Режим и кодировка. см. настройки и примечание | |
+CMTI: «SM»,4 | Уведомление о приходе СМС. Второй параметр номер пришедшего СМС. | |
AT+CMGL=»REC UNREAD» | +CMGL: 4,»REC UNREAD»,»+380XXXXXXXX»,» «,»13/09/24,23:02:22+24» | Чтение групп СМС. Всего 5 групп: REC UNREAD – входящие непрочитанные REC READ – входящие прочитанные STO UNSENT – Пользовательские непрочитанные STO SENT – пользовательские прочитанные ALL – прочитать все сообщения |
AT+CMGR=2 | +CMGR: «REC READ»,»+380XXXXXXXX»,» «,»13/09/21,11:57:46+24» | Чтение SMS сообщений. Запрос: Первый параметр – номер сообщения. Второй параметр (необязателен): 0 – обычный режим (по умолчанию) 1 – не изменять статус сообщения Ответ: Первый параметр – группа сообщений, см предыдущий пункт. Второй параметр – номер отправителя 3 – дата отправки Далее следует текс сообщения. |
AT+CMGDA=»DEL SENT» | OK | Удаление групп СМС: DEL READ — прочитанные DEL UNREAD — не прочитанные DEL SENT — отправленные DEL UNSENT — не отправленные DEL INBOX — полученные DEL ALL — всех сообщения |
AT+CMGD=4 | OK | Удаление СМС. Первый параметр – номер сообщения Второй параметр: 0 – удаление указанного сообщения (по умолчанию) 1 – удаление прочитанных сообщений 2 – удаление прочитанных и отправленных сообщений 3 – удаление прочитанных, отправленных и не отправленных сообщений 4 – удаление всех сообщений |
AT+CSCA? | +CSCA: «+380991234567»,145 OK | Возвращает номер сервис центра отправки сообщений. |
Тоновый набор (DTMF)
Тоновые сигналы: 0-9,#,*,A-D
Команда | Ответ | Описание |
AT+VTD=3 | OK | Длительность тоновых сигналов для AT+VTD. Значение параметра 1..255 |
AT+VTS=»1,4,#,A,6,7,0″ | OK | Отправить последовательность тоновых сигналов (до 20). Длительность задается командой AT+VTS. |
AT+CLDTMF=7, «1,4,#,A,6,7,0» | OK | Проиграть на модуле (через аудио выход) тоновые сигналы. Первый параметр — длительность 1-100 Второй параметр – строка тоновых сигналов, до 20. |
USSD
Команды приведены для текстового режима и в GSM кодировке.
Команда | Ответ | Описание |
AT+CUSD=1,»#100#» | OK +CUSD: 0,»Balance:240,68r «, | USSD запрос Первый параметр – режим обработки операции: 0 – выполнить запрос, ответ проигнорировать 1 – выполнить запрос, вернуть ответ 2 – отменить запрос Второй параметр – запрос в кавычках. |
ATD#100#; | OK +CUSD: 0,»Balance:280 UAH», | Упрощенный USSD запрос (работает только при GSM кодировке) |
GPRS
Настройка и установка GPRS соединения:
AT+SAPBR=3,1,«CONTYPE»,«GPRS»
AT+SAPBR=3,1,«APN»,«internet.beeline.ru»
AT+SAPBR=3,1,«USER»,«beeline»
AT+SAPBR=3,1,«PWD»,«beeline»
AT+SAPBR=1,1 — установка GPRS связи
AT+SAPBR=2,1 — полученный IP адрес
+SAPBR: 1,1,«10.229.9.115»
AT+SAPBR=4,1 — текущие настройки соединения
AT+SAPBR=0,1 — разорвать GPRS соединение
Модуль намного дешевле, чем SIM900, а подключение довольно простое. В этом посте мы увидим, как подключиться к Arduino, чтобы позвонить и отправить SMS.
Мобильный адаптер достаточен для питания GSM-модуля A6. Вывод Vcc GSM должен быть соединен с выводом PWR_KEY. Это действует как включение чипа. Триггер HIGH на выводе PWR_KEY во время запуска.
На задней стороне модуля используется действующая SIM-карта. Предусмотренный слот для SIM-карты предназначен для карты Micro SIM. Если у вас есть Nano SIM-карта, вам необходимо использовать переходник, чтобы соответствовать слоту.
Вывод RxD A6 GSM подключен к Tx Arduino
Вывод TxD A6 идет к Rx Arduino.
Контакт GND A6 к GND Arduino.
Начальное тестирование
Включите питание модуля, а затем через мгновение позвоните на номер SIM-карты используется в модуле GSM с другого телефона. Если вы получаете сигнал обратного звонка , это означает, что модуль готов. Поскольку светодиодная индикация не предусмотрена, этот начальный шаг необходим для подтверждения работы.
Выполнение вызова
Подключите USB-кабель ПК к Arduino и загрузите этот код для совершения вызова. Не забудьте отключить соединения на Rx/Tx перед загрузкой кода.
Номер мобильного телефона, на который нужно позвонить, хранится в массиве переменных char.
В коде void setup() мы начинаем последовательную связь со скоростью 9600 бод. Хотя скорость передачи по умолчанию для A6 GSM составляет 115200, эффективно использовать 9600 бод.
Команда ATD, за которой следует номер вызываемого абонента, используется для совершения вызова.
Точка с запятой в конце не обязательна, как в SIM900. Вызов будет выполнен, даже если вы не используете точку с запятой.
После задержки в 8 секунд отправляется команда ATH для завершения вызова.
Вы можете открыть последовательный монитор Arduino и посмотреть, как приземляются AT-команды. Вы также должны установить скорость передачи 9600 в последовательном мониторе.
Функция void loop() остается пустой. Если вы попробуете код внутри цикла, вызов будет повторяться
создано навсегда.
Отправка SMS
Теперь давайте рассмотрим способ отправки SMS.
На следующем снимке экрана показан код для отправки SMS.
СКАЧАТЬ Arduino code ЗДЕСЬ писать SMS-сообщения в виде строк вместо шестнадцатеричных символов.
Serial.println используется для отправки AT-команды с новой строкой (Enter).
После задержки в 2 секунды следующая команда
AT+CMGS=»номер_телефона.»
отправляется. Целевой номер телефона должен быть указан в двойных кавычках. Обратите внимание на использование
Serial.write(0x22) , что является эквивалентом ASCII для двойных кавычек.
0D, за которым следует 0A , — это эквиваленты ASCII для ВОЗВРАТА КАРЕТКИ И ПЕРЕВОДА СТРОКИ.
Задержка в 2 секунды обязательна после перевода GSM в текстовый режим AT+CMGF=1
Попробуйте этот код без задержки, вы не получите ответа.
После 0D , 0A предоставляется задержка в 2 секунды, а затем выдается сообщение для отправки.
CTRL+Z наконец дается для отправки сообщения.
Предоставляется эквивалентом ASCII 1A или char(26)
Смотреть это видео:
Нравится Загрузка…
2,60 из 5
5 отзывов покупателей|Добавить отзыв
3,20 $
Доступность: Нет в наличии Артикул: NGS1040 Категория: Пенсионеры Метки: AI-мыслитель, GSM/GPRS
GPRS-модуль Беспроводной модуль, также известный как просто, предназначен для достижения TTL Serial Communication Switch Модуль беспроводной связи GPRS. Использование SIM-карты мобильного телефона и беспроводной передачи данных GPRS оператора на большие расстояния.
Модуль GPRS может использовать устройство без сети, без полевой среды WIFI, взаимодействовать с данными сервера.
Подобно GPRS DTU, популярный разговор, независимо от того, что такое последовательная передача, модуль A6 в качестве канала для передачи содержимого, чтобы пройти неповрежденным, чтобы установить хороший сервер. Наоборот, эффект тот же сервер передачи.
Модуль GPRS, доступный на рынке, должен поддерживать проприетарные протоколы, а A6 как простой модуль прозрачной передачи GPRS, программа имеет стандартные AT-команды GSM07.07,07.05 и расширенные команды Ai-Thinker, которые могут быстро начать работу и сократить цикл разработки. , уменьшите порог.