Технические характеристики
- Контроллер: ESP8266EX Serial WiFi, однокристальная система на основе Tensilica L106 с ультра-низким энергопотреблением, разрядность 32-бит
- Рабочее напряжение: 3.3 В
- Поддерживаемое напряжение: 3.0 - 3.6 В
- Рабочий ток: 71-80 мА
- Максимальный ток: 500 мА
- Ток неглубокого сна: 2 мА
- Ток глубокого сна: 0.02 мА
- Флеш-память: 32 МБит / 4 МБайт
- Протоколы WiFi: 802.11 b/g/n
- Диапазон частот: 2.4ГГц-2.5ГГЦ (2400М-2483.5М)
- Режимы WiFi: Клиент, Точка доступа, Клиент+Точка доступа (station, softAP, station+softAP)
- Защита: WPA-PSK, WPA2-PSK
- Шифрование: WEP, TKIP, AES
- Сетевые протоколы: IPv4, TCP/UDP/HTTP/FTP
- Выводы общего назначения (вход/выход, GPIO): 17
- Максимальный ток на контакт общего назначения: 12 мА, рекомендуемый 6мА
- Аналоговые входы: 1, 10-бит
- ШИМ выходы: 4
- Технология STBC, 1x1 MIMO, 2x1 MIMO
- Выходная мощность в режиме 802.11b: +20dBm
- Интерфейсы: UART, SPI, HSPI, SDIO, I2C, I2S, IrDA, GPIO, PWM
- Интегрированные переключатель приёма/передачи, согласующий высокочастотный трансформатор, усилитель мощности
- Интегрированные блоки: согласования сети, фазовой автоподстройки частоты, управления питанием, блоки регулирования
- Антенна WiFi: PCB, разведена на плате в виде дорожки
- Поддержка файловой системы SPIFFS
- Поддержка функций Smart Link для устройств на Andriod и iOS
- Поддержка АТ-команд, Облачного Сервера и Наборов Разработки (SDK), обновление прошивки
- Шаг между контактами: 2.0мм
- Светодиодная индикация: пользовательский вывод GPIO2
- Рабочая температура: -40°...+85°С
- Размер: 24 х 21 х 3мм
- Вес: 1.34 г.
ESP8266EX функциональная блок-схема
Распиновка ESP-12F (Диаграмма выводов, ESP-12F подключение)
Модуль ESP8266-12F обладает цифровыми выводами (контакты 4-7, 9-14, 16-22) общего назначения, принимающие или передающие данные в двоичной системе (логика "1" и "0"). Под логической единицей подразумевается напряжение +0.75*Vin~3.6 вольта, называемое сигналом высокого уровня. Под логическим нулём подразумевается напряжение -0.3—0.25*Vin вольт, именуемое сигналом низкого уровня. Некоторые выводы имеют встроенный подтягивающий или стягивающий резисторы (см.принципиальную схему). Многие выводы общего назначения поддерживают перенастройку под разные интерфейсы: I2C, I2S, HSPI, UART или ШИМ. Рекомендуемый ток отдельного входа-выхода составляет 6 миллиампер, максимальный ток - 12 миллиампер.
Примечание! Избегайте превышение значений максимального тока более 12 миллиампер и напряжения более 3.3 вольта, способного повредить микроконтроллер.
- EXT_RSTB (RST, RESET) — сброс контроллера ESP8266, активен при низкоуровневом сигнале
- ADC — Вход аналого-цифрового преобразователя (АЦП). Диапазон входного напряжения 0~1 вольт, диапазон преобразования в цифровые значения: 0 - 1023
- CHIP_EN (CH_PD, CH_PU) — вход управления рабочим режимом ESP8266, активен при высокоуровневом сигнале
- GPIO16 — вход-выход общего назначения. Соединение с выводом EXT_RSTB выводит ESP8266 из глубокого сна
- GPIO0-GPIO15 — вход-выход общего назначения для работы с цифровыми данными. Могут быть переназначены на другие функции. GPIO6-GPIO11 аппаратно соединены с чипом встроенной памяти и не рекомендуются для использования в иных целях, кроме подключения внешней памяти. (в Arduino IDE все входы-выходы имеют соответствующую нумерацию: GPIO1 = 1, GPIO2 = 2 и т.д.
- VCC — вход напряжения питания +3.0~3.6В для ESP8266
- GND — общий (заземление)
Специальные функции:
- Асинхронный последовательный интерфейс UART из 2х линий, устанавливает связь с другими устройствами по шине UART:
- UART0_RX — контакт GPIO3
- UART0_TX — контакт GPIO1
- UART0_RTS — контакт GPIO15
- UART0_CTS — контакт GPIO13
- UART1_TX — контакт GPIO2, может использоваться для вывода отладочной информации
Подключение других устройств к выводам осуществляется по схеме RX->TX, TX->RX.
- Двунаправленный последовательный интерфейс IIC/I2C, позволяет коммутировать внешние датчики, сенсоры, дисплеи т.д.:
- SDA — контакт GPIO2
- SCL — контакт GPIO14
- Основной интерфейс последовательной шины SPI, режимы главный/второстепенный:
- SPI_CLK — контакт GPIO6
- SPI_MISO — контакт GPIO7
- SPI_MOSI — контакт GPIO8
- SPI_HD — контакт GPIO9
- SPI_WP — контакт GPIO10
- SPI_CS0 — контакт GPIO11
- SPI_CS1 — контакт GPIO1
- SPI_CS2 — контакт GPIO0
- Последовательный периферийный интерфейс HSPI во второстепенном режиме, допускает подключение дополнительных устройств, совершающих обмен данными по шине SPI (дисплеи, микроконтроллеры и т.д.):
- HSPI_CS - контакт GPIO15
- HSPI_MISO - контакт GPIO12
- HSPI_MOSI - контакт GPIO13
- HSPI_CLK - контакт GPIO14
Коммутация с другими устройствами осуществляется по схеме CS->CS, CLK->CLK, MISO->MOSI, MOSI->MISO
- ШИМ — цифровая широтно-импульсная модуляция сигнала, выводы GPIO4, GPIO12, GPIO14, GPIO15 с разрядностью до 14-бит
- Интерфейс электрической последовательной шины I2S. В основном, служит для сбора, обработки и передачи аудиоданных, или для приёма/передачи последовательных данных по двум раздельным шинам:
- I2SI_DATA — приём, контакт GPIO12
- I2SI_BCK — приём, контакт GPIO13
- I2SI_WS — приём, контакт GPIO14
- I2SO_BCK — передача, контакт GPIO15
- I2SO_DATA — передача, контакт GPIO3
- I2S0_WS — передача, контакт GPIO2
- Периферийный интерфейс IrDA (ИК дистанционное управление), реализуемый на программном уровне. Предназначен для модуляции несущей частоты 38кГц, демодуляции или кодирования NEC. Дальность передачи сигнала составляет около 1м:
- IR_Tx — контакт GPIO14
- IR_Rx — контакт GPIO5
- Интерфейс безопасных цифровых входов/выходов SDIO, предназначен для коммутации с внешней флеш-памятью стандарта SD по последовательной шине:
- SDIO_DATA_0 — контакт GPIO7
- SDIO_DATA_1 — контакт GPIO8
- SDIO_DATA_2 — контакт GPIO9
- SDIO_DATA_3 — контакт GPIO10
- SDIO_CMD — контакт GPIO11
- SDIO_CLK — контакт GPIO6
Режимы энергосбережения ESP8266EX
За исключением стандартных режимов полного функционирования и выключенного состояния, модуль ESP-12F поддерживает энергосберегающие режимы, предназначенные для каждого определённого случая.
- Modem-sleep — настраивается для приложений, использующих функции ШИМ или I2S, заставляющие процессор работать. В случаях, когда WiFi-связь установлена и передача данных не требуется, схема Wi-Fi модема может быть отключена для экономии энергии. Например, в режиме DTIM3, когда ESP8266 "спит" 300 миллисекунд и просыпается на 3 миллисекунды для приёма от точки доступа пакетов беспроводных Маяков (Beacon), общее потребление тока составляет около 20мА.
- Light-sleep — используется в задачах, в которых поддерживается соединение Wi-Fi и передача данных не требуется, при этом процессор может быть приостановлен. Например, режим коммутатора Wi-Fi. Общее среднее потребление тока составляет около 2 мА.
- Deep-sleep — глубокий сон оптимален для приложений, которые не требуют подключения Wi-Fi и передают данные c большими задержками по времени. К таким задачам относятся датчики температуры, выполняющие измерения каждые 100 секунд. Например, когда ESP8266EX "спит" 300 секунд и просыпается для соединения с точкой доступа (около 0.3-1 секунды), общее среднее потребление тока намного меньше 1 мА.
Режимы запуска модулей серии ESP
Режим |
CHIP_EN |
GPIO15 |
GPIO0 |
GPIO2 |
Загрузка через UART |
высокий |
низкий |
низкий |
высокий |
Запуск из флеш памяти |
высокий |
низкий |
высокий |
высокий |
Режим SDIO |
высокий |
высокий |
не важно |
не важно |
Значения "Высокий" и "Низкий" - уровень сигнала на входе соответствующего контакта.
Добавление платформы ESP8266 в среду разработки ARDUINO IDE
Установка совместимых библотек для корректной работы с платформой ESP8266EX аналогично всему модульному ряду ESP. Пример настройки редактора ARDUINO IDE для ESP8266EX приведён в описании модуля ESP-01.
АТ команды ESP8266, режим роутера-модема
Коллектив компании Espressif Systems, для своих чипов ESP8266 и их разновидностей, выпускает прошивки со встроенным интерпретатором AT-команд, основанные на обновляемых программных наборах разработки ПО (SDK) с открытым кодом. Пользователь имеет возможность компилировать собственные кастомные прошивки, добавляя или исключая поддержку необходимых в проекте функций. Подобные прошивки формируют из контроллера ESP8266 своеобразный роутер-модем, вследствие чего способ взаимодействия с процессором ESP-12F значительно отличается от обычного. В коде ПО заложен перечень предопределённых заскриптованных команд, выполняющие различные действия с настройками контроллера ESP8266. АТ команды позволяют устанавливать и разрывать WiFi-соединения, отправлять и получать данные, или менять параметры шины UART. Любая АТ команда передаётся в ESP8266 через периферийный последовательный интерфейс UART (GPIO1, GPIO3) от ведущего устройства и всегда начинается с аббревиатуры АТ. Перечень поддерживаемых АТ команд разделён на три основные группы с подробным описанием каждой функции, включая примеры:
- Основные АТ команды
- WiFi AT команды
- TCP/IP AT команды
АТ инструкции ESP8266 v1.5.4 (англ., PDF)
AT инструкции ESP8266 v3.0.2 (англ., PDF)
АТ команды ESP8266 в примерах v1.3 (англ., PDF)
Документация
- Спецификация ESP12F (англ., PDF)
- Официальный ресурс AI-Thinker