Использование AT команд для программирования модуля ESP8266


В предыдущей статье на нашем сайте мы рассмотрели начало работы с модулем ESP8266 и сконструировали небольшую плату для его программирования с использованием платы (адаптера) FTDI, которая позволяет программировать модули ESP как с использованием AT команд, так и с помощью среды Arduino IDE.

Внешний вид проекта использования AT команд для программирования модуля ESP8266

В данной статье мы рассмотрим использование AT команд для работы с модулем ESP8266, а в следующей статье мы рассмотрим программирование ESP8266 с помощью Arduino IDE.

Основы программирования модуля ESP8266 с помощью AT команд

Самый простой способ программирования ESP модулей – это использование AT команд. Буквы AT здесь являются сокращением от английского слова "ATtention", что означает "внимание". AT команды обычно используются для управления каким-либо модемом, но в данном случае мы будем их использовать для программирования модуля ESP8266. Любая AT команда всегда начинается с символов AT, после которых следуют конкретные инструкции. Полный список AT команд, которые можно использовать для взаимодействия с модулем ESP8266, приведен в официальной документации от компании Espressif Systems.

В данной статье мы рассмотрим лишь небольшую часть этих команд, в частности мы рассмотрим проверку с их помощью версии программного обеспечения (прошивки) модуля и установки модуля в режим точки доступа (Access Point, AP).

AT команды модулю можно передавать с помощью любого программного обеспечения, реализующего функции последовательного монитора (Serial monitor), например, Putty или Arduino. Естественно, перед этим должна быть установлена последовательная связь между модулем ESP8266 и компьютером. Для установления этой последовательной связи необходимо подключить контакты Rx и Tx модуля ESP8266 к контактам Tx и RX соответственно платы FTDI как рассмотрено в нашем предыдущем руководстве.

Необходимые компоненты

  1. Модуль ESP8266 (купить на AliExpress).
  2. Плата FTDI (3.3V) (купить на AliExpress).
  3. Любое программное обеспечение, реализующее функции последовательного монитора, например, Putty или Arduino.

Схема проекта

Схема для программирования модуля ESP8266 с помощью AT команд представлена на следующем рисунке.

Схема для программирования модуля ESP8266 с помощью AT команд

Более подробно схема соединений в данной схеме и назначение ее элементов рассмотрены в нашей предыдущей статье.

Использование AT команд для работы с модулем ESP8266

Выполните следующую последовательность шагов.

Шаг 1. Установите любое программное обеспечение монитора последовательного порта, мы использовали программу Arduino Serial Monitor – я думаю, большинство читателей нашего сайта с ней знакомы.

Шаг 2. Соберите схему нашего проекта, показанную выше, подключите к ней модуль ESP8266 и плату FTDI и подайте питание на схему. Убедитесь в том, кто контакт GPIO0 модуля никуда не подключен, после этого на короткое время замкните контакт RST (сброса) модуля на землю (ground) и затем отключите его от земли (оставьте его неподключенным). В нашей схеме проекта для переключения между режимом AT команд и режимом с Arduino IDE мы использовали переключатель (джампер). Также у нас в схеме есть специальная кнопка (Push button) чтобы сбрасывать модуль ESP8266. В результате у вас должна получиться следующая конструкция проекта:

Переключение схемы нашего проекта в режим AT команд

Шаг 3. Подключите вашу FTDI плату к компьютеру и откройте диспетчер устройств. В результате этого вы должны увидеть к какому COM порту подключена ваша плата FTDI, запишите этот номер. В нашем случае плата FTDI оказалась подключенной к порту COM20 как показано на следующем рисунке.

Определение COM порта, к которому подключена плата FTDI

Шаг 4. Откройте вашу Arduino IDE, убедитесь в том, что плата FTDI подключена к COM порту (в нашем случае это порт COM20). Это можно проверить в пункте меню Tools-> Ports. После этого откройте монитор последовательного порта (Serial Monitor) и выберите режим “Both NL&CR” и скорость передачи данных “115200” как показано на рисунке ниже.

Примечание: ваш модуль ESP8266 может не поддерживать скорость 115200 бод, это зависит от поставщика модуля. Если скорость 115200 не работает, попробуйте скорости 9600, 38400 и 74880.

Шаг 5. Убедитесь в том, что контакт GPIO0 модуля никуда не подключен (проверьте переключатель в схеме) и нажмите кнопку сброса. После этого вы увидите случайные значения в мониторе последовательного порта, затем они прекратятся и появится слово “ready” (готов) как показано на следующем рисунке.

Настройка последовательного порта модуля

Если вы дошли до этого момента, то значит теперь вы можете программировать ваш модуль ESP8266 с помощью AT команд. Далее мы рассмотрим конфигурирование модуля в режиме AP+STA.

Шаг 6. Сначала проверим работоспособность модуля, передав ему команду “AT” (после ввода команды необходимо нажать ввод), модуль в ответ на данную команду должен ответить словом “OK”.

Описание команды AT

Шаг 7. Версии SDK (набор инструментальных средств разработки программного обеспечения) и прошивки модуля можно проверить с помощью команды “AT+GMR”.

Описание команды AT+GMR

Шаг 8. Модули ESP могут работать как в режиме AP (точки доступа, Access Point) и режиме STA (станции), так и в совместном режиме AP и STA. Давайте переведем модуль в режим AP чтобы проверить его работоспособность. Для этого передайте ему команду “AT+CWMODE=2”, если все нормально, модуль должен ответить “OK”.

Описание команды AT+CWMODE

После исполнения всех команд, которые мы рассмотрели в данной статье, ваш монитор последовательного порта должен выглядеть примерно следующим образом:

Результаты работы нашего проекта в мониторе последовательного порта

После этого вы можете проверить действительно ли ваш модуль ESP8266 работает в режиме точки доступа (AP), просто подключившись к его сети Wi-Fi. Откройте настройки сети Wi-Fi на вашем смартфоне или ноутбуке, выполните поиск доступных сетей, среди них вы должны увидеть сеть от модуля ESP, в нашем случае эта сеть имеет название ESP_A3A3E7 как показано на следующем рисунке.

Проверка работы модуля ESP8266 в качестве точки доступа

Видео, демонстрирующее работу проекта

Источник статьи

(Проголосуй первым!)
Загрузка...
2 146 просмотров

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *