SIM20-самый простой RF -
модуль.
Автор Гена Чернов.
Описание
AT Commands Set
SIM20_ATC_V1.04
Общие замечания
Вольный перевод описания модуля
SIM20
со своими выводами для версии
V1.04,
тестируемая прошивка B04V02.
Замечания и предложения на
E-mail
gchernov@e-mail.ua
1.4. Режим
данных и командный режим.
Модуль SIM20 поддерживает два режима работы: режим передачи данных и
командный режим. Управление режимом работы модулем осуществляется через
вывод C2D.
По
умолчанию на выводе C2D присутствует высокий уровень и SIM20 находится в
режиме передачи данных после включения питания. Другими словами, когда C2D
вывод не подключать, или связаться с высоким уровнем (через резистор> 4.7K),
то SIM20 будет работать в режиме данных. Если вывод C2D подключить к земле,
SIM20 переключиться в режим команд.
В режиме
передачи данных SIM20 будет осуществлять прозрачную передачу данных, т.е.
будет отправлять в радиоканал все данные поступающие на порт UART, а в
командном режиме, выполняется конфигурация, передача данных. В командном
режиме SIM20 будет возвращать по
UART
ответ о выполнение
команд.
Примечание:
Как только SIM20 переключается в командный режим, можно
использовать все AT команды.
В режиме передачи данных модуль SIM20 поддерживает прозрачный режим
для получения и отправки данных.
Как только локальный модуль (сторона TX) переключается в режим
данных, все данные, полученные от последовательного порта, будут обработаны
как пакеты данных, которые будут переданы позже. А так же все данные,
полученные от удаленного модуля (сторона RX), будут отправлены
последовательному порту непосредственно.
Существует два условия отправки данных в радиоканал в режиме данных – по
времени ожидания и размеру кадра.
Время ожидания
это интервал между получением двух символов на входе Rx UARTа модуля SIM20.
Если время ожидания превышает 120 мс, SIM20 будет посылать пакеты данных
сформированных из данных из буфера Rx UARTа в радиоканал.
Размер кадра
- при заполнении буфера Rx UARTа модуль SIM20 автоматически выполнить
передачу данных в радиоканал.
Любое из условий Время ожидания или Размер кадра будет
активировать передачу данных по радиоканалу.
Примечание:
Значение по умолчанию
Время ожидания
составляет приблизительно 120 миллисекунд. Значение
Размер кадра
составляет 255
символов.
В
режиме передачи данных порт UART SIM20 имеет RX буфер размер которого
составляет 255-символов. Если фрейм (кадр) данных, полученных от
последовательного порта, превышает 255 символов, первые 255 символов будет
отправлены в радиоканал, остальные данные будут отброшены (потеряны). Когда
управляющее устройство отправляет данные на SIM20 (в режиме данных),
необходимо выдерживать временные интервалы между двумя фреймами (кадрами).
Рекомендованные интервалы приведены в следующей таблице:
Таблица 1: Рекомендуйте интервалы
Длина кадра данных |
Эфирная скорость передачи данных |
Рекомендуйте интервалы |
Длина ≤ 60 |
SRDDATAR=0 |
1100
миллисекунд |
Длина ≤ 60 |
SRDDATAR=7 |
460
миллисекунд |
60 < Длина < 255 |
SRDDATAR=0 |
2260
миллисекунд |
60 < Длина < 255 |
SRDDATAR=7 |
1130
миллисекунд |
255 ≤ Длина |
SRDDATAR=0 |
2100
миллисекунд |
255 ≤ Длина |
SRDDATAR=7 |
960
миллисекунд |
1.5 Синтаксис AT
команд
"AT"
или "at"
(айти) префикс должен быть установлен в начале каждой командной строки.
Оканчиваться команда должна символом <CR>. Если пользователь вводит команду
неправильно,
SIM20
ответит “ERROR” ("ОШИБКА). Как правило, на команду следует ответ, который
включает в себя "<CR> <LF> <ответ> <CR> <LF>". В этом
документе, представлены только ответы, <CR> <LF> опущены намеренно.
Примечание:
<CR> = 0x0D, <LF> = 0x0A, <NUL> = 0x00.
Описание формата команд
AT+<x>=? |
Получение информации о параметрах команды |
AT+<x>? |
Чтение
установленного параметра |
AT+<x>=<…> |
Изменение параметра команды |
2.1
AT
команды
Команда |
default |
Диапазон |
Описание |
AT+SRDFIRM |
|
|
Получить информацию о
версии ПО и рабочей частоты
SIM20. |
AT+SRDSN |
|
|
Получить серийный номер. |
AT+SRDRSSI |
|
0-230 |
Получить информацию об
уровне принимаемого радиосигнала. |
AT+SRDCHA |
0 |
0-13 |
Настройка номера
радиоканала. |
AT+SRDDATAR |
2 |
0-7 |
Настройка скорости
передачи по радиоканалу. |
AT+SRDTXPWR |
3 |
0-3 |
Настройка мощности
передатчика. |
AT+SRDCID |
1 |
0-255 |
Настройка номера
подсети. |
AT+SRDSID |
1 |
0-254 |
Настройка адреса
SIM20. |
AT+SRDDID |
255 |
0-255 |
Настройка адреса
получателя (кому будут передаваться данные по умолчанию). |
AT+SRDFORWARD |
0 |
0-1 |
Настройка разрешения
ретрансляции данных. |
AT+SRDPARAM |
|
|
Комплексная команда
настройки параметров
SIM20. |
AT+SRDSLEEP |
0 |
10,0 |
Настройка таймера режима
энергосбережения. |
AT+SRDEPS |
0 |
0-7 |
Активация режима
энергосбережения с настройкой вида просыпания. |
AT+SRDCONREMOTE |
0 |
0-1 |
Режим конфигурирования
удаленного модуля. |
AT+SRDCONF |
|
|
Изменение адреса
удаленного модуля, используя его идентификацию по его серийному
номеру. |
AT+SRDRESET |
|
0-1 |
Сброс. |
AT+SRDSEND |
|
|
Посылка пакета данных. |
AT+
SRDUART |
|
|
Настройка скорости
передачи по
UART. |
AT+SRDACK |
0 |
0-1 |
Активация функции
автоответа при передачи данных. |
2.2
Подробное описание команд
2.2.1
AT+SRDFIRM
–
Получить от
SIM20 информацию о версии «прошивки».
Формат команды |
Ответ
SIM20 |
Чтение
параметра
AT+SRDFIRM?
|
(Firm Information)
OK |
Пример обмена |
AT+SRDFIRM?[0D] |
[0D][0A]
B04V02SIM20B 868MHZ[0D][0A]
SIMCOM[0D][0A]
[0D][0A]
OK[0D][0A] |
·
Поддержка удаленного чтения. |
2.2.2
AT+SRDSN
– Получить от
SIM20
серийный номер (SN).
Формат команды |
Ответ
SIM20 |
Чтение
параметра
AT+SRDSN?
|
<sn>
OK |
|
Параметр
<sn> |
Строка из
15 символов (цифр), заводского номера
SIM20. |
Пример обмена |
AT+SRDSN?[0D] |
[0D][0A]
MP0610220028687[0D][0A]
OK[0D][0A] |
·
Поддержка удаленного чтения. |
2.2.3
AT+SRDRSSI
-
Получить
RSSI
(Уровень принимаемого сигнала).
Формат команды |
Ответ
SIM20 |
Чтение
параметра
AT+SRDRSSI? |
+SRDRSSI:<
mode >
OK |
|
Параметр
< mode > |
Целое
число «0-230» определяет уровень принимаемого сигнала.
«0»
означает либо отсутствие сигнала либо, что
SIM20
не получало каких-либо данных до команды RSSI. |
Пример обмена |
AT+SRDRSSI?[0D] |
[0D][0A]
+SRDRSSI: 202[0D][0A]
OK[0D][0A] |
·
Это значение уровня сигнала, когда SIM20 получил пакет данных в
прошлый раз, и обновляется каждый раз после получения пакета.
·
Поддержка удаленного чтения. |
2.2.4
AT+
SRDCHA
-
Настройка радиоканала.
Формат команды |
Ответ
SIM20 |
Запрос
о параметрах команды
AT+SRDCHA=? |
+SRDCHA:
(список доступных каналов <channel>)
OK |
Пример обмена |
AT+SRDCHA=?[0D] |
[0D][0A]
+SRDCHA:(0-13)[0D][0A]
OK[0D][0A] |
Запись
параметра
AT+SRDCHA=<channel> |
OK
ERROR |
|
Параметр
<channel> |
Целочисленный параметр, чтобы задать SIM20 радиоканал.
Значение по умолчанию 0. |
Пример обмена |
AT+SRDCHA=1[0D]
(пример
не верного параметра)
AT+SRDCHA=19[0D] |
[0D][0A]
OK[0D][0A]
[0D][0A]
ERROR[0D][0A] |
Чтение
параметра
AT+SRDCHA? |
|
Пример обмена |
AT+SRDCHA?[0D] |
[0D][0A]
+SRDCHA: 0[0D][0A]
OK[0D][0A |
·
Общее количество радиоканалов определяется скоростью передачи
данных, и полоса радиочастоты.
·
Когда скорость передачи данных
изменяется, текущий номер канала может не сочетаться со скоростью
передачи данных (Максимальное значение srdcha определяется значением
srddatar, когда srddatar изменяется, например, когда Srddatar=0,
srddcha будет 0~3, в то время как srddatar=7, srddcha должен быть 0.
srdcha), и затем номер канала будет изменен на 0.
·
Связь устанавливается только между модулями, имеющими один и тот же
радиоканал.
·
Поддержка команды в режиме энергосбережения.
·
Поддержка удаленного чтения / записи. |
2.2.4.1 Номер
радиоканала.
Количество радиоканалов зависит от полосы частот и скорости передачи данных
(для высокой скорости передачи данных, необходимая полоса пропускания выше,
поэтому, меньшее количество радиоканалов может быть выделено).
Фактическая центральная частота определяется тремя параметрами: начальная
частота, размер шага частоты и скорость передачи данных. Эти параметры
являются различными для различных скоростей передачи данных и полосы частот.
Фактическая частота рассчитывается следующим образом:
Центральная частота = Начальная_частота +
(
(Fx
* Размер_шага_частоты
))
Где: Fx является Frequency ID. Первый канал отождествляется с Fx = 0
(например, если максимальная Количество каналов 14, то допустимый диапазон
для определения частоты 0 ... 13).
Назначение подробно частоты для разных диапазонов частот, как таблицы ниже.
SIM20-A 434 MHz
DATAR |
Скорость передачи
[bps] |
Начальная частота
[MHz] |
Размер
шага частоты
[kHz] |
Количество каналов |
0 |
2400 |
433,33 |
330 |
4 |
1 |
4800 |
433,33 |
330 |
4 |
2 |
9600 |
433,33 |
330 |
4 |
3 |
10000 |
433,33 |
330 |
4 |
4 |
20000 |
433,53 |
390 |
3 |
5 |
50000 |
433,61 |
360 |
2 |
6 |
100000 |
433,61 |
0 |
1 |
7 |
128000 |
433,61 |
0 |
1 |
SIM20-B 868 MHz
DATAR |
Скорость передачи
[bps] |
Начальная частота
[MHz] |
Размер
шага частоты
[kHz] |
Количество каналов |
0 |
2400 |
863,55 |
450 |
14 |
1 |
4800 |
863,55 |
450 |
14 |
2 |
9600 |
863,55 |
450 |
14 |
3 |
10000 |
863,55 |
450 |
14 |
4 |
20000 |
863,70 |
550 |
11 |
5 |
50000 |
863,75 |
780 |
8 |
6 |
100000 |
864,00 |
1000 |
6 |
7 |
128000 |
864,00 |
1000 |
6 |
SIM20-C 915MHz
DATAR |
Скорость передачи
[bps] |
Начальная частота
[MHz] |
Размер
шага частоты
[kHz] |
Количество каналов |
0 |
2400 |
900,84 |
480 |
60 |
1 |
4800 |
900,84 |
480 |
60 |
2 |
9600 |
900,84 |
480 |
60 |
3 |
10000 |
900,84 |
480 |
60 |
4 |
20000 |
900,84 |
550 |
52 |
5 |
50000 |
900,84 |
780 |
37 |
6 |
100000 |
900,84 |
1000 |
29 |
7 |
128000 |
900,84 |
1000 |
29 |
2.2.5
AT+SRDDATAR
–
настройка параметра
DATAR
-
скорость
передачи данных по радиоканалу.
Формат команды |
Ответ
SIM20 |
Запрос
о параметрах команды
AT+SRDDATAR=? |
+SRDDATAR:
(список допустимых значений)
OK |
Пример обмена |
AT+SRDDATAR=?[0D] |
[0D][0A]
+SRDDATAR:(0-7)[0D][0A]
OK[0D][0A] |
Запись
параметра
AT+SRDDATAR=<rate> |
OK
ERROR |
|
Параметр
<rate> |
Параметр для указания SIM20 Скорость
передачи данных.
0 --- задает 2400 бит/с
1 --- задает 4800 бит/с
2 --- задает 9600 бит/с
3 --- задает 10000 бит/с
4 --- задает 20000 бит/с
5 --- задает 50000 бит/с
6 --- задает 100000 бит/с
7 --- задает 128000 бит/с |
Пример обмена |
AT+SRDDATAR=2[0D]
|
[0D][0A]
OK[0D][0A] |
Чтение
параметра
AT+SRDDATAR? |
+SRDDDATAR:<rate>
OK |
Пример обмена |
AT+SRDDATAR?[0D] |
[0D][0A]
+SRDDATAR: 2[0D][0A]
OK[0D][0A] |
·
Связь устанавливается только между модулями, имеющими одну и туже
скорость передачи.
·
Поддержка команды в режиме энергосбережения.
·
Поддержка удаленного чтения / записи. |
2.2.6
AT+SRDTXPWR
–
настройка мощности передатчика.
Формат
команды |
Ответ
SIM20 |
Запрос
о параметрах команды
AT+SRDTXPWR=? |
+SRDTXPWR: (list of supported <level>s)
OK |
Пример
обмена |
AT+SRDTXPWR=?[0D] |
[0D][0A]
+SRDTXPWR:(0-3)[0D][0A]
OK[0D][0A] |
Запись
параметра
AT+SRDTXPWR= <level> |
OK
ERROR |
|
Параметр
<level> |
Целочисленный параметр 0-3 указывает уровень мощности
передатчика,
что соответствует 9,12,15,18 дБм соответственно.
Значение по умолчанию: 3. |
Пример
обмена |
AT+SRDTXPWR=3[0D] |
[0D][0A]
OK[0D][0A] |
Чтение
параметра
AT+SRDTXPWR? |
+SRDTXPWR:<level>
OK |
Пример
обмена |
AT+SRDTXPWR?[0D] |
[0D][0A]
+SRDTXPWR: 3[0D][0A]
OK[0D][0A] |
·
Поддержка команды в режиме энергосбережения.
·
Поддержка удаленного чтения / записи. |
2.2.7
AT+SRDCID
–
настройка номера подсети
CID.
Сеть на модулях
SIM20
может иметь подсети. Функция
CID
задает принадлежность текущего модуля к определённой подсети. Модули между собой
могут связываться только в пределах подсети.
Формат
команды |
Ответ
SIM20 |
Запрос
о параметрах команды
AT+SRDCID=? |
+SRDCID:
(список допустимых <cid>)
OK |
Пример
обмена |
AT+SRDCID=?[0D] |
[0D][0A]
+SRDCID:(0-255)[0D][0A]
OK[0D][0A] |
Запись
параметра
AT+SRDCID=<cid>
|
OK
ERROR |
|
Параметр
<cid>
|
Целое число 0-255 которое определяет
подсеть
для
SIM20.
Значение по умолчанию = 1. |
Пример
обмена |
AT+SRDCID=1[0D]
|
[0D][0A]
OK[0D][0A] |
Чтение
параметра
AT+SRDCID? |
+SRDCID:<cid>
OK |
Пример
обмена |
AT+SRDCID?[0D] |
[0D][0A]
+SRDCID: 1[0D][0A]
OK[0D][0A] |
·
Связь устанавливается только между модулями, имеющими один и тот же
номер подсети.
·
Поддержка команды в режиме энергосбережения.
·
Поддержка удаленного чтения / записи. |
2.2.8
AT+SRDSID
– настройка номера (адреса)
SID
SIM20
(в подсети).
Этой функцией
задается адрес модуля в подсети. Допустимые значение адреса 0-254. Адрес 255 не
может быть установлен, адрес 255 является адресом широковещательной передачи.
Модули принимают все пакеты со своим
SID
и с номер 255.
Формат
команды |
Ответ
SIM20 |
Запрос
о параметрах команды
AT+SRDSID=? |
+SRDSID:
(список доступтимых <cid>)
OK |
Пример
обмена |
AT+SRDSID=?[0D] |
[0D][0A]
+SRDSID:(0-254)[0D][0A]
OK[0D][0A] |
Запись
параметра
AT+SRDSID=<cid>
|
OK
ERROR |
|
Параметр
<cid>
|
Целое число 0-254 которое определяет подсеть для
SIM20.
Значение по умолчанию = 1. |
Пример
обмена |
AT+SRDSID=1[0D]
|
[0D][0A]
OK[0D][0A] |
Чтение
параметра
AT+SRDSID? |
+SRDSID:<cid>
OK |
Пример
обмена |
AT+SRDSID?[0D] |
[0D][0A]
+SRDSID: 1[0D][0A]
OK[0D][0A] |
·
Поддержка команды в режиме энергосбережения
·
Поддержка удаленного чтения / записи |
2.2.9
AT+SRDDID
– настройка адреса получателя данных.
Эта функция предназначена для настройки адреса модуля получателя данных. В
режиме передачи данных все данные поступающие на
UART
будут направлены по радиоканалу и приняты только модулем с заданным адресом
(заданный
DID
должен быть равен
SID
модуля получателя). Если в радио-пакете будет задан адрес 255 (DID=255),
то все данные переданный этим модулем будут приняты всеми модулями сети. Такая
передача называется широковещательной.
Формат
команды |
Ответ
SIM20 |
Запрос
о параметрах команды
AT+SRDDID=? |
+SRDDID: (list of supported <did>s)
OK |
Пример
обмена |
AT+SRDDID=?[0D] |
[0D][0A]
+SRDDID:(0-255)[0D][0A]
OK[0D][0A] |
Запись
параметра
AT+SRDDID=<sid> |
OK
ERROR |
|
Параметр
<sid>
|
Целочисленный номер
0-255, чтобы идентифицировать место назначения SIM20,
0-254,
чтобы идентифицировать уникальное место назначения SIM20,
255
является широковещательным адресом.
Значение по умолчанию 255. |
Пример
обмена |
AT+SRDDID=255[0D]
|
[0D][0A]
OK[0D][0A] |
Чтение
параметра
AT+SRDDID?
|
+
SRDDID:<cid>
OK |
Пример
обмена |
AT+SRDDID?[0D] |
[0D][0A]
+SRDDID: 255[0D][0A]
OK[0D][0A] |
·
Поддержка команды в режиме энергосбережения
·
Поддержка удаленного чтения / записи |
1.2.10
AT+SRDFORWARD – активация разрешения ретрансляции данных.
Если активирована
эта функция, то при получении данных предназначенных к другому модулю, настоящий
модуль будет выполнять функцию ретрансляции данных. Таким образом, можно
выполнять ретрансляцию данных на большие расстояния, используя промежуточные
станции.
Формат
команды |
Ответ
SIM20 |
Запрос
о параметрах команды
AT+SRDFORWARD=? |
+SRDFORWARD: (list of supported <param>s)
OK |
Пример
обмена |
AT+SRDFORWARD=?[0D] |
[0D][0A]
+SRDFORWARD:(0,1)[0D][0A]
OK[0D][0A] |
Запись
параметра
AT+SRDFORWARD=<param> |
OK
ERROR |
|
Параметр
<param> |
0---отключить ретрансляцию (значение по умолчанию)
1---включить
ретрансляцию |
Пример
обмена |
AT+SRDFORWARD=0[0D] |
[0D][0A]
OK[0D][0A] |
Чтение
параметра
AT+SRDFORWARD? |
+SRDFORWARD:
<param>
OK |
Пример
обмена |
AT+SRDFORWARD?[0D] |
[0D][0A]
+SRDFORWARD: 1[0D][0A]
OK[0D][0A] |
·
Поддержка команды в режиме энергосбережения |
1.2.11 AT+SRDPARAM
– команда комплексной настройки параметров модуля
SIM20.
Формат
команды |
Ответ
SIM20 |
Запрос
о параметрах команды
AT+SRDPARAM=? |
|
Пример
обмена |
AT+SRDPARAM=?[0D]
|
[0D][0A]
cha:(0-13)[0D][0A]
cid:(0-255)[0D][0A]
sid:(0-254)[0D][0A]
did:(0-255)[0D][0A]
datar:(0-7)[0D][0A]
txpwr:(0-3)[0D][0A]
forward:(0,1)[0D][0A]
OK[0D][0A] |
Запись
параметра
AT+SRDPARAM=<cha>,<cid>,
<sid>,<did>,<datar>,<txpwr>,<forward> |
OK
ERROR |
|
Параметр |
|
<cha> |
Номер
радиоканала. |
<cid> |
Номер подсети. |
<sid> |
Номер
(локальный) SIM20. |
<did> |
Номер SIM20
направления
передачи
данных. |
<datar> |
Скорости
передачи данных по радиоканалу. |
<txpwr> |
Мощность
передатчика. |
<forward> |
Пересылка
сообщений. |
Пример
обмена |
AT+SRDPARAM=0,1,1,255,2,3,0[0D]
|
[0D][0A]
OK[0D][0A] |
Чтение
параметра
AT+SRDPARAM? |
+SRDPARAM:<cha>,<cid>,
<sid>,<did>,<datar>,<txpwr>,<forward>
OK |
Пример
обмена |
AT+SRDPARAM?[0D]
|
[0D][0A]
+SRDPARAM:0,1,1,255,2,3,0[0D][0A]
OK[0D][0A]
|
·
Поддержка команды в режиме энергосбережения
·
Поддержка удаленного чтения / записи.
·
Параметр является дополнительным, если будет отсутствовать или пропущен
какой-то параметр, то его значение не будет изменено. |
2.2.12
AT+SRDSLEEP –
настройка таймера
режима энергосбережения.
Формат
команды |
Ответ
SIM20 |
Запрос
о параметрах команды
AT+SRDSLEEP=? |
+SRDSLEEP:((1-255,0)(1-255,1)(1-48,2))
OK |
Пример
обмена |
AT+SRDSLEEP=?[0D] |
[0D][0A]
+SRDSLEEP:((1-255,0)(1-255,1)(1-48,2))[0D][0A]
OK[0D][0A] |
Запись
параметра
AT+SRDSLEEP= <time>,<unit> |
OK
ERROR |
|
Параметр
<time>
<unit>
|
Значение по умолчанию 10,0.
<time>
– время.
Целое число
1-255 (Единица измерения: в соответствии с <unit>), время цикла
таймера в режиме энергосбережения SIM20 at+srdeps=2/3/6/7.
<unit>
–
единицы измерения.
Единицы измерения диапазон от 0 до 2.
0 --- секунды – диапазон задания 1-255.
1 --- минуты – диапазон задания 1-255.
2 --- часы – диапазон задания 1-48. |
Пример
обмена |
AT+SRDSLEEP=
50,1[0D]
|
[0D][0A]
OK[0D][0A] |
Чтение
параметра
AT+SRDSLEEP? |
+SRDSLEEP:<time>,<unit>
OK |
Пример
обмена |
AT+SRDSLEEP?[0D] |
[0D][0A]
+SRDSLEEP: 50,1[0D][0A]
OK[0D][0A] |
·
Поддержка команды в режиме энергосбережения
·
Поддержка удаленного чтения / записи |
При активации
режима сбережения с функцией таймера, таймер функционирует с периодом заданным
параметрами <time>,<unit>.
Модуль просыпается на 2 секунды.
2.2.13 AT+SRDEPS –
Активация режима
энергосбережения
SIM20.
Формат
команды |
Ответ
SIM20 |
Запрос
о параметрах команды
AT+SRDEPS=? |
+SRDEPS: (list of supported <mode>s)
OK |
Пример
обмена |
AT+SRDEPS=?[0D]
|
[0D][0A]
+SRDEPS:(0,1,2,3,5,6,7)[0D][0A]
OK[0D][0A] |
Запись
параметра
AT+SRDEPS=<mode> |
OK
ERROR |
|
Параметр
<mode>
|
0 ---
деактивация режима (по умолчанию).
1 ---
активировать режим, просыпаться по UART.
2 ---
активировать режим, просыпаться по таймеру.
3 ---
активировать режим, просыпаться по таймеру или UART.
5 ---
активировать режим, просыпаться по UART и отправлять сообщение через
радиоканал, когда модуль просыпается.
6 ---
активировать режим, просыпаться по таймеру и отправлять сообщение через
радиоканал, когда модуль просыпается.
7 ---
активировать режим, просыпаться по таймеру или UART, и отправлять
сообщение через радиоканал, когда модуль просыпается. |
Пример
обмена |
AT+SRDEPS=0[0D]
AT+SRDEPS=1[0D] |
[0D][0A]
OK[0D][0A]
[0D][0A]
OK[0D][0A]
[00] -
сообщение по
UART что
модуль находиться в режиме сна.
[0D][0A]MCU
WakeUp[0D][0A]
- сообщение по
UART что
модуль находиться в активном режиме.
|
Чтение
параметра
AT+SRDEPS? |
|
Пример
обмена |
AT+SRDEPS?[0D] |
+SRDEPS: 0[0D][0A]
OK[0D][0A] |
·
Цикл
таймера
настраивается командой AT + SRDSLEEP.
·
После позволит энергосберегающий режим и не UART и РФ данные должны
иметь дело с, SIM20 модуль будет ввести режим энергосбережения в около
2100 миллисекунд и выход <NUL> через порт UART в то же время
·
При SIM20 просыпаться выведет "MCU пробуждения" через UART порт
·
После позволит EPS = 1/3/5/7, вводить любые символы ASCII проснется
SIM20 модуль через порт UART
·
Поддержка команды в режиме энергосбережения
·
Поддержка удаленного чтения / записи |
|
|
|
|
При активации
режима сбережения с функцией таймера, таймер функционирует с периодом заданным
параметрами <time>,<unit>.
Модуль просыпается на 2 секунды (2100 милисекунд).
При переходе в
режим сна модуль на
UART
выдает код [00].
При переходе в режим активности выдает код [0D][0A]MCU
WakeUp[0D][0A]. Во время сна
модуль не принимает никакие данные по радиоканалу и
UART.
Во время активности поступление данных через радиоканал, сохраняет активность
модуля аналогично поступлению данных через
UART.
Если активирована функция «отправлять
сообщение через радиоканал, когда модуль просыпается»
модуль посылает сообщение
REPORT:2
где «2»-адрес модуля который активировался. Это сообщение будет принято модулем
(или модулями)
SID которого равен
DID
модуля передатчика.
Энергосбережение
режим AT+SRDEPS=1 (активация через
UART).
Для просыпания необходимо передать
любой байт через
UART.
Модуль отвечает через
UART
кодом
[0D][0A]MCU
WakeUp[0D][0A] и активируется
(если на UART
не поступают данные модуль через 2 секунды переходит в режим сна). В это время
можно подавать данные и команды на
UART
и модуль будет выполнять команды, и передавать данные. После приема последнего
символа через
UART, модуль ожидает еще 2
секунды.
Энергосбережение
режим AT+SRDEPS=2 (активация по таймеру).
В за 2 секунды до конца цикла
таймера модуль активируется с выдачей на
UART
кодом
[0D][0A]MCU WakeUp[0D][0A] и
ожидает приема команд или данных.
Остальные команды совмещают режимы 1
и 2 плюс передача активности по радиоканалу.
2.2.14
AT+SRDCONREMOTE
–
Активация режима
конфигурирования удаленного модуля.
При активации
этого режима модуль превращается в сервер управления удаленными модулями. В этом
режиме, команды поддерживающие работу в удаленном режиме, поступающие на
UART
локального
модуля, на локальном модуле команды не выполняются, а передаются по радиоканалу
на удаленный модуль (в виде команд удаленного конфигурирования), адрес
удаленного модуля определяет параметр
DID
локального модуля. Удаленный модуль, получая команды удаленного управления (по
радиоканалу), выполняет их и возвращает ответ по радиоканалу на локальный
модуль. Локальный модуль возвращает полученный ответ на
UART.
Формат
команды |
Ответ
SIM20 |
Запрос
о параметрах команды
AT+SRDCONREMOTE=? |
|
Пример
обмена |
AT+SRDCONREMOTE?[0D] |
+SRDCONREMOTE:(0,1)[0D][0A]
OK[0D][0A] |
Запись
параметра
AT+SRDCONREMOTE=<param> |
OK
ERROR |
|
Параметр
<param>
|
0---отключить
режим конфигурирования удаленного
SIM20 (default
value)
1---включить
режим конфигурирования удаленного SIM20 |
Пример
обмена |
AT+SRDCONREMOTE=0[0D] |
[0D][0A]
OK[0D][0A] |
Чтение
параметра
AT+SRDCONREMOTE? |
+
SRDCONREMOTE: <param>
OK |
Пример
обмена |
AT+SRDCONREMOTE=?[0D] |
+SRDCONREMOTE:0[0D][0A]
OK[0D][0A] |
·
Режим автоматически
деактивируется, когда модуль переключается в режим передачи данных. |
Настройка удаленного
SIM20
После активации этой функции появляется возможность настраивать функции
дистанционного, команды AT, которые поддерживают удаленное чтение / запись будут
выполниться на удаленном модуле SIM20,
и будет возвращен ответ
локальному модулю SIM20 (диспетчеру).
Форматы
ответов при удаленном чтении.
а) Неправильная AT
команда её или параметры
ERROR
б) команда успешно выполнена на локальном (модуль управления) модуле SIM20, и
ошибка удаленном модуле.
OK
RM (SID): Fail
с) команда успешно
выполнена на локальном и удаленном модуле SIM20.
OK
RM(SID):result
Форматы ответов при
удаленной записи:
а) Неправильная
AT команда или её параметры
ОШИБКА
б) команду успешного
выполнения на местном стороны SIM20, но не на удаленной стороне.
ОК
RM (SID): Fail
с) команду успешного
выполнена на локальном и удаленном SIM20.
ОК
RM (SID): Успех
Примечание:
1) AT+SRDCONREMOTE/AT+SRDCONF и все их тестовые команды (AT + <x> =?)
выполняются в локальной стороне, независимо включена ли удаленная функция
конфигурации или отключена.
2), Если удаленная функция конфигурации будет включена, то команда
AT+SRDSEND/AT+SRDUART возвратят сообщение
“Not support
remote configure” - “Не, поддерживается удаленное, конфигурирование”.
3) Локальный SIM20 идентифицирует удаленный SIM20 своим SID в sub сети,
удаленный SIM20 может быть в командном режиме или в режиме данных.
Таблица 5: AT команды
поддержки удаленного чтения или записи.
Команда |
Удаленное
чтение |
Удаленная
запись |
Примечание |
AT+SRDFIRM |
Yes |
No |
|
AT+SRDSN |
Yes |
No |
|
AT+SRDRSSI |
Yes |
No |
|
AT+SRDCHA |
Yes |
Yes |
Примечание |
AT+SRDDATAR |
Yes |
Yes |
Примечание |
AT+SRDTXPWR |
Yes |
Yes |
|
AT+SRDCID |
Yes |
Yes |
Примечание |
AT+SRDSID |
Yes |
Yes |
|
AT+SRDDID |
Yes |
Yes |
|
AT+SRDFORWARD |
Yes |
Yes |
|
AT+SRDPARAM |
Yes |
Yes |
Примечание |
AT+SRDSLEEP |
Yes |
Yes |
|
AT+SRDEPS |
Yes |
Yes |
|
AT+SRDRESET |
No |
Yes |
|
AT+SRDACK |
Yes |
Yes |
|
Примечание:
Если выполняется удаленное конфигурирование параметров SRDCHA/SRDDATAR/SRDCID,
то локальный
SIM20
не может получить информацию об ответе, т.к. удаленный модуль будет отвечать в
радиоэфир с использованием новых параметров.
2.2.15
AT+SRDCONF
–
изменить в
удаленном модуле
SIM20
с серийным
номером <”sn”>
его адрес
SID.
Формат
команды |
Ответ
SIM20 |
Запись
параметра
AT+SRDCONF=<”sn”>,<sid> |
OK
ERROR |
|
Параметр
<”sn”>
<sid> |
Серийный номер
удаленного модуля 15 символов
Целое число
0-254 которое будет назначено SIM20 серийный номер, которого совпадает с
<”sn”> параметра. |
Пример
обмена |
AT+SRDCONF="MP0610220028627",26
|
[0D][0A]OK[0D][0A]
RM(26):success[0D][0A] |
Эта
команда может быть использована для назначения удаленному модулю номера
SID,
идентифицируя по его серийному номеру. |
Есть два способа конфигурации SIM20 через удаленную
SIM20
;Задать в удаленном модуле новый
адрес
•
AT+SRDCONF="SN",SID
–
Example: AT+SRDCONF="MP0610220028687",201
;Настроить локальный на передачу в
удаленный номер
• AT+SRDDID=<target
SID>
;Включить на локальной режим
удаленного управления
• AT+SRDCONREMOTE=1
–
Example:
•
AT+SRDSN?
•
AT+SRDDID=2
•
AT+SRDCONREMOTE=1
• AT+SRDSN?
MP0610220028687
MP0610220028627
AT+SRDCONREMOTE=1
AT+SRDSN?
2.2.16 AT+SRDRESET –
Сброс
SIM20.
Настоящая функция
предназначена для инициализации модуля, а также для обновления версии «ПО».
|
Ответ
SIM20
|
Запись
параметра
AT+SRDRESET=<mode> |
OK
ERROR |
|
Параметр
<mode>
|
0 --- сброс SIM20 и восстановления всех значений параметров по
умолчанию, за исключением SRDSN и SRDUART.
1 --- сброс только SIM20. |
Пример
обмена |
|
AT+SRDRESET=0[0D]
Ожидание ввода
команды 4 секунды
|
[0D][0A]
OK[0D][0A]
[0D][0A]
[0D][0A]
Erase FLASH and Update Firmware__V1.00[0D][0A]
---------------------------------[0D][0A]
NO-jump
to main[0D][0A]
YES-erase-upgrade[0D][0A]
CANCEL-reset[0D][0A]
Enter a command >
[0D][0A]
[0D][0A]
B04V02SIM20B 868MHZ[0D][0A]
SIMCOM[0D][0A] |
●
Поддержка удаленной записи
● SIM20 будет выполнять сброс около 1 секунды спустя после ответа "OK" |
Примечание:
При подаче питания или по формирования аппаратного
RESET (вывод ___) модуль как и при подаче через
UART
команды
AT+SRDRESET выполняет команду
RESET и
ожидает 4 секунды ответа через
UART:
NO
– отказаться от выполнения команды сброс.
YES
– очистка FLASH
и обновление ПО.
CANSEL
–
сброс
[0D][0A]** RESETTING **[0D][0A
AT+SRDRESET=0
сброс и возврат основных параметров к заводским.
AT+SRDRESET=1
только сброс.
После команды
AT+SRDRESET=0
и ввода параметра
CANSEL
основные параметры устанавливаются
AT+SRDPARAM?
[0D][0A]+SRDPARAM:0,1,1,255,2,3,0[0D][0A]OK[0D][0A]
2.2.17
AT+SRDSEND – передать данные.
Команда передачи
данных. Параметр
<did>
указывает номер модуля, которому адресуются данные. Данные должны начинаться
символом «кавычки» и заканчиваться этим символом. Если активирована функция
ACK, при передачи данных, модуль будет контролировать получение данных
адресатом. И сообщать через
UART
о
состоянии передачи.
Формат
команды |
Ответ
SIM20 |
Передача
данных
AT+SRDSEND=<did>,<”data”> |
OK
ERROR |
|
Параметр
<did>
<”data”> |
Целое число 0-255 для определения назначения SIM20, которому этот пакет
будет адресован, адрес 255 широковещательная передача (всем).
Данные строки для отправки, максимальная длина составляет 60 байта. |
Пример
обмена |
AT+SRDSEND=255,"TEST"[0D]
|
[0D][0A]
OK[0D][0A] |
·
Данные надо «брать» в кавычки "data”. |
|
|
|
|
Если установлен
параметр
ACK,
то после передачи данных модуль будет сообщать через
UART
о
достоверности передачи данных.
Успешная
передача
AT+SRDSEND=1,"TEST"[0D]
[0D][0A]success
send to 1[0D][0A][0D][0A]OK[0D][0A]
Неудачная передача
(модуль пытается 3 раза повторить передачу и только потом сообщает об ошибке).
AT+SRDSEND=3,"TEST"[0D]
[0D][0A]fail
send to 3[0D][0A][0D][0A]OK[0D][0A]
Примечание, ответ
аналогично выдается в режиме передачи данных
2.2.18
AT+SRDUART
- настройка скорости и параметров работы
UART SIM20.
Формат
команды |
Ответ
SIM20 |
Запрос
о параметрах команды
AT+SRDUART=? |
+SRDUART:
(0-6, 0-5)
OK |
Пример
обмена |
|
AT+SRDUART=?[0D] |
[0D][0A]
+SRDUART: (0-6),(0-5)[0D][0A]
OK[0D][0A] |
Запись
параметра
AT+SRDUART=<rate>,<mode> |
OK
ERROR |
|
Параметр
<rate>
<mode> |
Целочисленный
параметр, чтобы указать скорость в бод для UART SIM20.
0 ---
2400 бит/с
1 --- 4800 бит/с
2 --- 9600 бит/с
3 --- 19200 бит/с
4 --- 38400 бит/с
5 --- 57600 бит/с
6 --- 115200 бит/с
(по умолчанию)
Целочисленный
параметр, чтобы указать формат UART в SIM20.
0---8/N/1
(значение по умолчанию)
1---8/O/1
2---8/E/1
3---7/N/2
4---7/O/1
5---7/E/1 |
Пример
обмена |
|
AT+SRDUART=6,0[0D]
(пример
неверного параметра)
AT+SRDUART=6,6[0D] |
[0D][0A]
OK[0D][0A]
[0D][0A]
ERROR[0D][0A] |
Чтение
параметра
AT+SRDUART?
|
+SRDUART:<rate>,<mode>
OK |
Пример
обмена |
|
AT+SRDUART?[0D] |
[0D][0A]
+SRDUART: 6,0[0D][0A]
OK[0D][0A] |
·
Поддержка команды в режиме энергосбережения.
·
При смене параметров
USART
ответ от модуля приходит на скорости с новыми параметрами. |
2.2.19
AT+SRDACK-
настройка функции контроля достоверности получения данных адресатом.
При посылке
пакета данных модуль не контролирует получения пакета адресатом, но если
активировать функцию
ACK,
модуль будет контролировать получения данных адресатом. В этом случае модуль
будет возвращать ответ об успешности или неудачи передачи данных. Функция
автоматически деактивируется при передаче широковещательного пакета.
Формат
команды |
Ответ
SIM20 |
Запрос
о параметрах команды
AT+SRDACK=? |
+SRDACK: (list of supported < mode >s)
OK |
Пример обмена |
AT+SRDACK=?[0D]
|
[0D][0A]
+SRDACK: (0,1) |
Запись
параметра
AT+SRDACK=<mode> |
OK
ERROR |
|
Параметр
<mode> |
0 --- ACK
функция выключена (значение по умолчанию)
1 --- ACK функция включена |
Пример обмена |
AT+SRDACK=0[0D]
(пример не
верного параметра)
AT+SRDACK=12[0D] |
[0D][0A]
OK[0D][0A]
[0D][0A]
ERROR[0D][0A] |
Чтение
параметра
AT+SRDACK? |
+SRDACK:<mode>
OK |
Пример обмена |
AT+SRDACK?[0D] |
+SRDACK: 0[0D][0A]
OK[0D][0A] |
·
Если ACK функция включена, SIM20, после его передачи пакетной передачи
данных, будет ожидать ответ ACK от приемника (не широковещательный
пакет), после получения ACK ответит по
USART
"Успех передачи на Х", в противном случае будет ответ "Неудача передачи
на Х", где Х -> DID.
·
Если передается широковещательный пакет, значение параметра SRDACK будет
автоматически изменено на 0 (функция отключена).
·
Поддержка команды в режиме энергосбережения
·
Поддержка удаленного чтения / записи |
Пример обмена данных
Успешная передача
команда
AT+SRDsend=13,"gwwwwwwwwwwwo"[0D]
ответ
[0D][0A]
success
send to 13[0D][0A]
[0D][0A]
OK[0D][0A]
Неудачная передача
команда
AT+SRDsend=1,"gwwwwwwwwwwwo"[0D]
ответ
[0D][0A]
fail send
to 1[0D][0A]
[0D][0A]
OK[0D][0A]
Прием и передача данных радиомодулем
SIM20.
При передаче и приеме данных радиомодули могут находиться или командном режиме
или в режиме передачи данных. Ниже приведены варианты формирования передачи и
приёма данных для возможных сочетаний режимов работы. Черным приведены данные
поступающие на модуль со стороны
UART,
синим – данные выдающиеся модулем на
UART.
Передается строка “TEST”
Передающий
модуль
в режиме передачи данных
<– TEST
Принимающий
модуль в режиме приема данных –>
TEST
Передающий
модуль
в режиме передачи данных
<– TEST
Принимающий
модуль в режиме приема команд –>
RM(1):TEST[0D][0A]
Передающий
модуль
в режиме передачи
команд <–
AT+SRDSEND=2,"TEST"[0D]
Принимающий
модуль в режиме приема команд –>
RM(1):TEST[0D][0A]
Передающий
модуль
в режиме передачи
команд <–
AT+SRDSEND=2,"TEST"[0D]
Принимающий
модуль в режиме приема
данных –>
TEST
Цифра в скобках номер
SID
передающего модуля. В командном режиме передача осуществляется немедленно после
окончания команды. В режиме передачи данных с выполнением условий передачи
(таймаут или заполнения буфера).
Обновление
ПО
SIM20.
Процедура
обновления ПО с использованием SIM20 PC Tool.
Модуль
предлагает функцию обновления ПО при трех условия:
·
При подаче
команды RESET.
·
При включении
питания, если уровень на выводе
C2D
низкий.
·
При
выполнении аппаратного
RESET,
если уровень на выводе
C2D
низкий.
По умолчанию
(заводские настройки
UART
модуля) 115200/8no.
Программа SIM20 PC Tool изначально должна быть установлена в режим формирования
AT-команд
Запускаем
модуль в режим «опгрейта» используя переключатель
Power
или
Reset…
В этом случае
модуль сразу ответит через
UART:
И будет 4
секунды ожидать ввода следующих команд:
NO-отмена
YES-очиска
и последующее обновление ПО
CANCEL-сброс
На команду «NO»
модуль прервет ожидание и выдаст ответ:
На команду «CANCEL»
модуль выполнит сброс и перейдет в ожидание ввода команды (еще 4 секунды):
На команду «YES»
модуль выполнит очистку памяти
И будет сколь
угодно долго ожидать ввода имени файла для загрузки.
В этом состоянии в
модуле уже нет ПО, оно стерто, работает только загрузчик. Если прервать процесс
обновления, то при подаче питания модуль будет постоянно просить файл для
обновления.
Далее
переводим программу в режим передачи файлов, указываем путь и имя файла
Нажимаем
Enter
и в течении пары секунд выполняется «перепрошивка», в окно программы будут
выводится информации о процессе загрузки файла. При успешной «прошивке» модуль
ответит через
UART:
Обновление
выполнено успешно, версия установленного ПО …….
При передаче
и приеме данных радиомодули могут находиться или командном режиме
Описание
Для получения дополнительной информации используйте:
MAGETEX
Ukraine
Телефон: +380-50-575-98-63
Факс: +380-50-575-98-63
E-mail:
invent-systems@ya.ru
|