Базовые AT команды ESP8266
Добавлено 9 июня 2018 в 09:01
ESP8266 в своей конфигурации по умолчанию загружается в режим последовательного модема. В этом режиме вы можете общаться с ним с помощью набора AT-команд. AT-команды ESP8266 можно разделить на три категории: базовые, уровень Wi-Fi и уровень TCP/IP. Ниже приведен список всех базовых AT команд, поддерживаемых ESP8266, с объяснением, что они делают, и как их использовать.
Варианты команд
Каждая команда имеет до 4 вариантов, изменяющих ее назначение. Вы можете выбирать между ними, добавляя одно из четырех возможных значений в конце основной команды. Эти четыре дополнения могут иметь следующие значения: "", =<parameter|[parameters]>, "?", =?.
| Тип | Формат команды | Описание |
|---|---|---|
| Тест | AT+<x>=? |
Запрос внутренних параметров и диапазона их значений для заданной команды. |
| Запрос | AT+<x>? |
Возвращает текущее значение параметра. |
| Установка | AT+<x>=<…> |
Установка параметров, заданных в команде пользователем, и запуск этой команды. |
| Выполнение | AT+<x> |
Запуск команды без заданных пользователем параметров. |
Примечание:
- не все команды поддерживают все 4 варианта;
- квадратные скобки
[]обозначают значение по умолчанию; оно либо не требуется, либо может не отображаться; - строковые значения необходимо заключать в двойные кавычки, например,
AT+CWSAP="ESP756290","21030826", 1,4; - скорость передачи данных по умолчанию равна 115200;
- AT команды должны печататься заглавными буквами и оканчиваться новой строкой (
CR LF).
Базовые AT команды
Список команд
| Команда | Описание |
|---|---|
AT |
Проверить запуск AT |
AT+RST |
Перезапустить модуль |
AT+GMR |
Проверить информацию о версии |
AT+GSLP |
Войти в режим глубокого сна |
ATE |
Настроить эхо AT команд |
AT+RESTORE |
Сбросить модуль на заводские настройки |
AT+UART_CUR |
Текущая конфигурация UART |
AT+UART_DEF |
Конфигурация UART по умолчанию, сохраненная во флеш-памяти |
AT+SLEEP |
Настройка режимов сна |
AT+WAKEUPGPIO |
Настройка GPIO для просыпания ESP8266 из режима легкого сна |
AT+RFPOWER |
Установка максимального значения RF мощности передачи |
AT+RFVDD |
Установка RF мощности передачи в соответствии с VDD33 |
AT+RFAUTOTRACE |
Установка подстройки радиочастоты |
AT+SYSRAM |
Проверка доступного размера RAM |
AT+SYSADC |
Проверка значения АЦП |
AT+SYSIOSETCFG |
Установка конфигурации выводов ввода/вывода |
AT+SYSIOGETCFG |
Получение конфигурации выводов ввода/вывода |
AT+SYSGPIODIR |
Настройка направления выводов ввода/вывода общего назначения (GPIO) |
AT+SYSGPIOWRITE |
Настройка выходного уровня GPIO |
AT+SYSGPIOREAD |
Проверка входного уровня GPIO |
AT+SYSMSG_CUR |
Текущая установка системных сообщений |
AT+SYSMSG_DEF |
Установка системных сообщений по умолчанию |
Команды
AT– проверить запуск AT-
Команда выполнения ATОтклик OK Параметры – AT+RST– перезапустить модуль-
Команда выполнения AT+RSTОтклик OK Параметры – AT+GMR– проверить информацию о версии-
Команда выполнения AT+GMRОтклик <AT version info>
<SDK version info>
<compile time>
OKПараметры - <AT version info> – информация о версии AT
- <SDK version info> – информация о версии SDK
- <compile time> – продолжительность времени компиляции BIN
AT+GSLP– войти в режим глубокого сна-
Команда установки AT+GSLP=<time>Отклик <time>
OKПараметры <time>– продолжительность сна ESP8266. Единицы измерения: миллисекунды. После указанного времени ESP8266 выйдет из режима глубокого сна.Примечание Перед входом модуля в режим глубокого сна необходимо выполнить небольшую настройку, т.е. подключить XPD_DCDC к EXT_RSTB с помощью 0-омного резистора. ATE– включение/выключение эхо-
Команда выполнения ATEОтклик OK Параметры ATE0– выключает эхо.ATE1– включает эхо.
Примечание Данная команда ATEиспользуется для вызова эхо. Это означает, что при использовании командыATEвведенные команды могут быть возвращены эхом назад отправителю. Возможны два параметра. Команда возвращает OK в нормальном случае и ERROR, когда был указан параметр, отличающийся от 0 или 1. AT+RESTORE– сброс на заводские настройки-
Команда выполнения AT+RESTOREОтклик OK Примечание Выполнение этой команды сбросит все параметры, сохраненные во флеш-памяти, и восстановит заводские настройки модуля. После выполнения команды чип будет перезапущен. AT+UART_CUR– текущая конфигурация UART, не сохраненная во флеш-памяти-
Команда Команда запроса:
AT+UART_CUR?Команда установки:
AT+UART_CUR=<baudrate>,<databits>,<stopbits>,<parity>,<flow control>Отклик +UART_CUR=<baudrate>,<databits>,<stopbits>,<parity>,<flow control>
OKOK Примечание Команда AT+UART_CUR?вернет фактическое значение параметров конфигурации UART, которое может иметь допустимую ошибку по сравнению с установленным значением из-за деления тактовой частоты.
Например, если скорость передачи данных UART установлена равной 115200, то скорость, возвращаемая командойAT+UART_CUR?, может быть равна 115273.Параметры <baudrate>– скорость передачи данных UART;<databits>– биты данных- 5 – 5 битов данных
- 6 – 6 битов данных
- 7 – 7 битов данных
- 8 – 8 битов данных
<stopbits>– стоповые биты- 1 – 1 стоповый бит
- 2 – 1,5 стоповых бита
- 3 – 2 стоповых бита
<parity>– бит четности- 0 – нет
- 1 – нечетность
- 2 – четность
<flow control>– управление потоком- 0 – управление потоком выключено
- 1 – включен RTS
- 2 – включен CTS
- 3 – включены и RTS, и CTS
Примечания - Изменения конфигурации НЕ сохраняются во флеш-памяти.
- Использование управления потоком требует поддержки от аппаратных средств:
- MTCK – это UART0 CTS;
- MTDO – это UART0 RTS.
- Передача данных поддерживается на скоростях в диапазоне 110 – 115200*40.
Пример AT+UART_CUR=115200,8,1,0,3 AT+UART_DEF– конфигурация UART по умолчанию, сохраненная во флеш-памяти-
Команда Команда запроса:
AT+UART_DEF?Команда установки:
AT+UART_DEF=<baudrate>,<databits>,<stopbits>,<parity>,<flow control>Отклик +UART_DEF=<baudrate>,<databits>,<stopbits>,<parity>,<flow control>
OKOK Параметры <baudrate>– скорость передачи данных UART;<databits>– биты данных- 5 – 5 битов данных
- 6 – 6 битов данных
- 7 – 7 битов данных
- 8 – 8 битов данных
<stopbits>– стоповые биты- 1 – 1 стоповый бит
- 2 – 1,5 стоповых бита
- 3 – 2 стоповых бита
<parity>– бит четности- 0 – нет
- 1 – нечетность
- 2 – четность
<flow control>– управление потоком- 0 – управление потоком выключено
- 1 – включен RTS
- 2 – включен CTS
- 3 – включены и RTS, и CTS
Примечания - Изменения конфигурации сохраняются в области пользовательских параметров во флеш-памяти, и будут по-прежнему действительны, когда чип будет снова включен.
- Использование управления потоком требует поддержки от аппаратных средств:
- MTCK – это UART0 CTS;
- MTDO – это UART0 RTS.
- Передача данных поддерживается на скоростях в диапазоне 110 – 115200*40.
Пример AT+UART_DEF=115200,8,1,0,3 AT+SLEEP– настройка режимов сна-
Команда Команда запроса:
AT+SLEEP?Команда установки:
AT+SLEEP=<sleep mode>Отклик +SLEEP:<sleep mode>
OKOK Параметр <sleep mode>: - 0 – режим сна выключен
- 1 – режим легкого сна
- 2 – модемный режим сна
Примечания Данная команда может использоваться только в режиме станции. Режим сна по умолчанию – это модемный режим сна. Пример AT+SLEEP=0 AT+WAKEUPGPIO– настройка GPIO для просыпания ESP8266 из режима легкого сна-
Команда установки AT+WAKEUPGPIO=<enable>,<trigger_GPIO>,<trigger_level>[,<awake_GPIO>,<awake_level>]Отклик OK Параметры <enable>- 0 – ESP8266 НЕ может быть выведен из режима легкого сна с помощью GPIO
- 1 – ESP8266 может быть выведен из режима легкого сна с помощью GPIO
<trigger_GPIO>- устанавливает GPIO, который будет будить ESP8266; значение в диапазоне [0...15]
<trigger_level>- 0 – GPIO будит ESP8266 при низком уровне
- 1 – GPIO будит ESP8266 при высоком уровне
[<awake_GPIO>]- необязательно; данный параметр используется для выбора GPIO в качестве флага о просыпании ESP8266 из режима легкого сна; значение в диапазоне [0...15]
[<awake_level>]- необязательно
- 0 – GPIO устанавливается в низкий уровень после процесса пробуждения
- 1 – GPIO устанавливается в высокий уровень после процесса пробуждения
Примечания - Поскольку системе требуется некоторое время для выхода из режима легкого сна, предполагается, что перед отправкой следующей AT команды необходимо подождать минимум 5 мс.
- Значения
<trigger_GPIO>и<awake_GPIO>в команде должны быть разными. - После пробуждения с помощью
<trigger_GPIO>из режима легкого сна, когда ESP8266 пытается уснуть снова, это можно проверить по состоянию<trigger_GPIO>:- если он всё еще в состоянии пробуждения, ESP8266 войдет в модемный режим сна;
- если он НЕ в состоянии пробуждения, ESP8266 войдет в режим легкого сна.
Пример - Настроить ESP8266 на пробуждение из режима легкого сна, когда на GPIO0 низкий уровень:
AT+WAKEUPGPIO=1,0,0 - Настроить ESP8266 на пробуждение из режима легкого сна, когда на GPIO0 высокий уровень. После пробуждения на GPIO13 установить высокий уровень.
AT+WAKEUPGPIO=1,0,1,13,1 - Выключить функцию, которая будит ESP8266 из режима легкого сна с помощью GPIO.
AT+WAKEUPGPIO=0
AT+RFPOWER– установка максимального значения RF мощности передачи-
Команда установки AT+RFPOWER=<TX Power>Отклик OK Параметры <TX Power> – максимальное значение RF мощности передачи; значение в диапазоне [0...82]; единица: 0,25 дБм. Примечание Данная команда устанавливает максимальное значение RF мощности передачи ESP8266; это неточно. Реальное значение может быть меньше, чем установленное значение. Пример AT+RFPOWER=50 AT+RFVDD–установка RF мощности передачи в соответствии с VDD33-
Команда Команда запроса:
AT+RFVDD?
Назначение: проверяет значение на VDD33 ESP8266.Команда установки:
AT+RFVDD=<VDD33>
Назначение: устанавливает RF мощность передаи в соответствии с<VDD33>.Команда выполнения:
AT+RFVDD
Назначение: автоматически устанавливает RF мощность передачи.Отклик +RFVDD:<VDD33>
OKOK OK Параметр <VDD33>– напряжение питания на VDD33 ESP8266; единица: 1/1024 вольта.<VDD33>– напряжение питания на VDD33 ESP8266; диапазон значений: [1900...3300].– Примечание Данная команда должна использоваться, только когда вывод TOUT висит в воздухе, иначе возвращаемое значение будет неправильным. Для правильного измерения напряжения на VDD33 вывод TOUT должен висеть в воздухе. Пример AT+RFVDD=2800 AT+RFAUTOTRACE– установка подстройки радиочастоты-
Команда Команда запроса:
AT+RFAUTOTRACE?Команда установки:
AT+RFAUTOTRACE=<enable>Отклик +RFAUTOTRACE:<enable>
OKOK Параметры <enable>- 0 – подстройка RF частоты выключена
- 1 – подстройка RF частоты включена
Примечания - Функция подстройки RF частоты по умолчанию включена.
- Конфигурация будет сохранена в области пользовательских параметров во флеш-памяти и вступит в силу после перезагрузки чипа.
Пример AT+RFAUTOTRACE=0
AT+RST AT+SYSRAM– проверка доступного размера RAM-
Команда запроса AT+SYSRAM?Отклик +SYSRAM:<remaining RAM size>
OKПараметр <remaining RAM size>– оставшееся пространство ОЗУ, единица: байт. AT+SYSADC– проверка значения АЦП-
Команда запроса AT+SYSADC?Отклик +SYSADC:<ADC>
OKПараметр <ADC>– значение АЦП; единица: 1/1024 вольта. AT+SYSIOSETCFG– установка конфигурации выводов ввода/вывода-
Команда установки AT+SYSIOSETCFG=<pin>,<mode>,<pull-up>Отклик OK Параметры <pin>– номер IO вывода<mode>– рабочий режим IO вывода<pull-up>- 0 – выключить подтяжку
- 1 – включить подтяжку на IO выводе
Примечание Для использования команд AT+SYSIO...посмотрите список выводов ESP8266.Пример AT+SYSIOSETCFG=12,3,1// настроить GPIO12 для работы в качестве GPIO AT+SYSIOGETCFG– проверить режим работы выводов ввода/вывода-
Команда установки AT+SYSIOGETCFG=<pin>Отклик +SYSIOGETCFG:<pin>,<mode>,<pull-up>
OKПараметр <pin>– номер IO вывода<mode>– рабочий режим IO вывода<pull-up>- 0 – подтяжка выключена
- 1 – подтяжка на IO выводе включена
Примечание Для использования команд AT+SYSIO...посмотрите список выводов ESP8266. AT+SYSGPIODIR– настройка направления выводов ввода/вывода общего назначения (GPIO)-
Команда установки AT+SYSGPIODIR=<pin>,<dir>Отклик - Если настройка успешна, то команда вернет
OK - Если IO вывод не в режиме GPIO, команда вернет
NOT GPIO MODE!
ERROR
Параметры <pin>– номер GPIO вывода<dir>- 0 – настраивает GPIO как вход
- 1 – настраивает GPIO как выход
Примечание Для использования команд AT+SYSIO...посмотрите список выводов ESP8266.Пример AT+SYSIOSETCFG=12,3,1// настраивает GPIO12 для работы как GPIO
AT+SYSGPIODIR=12,0// настраивает GPIO12 для работы как вход - Если настройка успешна, то команда вернет
AT+SYSGPIOWRITE– настройка выходного уровня GPIO-
Команда установки AT+SYSGPIOWRITE=<pin>,<level>Отклик - Если настройка успешна, то команда вернет
OK - Если IO вывод не в режиме выхода, команда вернет
NOT OUTPUT!
ERROR
Параметры <pin>– номер GPIO вывода<level>- 0 – низкий уровень
- 1 – высокий уровень
Примечание Для использования команд AT+SYSIO...посмотрите список выводов ESP8266.Пример AT+SYSIOSETCFG=12,3,1// настраивает GPIO12 для работы как GPIO
AT+SYSGPIODIR=12,1// настраивает GPIO12 для работы как выход
AT+SYSGPIOWRITE=12,1// устанавливает на выходе GPIO12 высокий уровень - Если настройка успешна, то команда вернет
AT+SYSGPIOREAD– прочитать входной уровень на GPIO-
Команда установки AT+SYSGPIOREAD=<pin>Отклик - Если конфигурация успешна, команда вернет
+SYSGPIOREAD:<pin>,<dir>,<level>
OK - Если IO вывод не в режиме GPIO, команда вернет
NOT GPIO MODE!
ERROR
Параметры <pin>– номер GPIO вывода<dir>- 0 – GPIO настроен как вход
- 1 – GPIO настроен как выход
<level>- 0 – низкий уровень
- 1 – высокий уровень
Примечание Для использования команд AT+SYSIO...посмотрите список выводов ESP8266.Пример AT+SYSIOSETCFG=12,3,1// настраивает GPIO12 для работы как GPIO
AT+SYSGPIODIR=12,0// настраивает GPIO12 для работы как вход
AT+SYSGPIOREAD=12 - Если конфигурация успешна, команда вернет
AT+SYSMSG_CUR– текущая установка системных сообщений-
Команда установки AT+SYSMSG_CUR=<n>Отклик OK Параметры <n>- бит 0 – настраивает сообщение о прекращении сквозной передачи WiFi-UART
- если бит 0 равен 0, то при прекращении сквозной передачи WiFi-UART нет сообщения; по умолчанию 0;
- если бит 0 равен 1, то при выходе из скозной передачи WiFi-UART будет сообщение
+QUITT // выход из прозрачной передачи
- бит 1 – настраивает сообщение об установлении сетевой передачи
- если бит 1 равен 0, то при установлении сетевого соединения будет выдано сообщение
<Link_ID>,CONNECT
по умолчанию 0; - если бит 1 равен 1, при установлении сетевого соединения будет выдано сообщение
+LINK_CONN:<status_type>,<link_id>,"UDP/TCP/SSL",<c/s>,<remote_ip>,
<remote_port>,<local_port>- <status_type>
- 0 – соединение установлено успешно
- 1 – неудача при установлении соединения
- <c/s>
- 0 – ESP работает как клиент
- 1 – ESP работает как сервер
- <status_type>
- если бит 1 равен 0, то при установлении сетевого соединения будет выдано сообщение
Примечание Изменения конфигурации НЕ сохраняются во флеш-памяти. Пример AT+SYSMSG_CUR=3 - бит 0 – настраивает сообщение о прекращении сквозной передачи WiFi-UART
AT+SYSMSG_DEF– установка системных сообщений по умолчанию-
Команда установки AT+SYSMSG_DEF=<n>Отклик OK Параметры <n>- бит 0 – настраивает сообщение о прекращении сквозной передачи WiFi-UART
- если бит 0 равен 0, то при прекращении сквозной передачи WiFi-UART нет сообщения; по умолчанию 0;
- если бит 0 равен 1, то при выходе из скозной передачи WiFi-UART будет сообщение
+QUITT // выход из прозрачной передачи
- бит 1 – настраивает сообщение об установлении сетевой передачи
- если бит 1 равен 0, то при установлении сетевого соединения будет выдано сообщение
<Link_ID>,CONNECT
по умолчанию 0; - если бит 1 равен 1, при установлении сетевого соединения будет выдано сообщение
+LINK_CONN:<status_type>,<link_id>,"UDP/TCP/SSL",<c/s>,<remote_ip>,
<remote_port>,<local_port>- <status_type>
- 0 – соединение установлено успешно
- 1 – неудача при установлении соединения
- <c/s>
- 0 – ESP работает как клиент
- 1 – ESP работает как сервер
- <status_type>
- если бит 1 равен 0, то при установлении сетевого соединения будет выдано сообщение
Примечание Изменения конфигурации сохраняются в области пользовательских параметров во флеш-памяти. Пример AT+SYSMSG_DEF=3 - бит 0 – настраивает сообщение о прекращении сквозной передачи WiFi-UART
