Что такое ESP8266 и как его использовать. Какие преимущества дает этот Wi-Fi модуль для IoT разработки. На что обратить внимание при выборе и подключении ESP8266. Как программировать ESP8266 с помощью Arduino IDE.
Что такое ESP8266 и почему этот Wi-Fi модуль так популярен
ESP8266 — это недорогой Wi-Fi модуль с интегрированным микроконтроллером, который произвел настоящую революцию в мире интернета вещей (IoT). Этот чип позволяет легко и дешево добавить Wi-Fi подключение практически к любому устройству.
Основные преимущества ESP8266:
- Низкая стоимость — от $2 за модуль
- Встроенный мощный 32-битный процессор
- Поддержка Wi-Fi 802.11 b/g/n
- Низкое энергопотребление
- Небольшие размеры
- Простота использования и программирования
Благодаря этим качествам ESP8266 быстро стал самым популярным решением для создания недорогих IoT устройств и «умных» гаджетов. Его используют как в любительских DIY проектах, так и в коммерческих продуктах.
Технические характеристики и возможности ESP8266
ESP8266 имеет впечатляющие характеристики для своих размеров и цены:
- Процессор: 32-битный RISC процессор Tensilica Xtensa LX106 с тактовой частотой до 160 МГц
- Память: 64 КБ ОЗУ для инструкций, 96 КБ ОЗУ для данных
- Флеш-память: от 512 КБ до 4 МБ
- Wi-Fi: 802.11 b/g/n
- Периферия: UART, SPI, I2C, I2S, ADC, PWM, GPIO
- Напряжение питания: 3,0-3,6 В
- Размеры: от 5×5 мм (ESP8285)
ESP8266 поддерживает несколько режимов работы Wi-Fi:
- Режим станции (STA) — подключение к существующей Wi-Fi сети
- Режим точки доступа (AP) — создание собственной Wi-Fi сети
- Комбинированный режим (STA+AP)
Это позволяет использовать ESP8266 как для подключения устройств к интернету через домашнюю сеть, так и для создания автономных систем с собственной точкой доступа.
Разновидности модулей на базе ESP8266
ESP8266 выпускается в различных модификациях, от простейшего ESP-01 до мощных девборд с большим количеством выводов. Наиболее популярные варианты:
- ESP-01 — самый компактный модуль с минимумом выводов
- ESP-12E/F — полнофункциональный модуль с большим количеством GPIO
- NodeMCU — плата разработки с USB и удобной распиновкой
- Wemos D1 Mini — компактная плата, совместимая с Arduino
При выборе модуля стоит учитывать количество доступных GPIO, объем памяти, наличие USB-TTL преобразователя для программирования. Для начинающих удобнее использовать готовые платы вроде NodeMCU или Wemos D1 Mini.
Как подключить и настроить ESP8266
Для работы с ESP8266 потребуется:
- Сам модуль ESP8266
- USB-TTL преобразователь для программирования (если не встроен в модуль)
Стабильный источник питания 3,3В- Среда разработки Arduino IDE с установленной поддержкой ESP8266
Процесс подключения:
- Подключите ESP8266 к USB-TTL преобразователю
- Подайте питание 3,3В на модуль
- Установите драйвер CH340G (для большинства модулей)
- Выберите правильную плату и порт в Arduino IDE
- Загрузите тестовый скетч для проверки работоспособности
Для настройки Wi-Fi соединения используются AT-команды или специальные функции в скетче Arduino. Модуль можно подключить к существующей сети или настроить как точку доступа.
Программирование ESP8266 с помощью Arduino IDE
Arduino IDE — самый простой способ начать программировать ESP8266. Процесс установки:
- Установите Arduino IDE
- Добавьте URL для загрузки платформы ESP8266: http://arduino.esp8266.com/stable/package_esp8266com_index.json
- Установите плату «ESP8266» через менеджер плат
- Выберите нужную плату в меню «Инструменты» > «Плата»
Теперь можно писать скетчи для ESP8266 так же, как для Arduino. Доступны стандартные функции вроде digitalWrite() и analogRead(), а также специфичные для ESP8266 библиотеки для работы с Wi-Fi.
Пример простейшего скетча для мигания светодиодом:
«`cpp void setup() { pinMode(LED_BUILTIN, OUTPUT); } void loop() { digitalWrite(LED_BUILTIN, HIGH); delay(1000); digitalWrite(LED_BUILTIN, LOW); delay(1000); } «`Создание IoT проектов на базе ESP8266
ESP8266 отлично подходит для создания различных IoT устройств. Некоторые популярные проекты:
- Умный термостат с удаленным управлением
- Система мониторинга погоды с отправкой данных в облако
- Умная розетка с контролем энергопотребления
- Беспроводной датчик открытия двери/окна
- Система управления освещением через интернет
Для реализации таких проектов ESP8266 обычно выступает в роли «моста» между датчиками/исполнительными устройствами и интернетом. Он собирает данные с сенсоров, отправляет их на сервер и принимает команды управления.
Пример кода для отправки данных с датчика температуры на сервер ThingSpeak:
«`cpp #includeОптимизация энергопотребления ESP8266
ESP8266 может потреблять значительное количество энергии, особенно при активном использовании Wi-Fi. Для увеличения времени автономной работы можно использовать следующие методы:
- Использование режима глубокого сна (deep sleep) между измерениями
- Отключение Wi-Fi, когда он не нужен
- Снижение тактовой частоты процессора
- Оптимизация кода для минимизации времени работы
- Использование эффективных источников питания и преобразователей напряжения
Пример использования режима глубокого сна:
«`cpp #includeONPAD.RU / WiFi модуль ESP-12E на базе ESP8266 Цена: 690.00 руб.
Технические характеристики
| WiFi протоколы: | 802.11 b/g/n |
|---|---|
| Частотный диапазон: | 2,4ГГц–2,5ГГц (2400М–2483,5М) |
| Периферийные шины: | UART/HSPI/I2C/I2S/инфракрасный интерфейс удаленного управления |
| Рабочее напряжение: | 3,0 – 3,6 В |
| Рабочий ток: | около 80 мА |
| Размеры: | 16мм x 24мм x 3мм |
| WiFi режим: | станция, программная точка доступа, программная точка доступа + станция |
| Безопасность: | WPA/WPA2 |
| Шифрование: | WEP/TKIP/AES |
| Обновление прошивки: | загрузка через UART / OTA (через сеть) / загрузка и запись прошивки через хост |
| Разработка ПО: | поддержка Cloud Server Development / SDK для разработки пользовательских прошивок |
| Сетевые протоколы: | IPv4, TCP/UDP/HTTP/FTP |
| Пользовательская настройка: | Набор AT команд, Cloud Server, приложение Android/iOS |
Описание
WiFi модуль ESP-12E разработан компанией Ai-thinker и построен на базе процессора с ядром ESP8266, отличительной особенностью которого является наличие радиоинтерфейса WiFi.
Ядро ESP8266 интегрировано в Tensilica L106 – 32-битный микроконтроллер с ультранизким энергопотреблением. Поддержка тактовых частот 80 и 160 МГц, поддержка RTOS, встроенные Wi-Fi MAC/BB/RF/PA/LNA, микрополосковая антенна на плате модуля.
Модуль поддерживает стандарт IEEE802.11 b/g/n, полный стек TCP/IP протоколов. Пользователи могут использовать модули либо в качестве дополнения для подключения какого-либо устройства к сети, либо в качестве отдельного сетевого контроллера.
MCU
ESP8266EX встроен в 32-битный микроконтроллер (MCU) Tensilica L106, который отличается ультранизким энергопотреблением 16-битной RISC архитектурой. Тактовая частота CPU составляет 80 МГц. Также она может достичь максимального значения 160 МГц.
ESP8266EX часто интегрируется с внешними датчиками и другими специальными устройствами через его выводы GPIO; код для подобных приложений поставляется в примерах в SDK.
Внутренние SRAM и ROM.
Однокристальная WiFi система ESP8266EX встраивается вместе с контроллером памяти; включая SRAM и ROM.
MCU может обращаться к памяти через интерфейсы iBus, dBus и AHB.
Согласно текущей версии SDK, пользователю доступно следующее пространство памяти: Размер RAM < 36 Кбайт, то есть, когда ESP8266EX работает в режиме клиентской станции и подключен к роутеру, программируемое пространство, доступное пользователю в куче и секции data, составляет около 36 Кбайт;
в однокристальной системе нет программируемой памяти ROM; пользовательская программа должна храниться во внешней SPI флеш-памяти.
Внешняя SPI флеш-память
В модуль для хранения пользовательских программ установлена внешняя SPI флеш-память размером 4 Мбайта. Если необходимо больший объем, то необходимо установить флеш-память большего размера. Теоретически, поддерживается емкость до 16 Мбайт.
Предполагаемая емкость SPI флеш-памяти:
OTA выключено: минимальный размер флеш-памяти, который будет поддерживаться, составляет 512 Кбайт;
OTA включено: минимальный размер флеш-памяти, который будет поддерживаться, составляет 1 Мбайт; Поддерживается несколько SPI режимов, в том числе, Standard SPI, Dual SPI и Quad SPI.
Перед загрузкой во флеш-память выбирайте правильный SPI режим, иначе прошивки/программы, которые вы загрузили, могут работать неправильно.
MOD-WIFI-ESP8266 от 1106 рублей в наличии 10 шт производства OLIMEX MOD-WIFI-ESP8266
всего в наличии 10 шт
| Количество | Цена ₽/шт |
|---|---|
| 1 | 1 414 |
| 3 | 26000″> 1 331 |
| 10 | 1 106 |
В корзину
и получите
+165 баллов
Бесплатная доставка
Купить MOD-WIFI-ESP8266 от 1 шт с помощью банковской карты можно прямо сейчас на нашем сайте.
Работаем с частными и юридическими лицами.
MOD-WIFI-ESP8266 описание и характеристики
Модуль: WiFi; SDIO,SPI,UART; штыревое гнездо,UEXT; 2,4ГГц; THT
-
Производитель
OLIMEX
-
Монтаж
THT
-
Вид разъемов
штыревое гнездо
-
Вид разъемов
UEXT
-
Характерные особенности средств разработки и программаторов
датчик температуры
-
Характерные особенности средств разработки и программаторов
память Flash 16Mб
-
Частота
2,4ГГц
-
Интерфейс
SPI
-
Интерфейс
UART
-
Интерфейс
SDIO
-
Протокол коммуникации
IEEE 802.
11b/g/n -
Тип модуля связи
WiFi
-
Характеристики модулей связи
антенна
-
Шифрование
WPA
-
Шифрование
WPA2-PSK
-
Шифрование
WPS
-
Совместимые микросхемы
ESP8266
-
Чувствительность приемника
-98дБм
-
Мощность передатчика
19,5дБм
-
Вес
17.
7g
Бесплатная доставка
заказов от 5000 ₽
Доставим прямо в руки или в ближайший пункт выдачи
Смежные товары
1513431-1
Антенна; Bluetooth,WiFi,ZigBee; 0дБи; SMT; 2400÷2483,5МГц; 50Ом
от 1 918 ₽
+5754 балла
Подробнее
1513430-1
Антенна; Bluetooth,WiFi,ZigBee; 0дБи; SMT; 2400÷2483,5МГц; 50Ом
от 1 918 ₽
+5754 балла
Подробнее
ESP8266EX
IC: SoC; WiFi; FTP,HTTP,IPv4,TCP,UDP; SMD; QFN32; 170/56мА
от 1 918 ₽
+5754 балла
Подробнее
KON-RASP-01
Адаптер; штыревое гнездо,SIM; адаптер; DCTR-72DAT,Raspberry Pi
от 1 918 ₽
+5754 балла
Подробнее
A1356
Антенный модуль; 13,56МГц; RS232; 130×100мм; 8÷13ВDC
по запросу
Подробнее
Похожие товары
BPI-PICOW-S3
Ср-во разработки: WiFi; ESP32-S3; Micro USB,PCB краевой; 3,3ВDC
от 1 391 ₽
+2087 баллов
Подробнее
S2-108HA
Ср-во разработки: вычислительное
от 14 451 ₽
+2168 баллов
Подробнее
MPEVB00B
Ср-во разработки: вычислительное
от 15 939 ₽
+2391 балл
Подробнее
SIM33ELA-TE
Ср-во разработки: вычислительное; UART; SIM33ELA; штыревой; NMEA
от 6 907 ₽
+1036 баллов
Подробнее
ENW89837AZKF
Ср-во разработки: Bluetooth Classic / Low Energy; TC35661A
от 31 878 ₽
+4782 балла
Подробнее
ESP32-S2-DEVKITM-1R
Ср-во разработки: WiFi; I2C,I2S,SPI,UART,USB OTG; WIFI; 5ВDC
от 2 024 ₽
+304 балла
Подробнее
ESP32-S2-DEVKIT-LIPO
Ср-во разработки: WiFi; USB,WiFi; Ch440T,ESP32-S2-WROOM; 5ВDC
от 1 900 ₽
+855 баллов
Подробнее
WIZFI360-EVB-SHIELD
Ср-во разработки: WiFi; GPIO,UART,USB; макетная плата
от 6 679 ₽
+1002 балла
Подробнее
XKB2-A2T-WWC
Ср-во разработки: RF; SPI,UART
от 36 938 ₽
+5541 балл
Подробнее
WIZ750SR-100-EVB
Ср-во разработки: Ethernet; Ethernet,I2C,SPI,UART; W7500
от 17 457 ₽
+2619 баллов
Подробнее
DT100112
Ср-во разработки: Microchip PIC; ADC,I2C,PWM,SPI,UART,USB 2.
0
от 13 184 ₽
+1978 баллов
Подробнее
DEVKIT MULTITECH HF MINI READER
Ср-во разработки: вычислительное; GPIO,SAM,UART,USB micro; RFID
от 47 971 ₽
+7196 баллов
Подробнее
Ваша заявка отправлена. В ближайшее время мы свяжемся с Вами по указанным контактам.
20800078
Enclosure, Accessory, Coding Pegs Срок поставки 3-4 недели
Поздравляем! Вы получили бесплатную доставку на ваш заказ!
Оформить заказ
Заказанное количество не является кратным.
Правильное количество должно быть кратным .
Введите номер вашего мобильного телефона
Нажимая на кнопку «Получить СМС с кодом для регистрации», Вы принимаете условия пользовательского соглашения.
Введите номер вашего мобильного телефона
Нажимая на кнопку «Получить СМС с кодом доступа», Вы принимаете условия пользовательского соглашения.
Введите номер вашего мобильного телефона
Нажимая на кнопку «Получить СМС с кодом доступа», Вы принимаете условия пользовательского соглашения.
Введите номер вашего мобильного телефона
Нажимая на кнопку «Получить СМС с кодом доступа», Вы принимаете условия пользовательского соглашения.
Сохранение профиля
Данные сохранены!
Отменить удаление будет невозможно
Введите название Запись начинается на строке12
Предварительный просмотр вашего файла отображается ниже.
Ваши столбцы были сопоставлены на основе содержания вашего файла. Пожалуйста, просмотрите выбранные варианты и используйте выпадающие списки над каждым столбцом, чтобы внести какие-либо изменения, а также сопоставить столбцы, которые мы не смогли отобразить автоматически. Требуется столбец как для номера детали, так и для количества.
Куда доставить заказ?
Москва
Добавьте точный адрес, удобный пункт выдачи или постамат, чтобы заранее увидеть условия доставки товаров
Выберите город
Установка — ESP8266 Arduino Core 3.1.2-9-gad9aaef8 документация
Менеджер плат
Это рекомендуемый метод установки для конечных пользователей.
Предварительные условия
-
Arduino 1.6.8, получить от Arduino Веб-сайт.
-
Интернет-соединение
-
Интерпретатор Python 3 (только для Mac/Linux, для установки Windows предоставляется собственный)
Инструкции
-
Запустите Arduino и откройте окно настроек.
-
Войти
https://arduino.esp8266.com/stable/package_esp8266com_index.jsonв поле Дополнительные URL-адреса диспетчера плат . Вы можете добавить несколько URL-адреса, разделяя их запятыми. -
Откройте Диспетчер досок в меню «Инструменты» > «Плата» и найдите esp8266 . Платформа.
-
Выберите нужную версию из раскрывающегося списка.
-
Нажмите кнопку установить .
Не забудьте выбрать плату ESP8266 в меню «Инструменты» > «Плата». после установки.
Для получения дополнительной информации о Arduino Board Manager см.:
-
https://www.arduino.cc/en/guide/cores
Использование версии git
Это рекомендуемый метод установки для участников и библиотеки Разработчики.
Необходимые условия
-
Arduino 1.6.8 (или новее, текущая рабочая версия 1.8.5)
-
гит
-
Python ≥3.
7 (https://python.org) -
терминал, консоль или командная строка (в зависимости от вашей ОС)
-
Интернет-соединение
-
Удаление любой версии ядра, установленной через Board Manager
Инструкции — Windows 10
-
Во-первых, убедитесь, что у вас еще не установлена основная версия ESP8266. с помощью Board Manager (см. выше). Если вы это сделаете, удалите его из Совет менеджера, прежде чем продолжить. Также желательно стереть Arduino15 содержание.
-
Установите git для Windows (если это еще не сделано; см. https://git-scm.com/download/win)
-
Откройте командную строку (cmd) и перейдите в каталог Arduino по умолчанию. Обычно это альбом для рисования каталог (обычно
C:\users\{username}\Documents\Arduino, где переменная среды%USERPROFILE%обычно содержитC:\users\{username}) -
Клонируйте этот репозиторий в каталог hardware/esp8266com/esp8266.
cd %USERPROFILE%\Documents\Arduino\ если аппаратное обеспечение mkdir не существует оборудование для компакт-дисков если не существует esp8266com mkdir esp8266com компакт-диск esp8266com клон git https://github.com/esp8266/Arduino.git esp8266
Вы должны получить следующую структуру каталогов в
C:\Users\{ваше имя пользователя}\Documents\Ардуино | --- библиотеки --- аппаратное обеспечение | --- esp8266com | --- esp8266 | --- загрузчики --- ядра --- документ --- библиотеки --- упаковка --- тесты --- инструменты --- варианты --- платформа.txt --- программисты.txt --- README.md --- доски.txt --- ЛИЦЕНЗИЯ -
Инициализировать субмодули
cd %USERPROFILE%\Documents\Arduino\hardware\esp8266com\esp8266 обновление подмодуля git --init
Если в процессе сборки возникают сообщения об отсутствующих файлах, связанных с
SoftwareSerial, это должно быть связано с тем, что этот шаг был пропущен и является обязательным.![]()
-
Скачать бинарные инструменты
компакт-диск инструменты python3 get.py
-
Перезапустите Ардуино
-
При использовании среды разработки Arduino IDE для Visual Studio (https://www.visualmicro.com/) обязательно щелкните Инструменты — Visual Micro — Повторное сканирование наборов инструментов и библиотек
-
При последующем обновлении локальной библиотеки перейдите в каталог esp8266 и выполните git pull
cd %USERPROFILE%\Documents\Arduino\hardware\esp8266com\esp8266 статус git git тянуть
Обратите внимание, что теоретически вы можете установить в C:\Program Files (x86)\Arduino\hardware , однако это имеет последствия для безопасности, не говоря уже о том, что каталог часто сбрасывается при переустановке Arduino IDE. У него есть преимущество (или недостаток, в зависимости от вашей точки зрения) — он доступен для всех пользователей вашего ПК, использующих Arduino.
Инструкции — Другая ОС
-
Во-первых, убедитесь, что у вас еще не установлена основная версия ESP8266. с помощью Board Manager (см. выше). Если вы это сделаете, удалите его из Совет менеджера, прежде чем продолжить. Также желательно стереть .arduino15 (Linux) или содержимое Arduino15 (MacOS).
-
Откройте консоль и перейдите в каталог Arduino. Это может быть либо ваш каталог Sketchbook (обычно
), или каталог самого приложения Arduino, выбор за вами./Arduino -
Клонируйте этот репозиторий в каталог hardware/esp8266com/esp8266. В качестве альтернативы, клонируйте его в другое место и создайте символическую ссылку, если ваша ОС поддерживает их.
компакт-диск оборудование мкдир esp8266com компакт-диск esp8266com клон git https://github.com/esp8266/Arduino.git esp8266
Вы должны получить следующую структуру каталогов:
Ардуино | --- аппаратное обеспечение | --- esp8266com | --- esp8266 | --- загрузчики --- ядра --- документ --- библиотеки --- упаковка --- тесты --- инструменты --- варианты --- платформа.
txt
--- программисты.txt
--- README.md
--- доски.txt
--- ЛИЦЕНЗИЯ
-
Инициализировать субмодули
компакт-диск esp8266 обновление подмодуля git --init
Если в процессе сборки возникают сообщения об отсутствующих файлах, связанных с
SoftwareSerial, это должно быть связано с тем, что этот шаг был пропущен и является обязательным.
-
Скачать бинарные инструменты
компакт-диск инструменты python3 get.py
Если вы получите сообщение об ошибке, в котором говорится, что python3 не найден, вам необходимо установить его (большинство современных UNIX-подобных ОС предоставляют Python 3 как часть установки по умолчанию). Для установки вам нужно будет использовать
.sudo yum install python3,sudo apt install python3илиbrew install python3по мере необходимости. На Mac вы можете получить сообщение об ошибке, например:
python3 get.py Платформа: x86_64-яблоко-дарвин Загрузка python3-macosx-placeholder.tar.gz Traceback (последний последний вызов): Файл "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/urllib/request.py", строка 1317, в do_open encode_chunked = req.has_header («Передача-кодирование»)) ... Файл "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ssl.py", строка 1117, в do_handshake self._sslobj.do_handshake() ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] проверка сертификата не удалась: не удалось получить сертификат локального эмитента (_ssl.c:1056) Это связано с тем, что Homebrew на Mac не всегда устанавливает необходимые SSL-сертификаты по умолчанию. Установите их вручную (настройте Python 3.7 по мере необходимости) с помощью: ..код::баш cd "/Applications/Python 3.7/" && sudo "./Install Certificates.command" -
Перезапустите Ардуино
-
При последующем обновлении локальной библиотеки перейдите в каталог esp8266 и выполните git pull
компакт-диск оборудование\esp8266com\esp8266 статус git git тянуть
Использование PlatformIO
PlatformIO
— это экосистема с открытым исходным кодом для разработки IoT с кроссплатформенной
система сборки, менеджер библиотек и полная поддержка Espressif
(ESP8266) разработки.
Он работает на следующих популярных хостах, работающих
системы: macOS, Windows, Linux 32/64 и Linux ARM (например, Raspberry Pi,
BeagleBone, CubieBoard).
-
Что такое PlatformIO?
-
PlatformIO IDE
-
PlatformIO Core (инструмент командной строки)
-
Расширенное использование — пользовательские настройки, загрузка в LittleFS, беспроводная связь (OTA), промежуточная версия
-
Интеграция с облачными и автономными IDE — Cloud9, Codeanywhere, Eclipse Che (Codenvy), Atom, CLion, Eclipse, Emacs, NetBeans, Qt Creator, Sublime Text, VIM, Visual Studio и VSCode
-
Примеры проектов
Начало работы с макетной платой ESP8266 NodeMCU | Random Nerd Tutorials
Впервые на ESP8266? Начало здесь! ESP8266 — это система Wi-Fi на чипе (SoC), производимая Espressif Systems. Это отлично подходит для проектов IoT и домашней автоматизации. Эта статья представляет собой руководство по началу работы с платой разработки ESP8266.
Впервые на ESP8266? Вы находитесь в правильном месте. Это руководство содержит всю информацию, необходимую для начала работы с этой замечательной доской. Узнайте, что такое ESP8266, для чего он используется, как выбрать плату для разработки ESP8266, как загрузить свою первую программу и многое другое.
Содержание
- Знакомство с ESP8266 NodeMCU
- ESP8266 Технические данные
- Сравнение ESP8266 и ESP32
Версии ESP 09 Платы для разработки ESP8266 - Как выбрать плату для разработки ESP8266?
- Какая плата для разработки ESP8266 лучше всего подходит для начинающих?
- ESP8266-12E NodeMCU Kit
- Другие макетные платы ESP8266
- ESP8266 Руководство по распиновке GPIO
- Как запрограммировать ESP8266?
- ESP8266 с Arduino IDE
- Загрузите код в ESP8266 с помощью Arduino IDE
- Лучшие ресурсы для начала работы с ESP8266
Знакомство с ESP8266 NodeMCU
6 Что такое ESP? ESP8266 — недорогой чип Wi-Fi, разработанный Espressif Systems.
Его можно использовать как автономное устройство или как адаптер UART-Wi-Fi, позволяющий другим микроконтроллерам подключаться к сети Wi-Fi. Например, вы можете подключить ESP8266 к Arduino, чтобы добавить возможности Wi-Fi на плату Arduino. Наиболее практичным применением является использование его в качестве автономного устройства.
С ESP8266 вы можете управлять входами и выходами так же, как с Arduino, но с возможностями Wi-Fi. Это означает, что вы можете размещать свои проекты в Интернете, что отлично подходит для приложений домашней автоматизации и Интернета вещей. Почему ESP8266 так популярен? В основном по следующим причинам:
- Низкая стоимость : вы можете приобрести платы ESP8266 по цене от 3 долларов (или меньше) в зависимости от модели.
- Низкое энергопотребление : ESP8266 потребляет очень мало энергии по сравнению с другими микроконтроллерами и даже может переходить в режим глубокого сна, чтобы потреблять меньше энергии;
- Wi-Fi : ESP8266 может создавать собственную сеть Wi-Fi (точку доступа) или подключаться к другим сетям Wi-Fi (станции), чтобы получить доступ в Интернет.
Это означает, что ESP8266 может получать доступ к онлайн-сервисам, например, для выполнения HTTP-запросов или сохранения данных в облаке. Он также может выступать в качестве веб-сервера, чтобы вы могли получить к нему доступ с помощью веб-браузера и иметь возможность удаленно контролировать и контролировать свои доски.
- Совместимость с «языком программирования» Arduino : те, кто уже знаком с программированием платы Arduino, были рады узнать, что могут программировать ESP8266 в стиле Arduino.
- Совместимость с MicroPython : вы можете запрограммировать ESP8266 с прошивкой MicroPython, которая представляет собой повторную реализацию Python 3, предназначенную для микроконтроллеров и встроенных систем.
Что можно сделать с ESP8266?
Вот краткий список того, что вы можете сделать с ESP8266:
- Создать веб-сервер для управления выводами;
- Создать веб-сервер для отображения показаний датчиков;
- Отправка HTTP-запросов;
- Управление выходами, чтение входов и установка прерываний;
- Проекты регистрации данных;
- Связь со сторонними службами;
- Создание веб-приложений;
- Отправляйте электронные письма, уведомления, публикуйте твиты и т.
д. - И многое другое.
Технические характеристики ESP8266
Для получения более подробной информации о характеристиках ESP8266 см. следующий список:
ESP8266-12E Чип Wi-Fi- Процессор: L106 32-разрядное RISC-микропроцессорное ядро на базе Tensilica Diamond Standard 106Micro, работающее на частоте 80 или 160 МГц
- 80 КБ ОЗУ для пользовательских данных
- 16 КБ ОЗУ для системных данных ETS
Основные различия между ESP8266 и ESP32
Существует преемник ESP8266 — ESP32.
ESP32 сочетает в себе Wi-Fi и Bluetooth и является двухъядерным. Если вы хотите начать с любой из этих плат, мы рекомендуем приобрести ESP32. Если у вас уже есть ESP8266, не волнуйтесь. Он отлично работает, у него огромное сообщество, и он подходит для большинства проектов DIY IoT.
В следующей таблице показаны основные различия между чипами ESP8266 и ESP32:
| ESP8266 | ESP32 33 | Xtensa Одноядерный 32-разрядный L106 | Xtensa Dual-Core 32-разрядный LX6 с 600 DMIPS | ||
| 802.11 b/g/n Wi-Fi | HT20 | HT40 | 72437|||
| X | Bluetooth 4.2 и BLE | ||||
| Стандартная частота | 80 МГц | 160 МГц | X | ✓ | |
| Вспышка | X | ✓ | |||
| GPIO | 17 | 34 9030 3 3 77 Аппаратное/программное обеспечение ШИМ | Нет / 8 каналов | Нет / 16 каналов | |
| SPI/I2C/I2S/UART | 2/1/2/2 | 4/2/2/3 9044 430 АЦП | 10-битный | 12-битный | |
| CAN | X | ✓ | 8 8 8Интерфейс Ethernet MAC | X | ✓ |
| Датчик касания | X | ✓ | |||
| Датчик температуры | 9037 3 X 277 ✓ (старые версии) | ||||
| Датчик Холла r | X | ✓ | |||
| Цена | $ (3–6 $) | $$ (6–12 $) | Лучшие платы для разработки Wi-Fi ESP8266 | Платы для разработки ESP32. Обзор и сравнение. Версии ESP8266Существует несколько версий модулей ESP8266, как показано на рисунке ниже. ESP-01 и ESP-12E являются наиболее популярными версиями. Вы найдете широкий выбор макетных плат с чипами ESP-12E или ESP-12F. ESP8266 Платы для разработки NodeMCUИспользование голых микросхем или модулей не просто и не практично. Для обучения, тестирования и создания прототипов вам понадобятся платы разработки ESP8266 NodeMCU. Они поставляются со всеми необходимыми схемами для подачи питания, загрузки кода, простого доступа к GPIO для подключения датчиков и исполнительных механизмов, антенны для сигнала Wi-Fi и других полезных функций. Как выбрать макетную плату ESP8266?Существует множество плат ESP8266 от разных производителей. Хотя все они работают одинаково, некоторые доски могут больше подходить для одних проектов, чем другие. При поиске платы для разработки ESP8266 необходимо учитывать несколько аспектов:
Какая плата для разработки ESP8266 лучше всего подходит для начинающих? Лучшая плата разработки ESP8266 для вашего проекта будет зависеть от того, что вы собираетесь делать. Если вы только начинаете работать с платой ESP8266, мы рекомендуем использовать комплект NodeMCU ESP8266-12E. ESP8266-12E NodeMCU Kit ESP12-E NodeMCU Kit — одна из наиболее часто используемых плат разработки ESP8266. Он оснащен 4 МБ флэш-памяти, доступом к 11 контактам GPIO и одному контакту аналого-цифрового преобразователя (АЦП) с 10-битным разрешением. Кроме того, на плате есть встроенный регулятор напряжения, и вы можете подключить модуль, используя разъем mini USB или контакт Vin. Загрузить код на плату так же просто, как загрузить код в Arduino. Нет необходимости в программаторе FTDI или дополнительных схемах, так как он имеет встроенный преобразователь USB-последовательный порт. Большинство плат поставляются с чипами CP2101 или Ch440. Он поставляется со встроенной антенной для сигнала Wi-Fi и поставляется с кнопками RST и FLASH для перезагрузки платы и перевода ее в режим мигания. Внутри есть синий светодиод, подключенный к GPIO 2, что очень удобно для отладки. Это модель платы ESP8266, которую мы чаще всего используем в наших проектах Wi-Fi и IoT. Он очень универсален и отлично подходит для начинающих. Итак, если вы впервые используете ESP8266, мы рекомендуем этот модуль: ESP8266 12-E NodeMCU Kit. Где купить? Вы можете перейти по следующей ссылке, чтобы найти ESP8266-12E NodeMCU Kit в разных магазинах:
Другие популярные платы для разработки ESP8266 Другие очень популярные платы ESP826 01 и ESP8266 Wemos D1 mini. Хотя я не рекомендую ESP-01 для начинающих, ESP8266 Wemos D1 mini может быть хорошим выбором. ЭСП-01ЭСП-01ESP-01 очень мал и помещается в любой корпус, поэтому он идеально подходит для готовых проектов. Однако он очень ограничен в количестве доступных GPIO и не имеет встроенного стабилизатора напряжения, поэтому вам нужно использовать источник питания 3V3 или добавить регулятор напряжения, чтобы понизить входное напряжение до 3V3. Кроме того, он не поставляется с преобразователем USB-последовательный порт, а это означает, что вам нужен программатор FTDI или специальная плата программатора для загрузки кода. WeMos D1 MiniESP8266 WeMos D1 Mini WeMos D1 Mini предлагает 4 МБ флэш-памяти, 11 GPIO и 1 контакт ADC в минимальной и небольшой конфигурации. Сообщество разработало множество экранов для мини-платы D1, которые позволяют создавать небольшие и простые установки практически без проводки. Вам просто нужно сложить экраны для подключения нескольких периферийных устройств. Для сравнения различных плат ESP8266 вы можете прочитать следующую статью:
Существует множество других версий различных плат ESP8266. Большинство досок работают по схожему принципу. Просто убедитесь, что они подходят для требований вашего проекта. В следующей таблице вы можете увидеть основные различия между ESP-01, ESP8266-12E NodeMCU Kit и WeMos D1 Mini.
ESP8266 NodeMCU PinoutНаиболее широко используемые платы разработки NodeMCU are6-ESP826s ESP826 2E NodeMCU Kit, Wemos D1 Mini и ЭСП-01. Если у вас другая плата, вы сможете найти ее распиновку с помощью быстрого поиска в Google. Здесь мы просто взглянем на распиновку. Мы рекомендуем прочитать следующую статью, в которой подробно рассказывается о распиновке ESP8266 и о том, как использовать ее GPIO: Справочник по распиновке ESP8266: какие контакты GPIO следует использовать? Контакты питания Обычно все платы поставляются с контактами питания: 3V3, GND и VIN. Вы можете использовать эти контакты для питания платы (если питание не подается через порт USB) или для подачи питания на другие периферийные устройства (если питание платы подается через порт USB). Входные и выходные контакты общего назначения (GPIO) Важно отметить, что в ESP8266 номер GPIO не соответствует этикетке на трафаретной печати платы. К периферийным устройствам ESP8266 относятся:
Различные GPIO ESP8266 имеют определенные функции для ваших проектов, поэтому вы должны выбирать контакты GPIO с умом для своих проектов. В противном случае вы можете получить неожиданные результаты. Мы рекомендуем ознакомиться с нашим руководством по GPIO ESP8266, в котором подробно показаны функции каждого GPIO и как выбрать лучший GPIO для вашего проекта:
Распиновка комплекта ESP-12E NodeMCUНа следующем рисунке показан обзор распиновки комплекта ESP-12E NodeMCU: Распиновка WeMos D1 MiniВот распиновка Wemos D1 Mini: 9007 0046 ESP126 Вот распиновка ESP-01. Как запрограммировать ESP8266?Существует множество различных способов программирования ESP8266 с использованием разных языков программирования: Arduino C/C++ с использованием ядра Arduino для ESP32, Micropython, LUA и другие. Мы предпочитаем программировать ESP8266 с помощью «языка программирования Arduino» с помощью Arduino IDE или VS Code. Новичкам мы рекомендуем начать работу с Arduino IDE. У нас также есть несколько руководств, показывающих, как программировать ESP866 с помощью MicroPython. Однако в этой статье мы сосредоточимся на Arduino IDE. Программирование ESP8266 с помощью Arduino IDE Для программирования плат вам понадобится IDE для написания кода. Для начинающих мы рекомендуем использовать Arduino IDE. Хотя это не лучшая IDE, она хорошо работает, проста и интуитивно понятна для начинающих. После знакомства с Arduino IDE и создания более сложных проектов вам может оказаться полезным вместо этого использовать VS Code с расширением PlatformIO. Если вы только начинаете работать с ESP8266, начните с Arduino IDE. На момент написания этого руководства мы рекомендуем использовать устаревшую версию (1.8.19) с ESP8266. Хотя версия 2 хорошо работает с Arduino, все еще есть некоторые ошибки и некоторые функции, которые еще не поддерживаются для ESP8266. Установка Arduino IDEДля запуска Arduino IDE на вашем компьютере должна быть установлена JAVA. Если нет, перейдите на следующий веб-сайт, чтобы загрузить и установить последнюю версию: http://java.com/download. Загрузка Arduino IDEЧтобы загрузить Arduino IDE, перейдите по следующему адресу:
Не устанавливайте версию 2.0. На момент написания этого руководства мы рекомендуем использовать устаревшую версию (1.8.19) с ESP8266. Хотя версия 2 хорошо работает с Arduino, все еще есть некоторые ошибки и некоторые функции, которые еще не поддерживаются для ESP8266. Прокрутите вниз, пока не найдете раздел устаревшей версии. Выберите свою операционную систему и загрузите программное обеспечение. Для Windows мы рекомендуем загрузить « Windows ZIP-файл ». Запуск Arduino IDEВозьмите папку, которую вы только что загрузили, и разархивируйте ее. Запустите исполняемый файл с именем arduino.exe (выделен ниже). Должно открыться окно Arduino IDE. Установка NodeMCU ESP8266 в Arduino IDEЧтобы иметь возможность программировать NodeMCU ESP8266 с помощью Arduino IDE, необходимо добавить поддержку плат ESP8266. Выполните следующие шаги:
https://arduino.esp8266.com/stable/package_esp8266com_index.json См. рисунок ниже. Затем нажмите кнопку « OK ». Примечание. Если у вас уже есть URL-адрес платы ESP32, вы можете разделить URL-адреса запятой следующим образом: https://dl.espressif.com/dl/package_esp32_index.json, http://arduino.esp8266.com/stable/package_esp8266com_index.json
Все. Он будет установлен через несколько секунд. После этого перезапустите Arduino IDE. Затем перейдите к Tools > Board и убедитесь, что у вас есть доступные платы ESP8266. Теперь вы готовы приступить к программированию ESP8266 с помощью Arduino IDE. ESP8266 Примеры В Arduino IDE вы можете найти несколько примеров для платы ESP8266. Во-первых, убедитесь, что у вас выбрана плата ESP8266 в Tools > Board . Обновите ядро ESP8266 в Arduino IDEВремя от времени рекомендуется проверять, установлена ли у вас последняя версия надстройки для плат ESP8266. Вам просто нужно перейти к Tools > Board > Boards Manager , найти ESP8266 и проверить версию, которую вы установили. Если доступна более новая версия, выберите ее для установки. Загрузить код в ESP8266 NodeMCU с помощью Arduino IDEЧтобы показать вам, как загружать код на плату ESP8266, мы попробуем простой пример, доступный в примерах Arduino IDE для ESP8266. Во-первых, убедитесь, что в 9 выбран ESP8266.0277 Инструменты > Доска . Если вы используете комплект NodeMCU ESP8266-12E, как показано на предыдущих рисунках, выберите вариант NodeMCU 1. Затем перейдите к Файл > Примеры > ESP8266WiFi > WiFiScan . Это загрузит скетч, который сканирует сети Wi-Fi в пределах досягаемости вашей платы ESP8266. Подключите макетную плату ESP8266 к компьютеру с помощью USB-кабеля. Предупреждение: необходимо использовать кабель USB с проводами передачи данных. Некоторые USB-кабели от зарядных устройств или блоков питания предназначены только для питания и не передают данные — они не будут работать. Теперь выполните следующие шаги, чтобы загрузить код. 1) Перейдите к Tools > Board , прокрутите вниз до раздела ESP8266 и выберите свою плату ESP8266. Если вы не знаете, какая у вас доска, Generic ESP8266 Module обычно отлично работает для большинства плат. 2) Перейдите к Инструменты > Порт и выберите доступный COM-порт. Если COM-порт неактивен, это означает, что у вас нет необходимых драйверов USB. Прежде чем продолжить, ознакомьтесь с разделом «Установка USB-драйверов». 3) Нажмите кнопку загрузки. Код должен быть успешно загружен на плату через несколько секунд. Загрузка кода в ESP-01Если вы используете ESP-01, прочтите этот раздел, чтобы узнать, как загрузить код на плату. ESP-01 не имеет встроенного программатора, поэтому загрузка кода не так проста. Самый простой способ загрузить код в ESP-01 — приобрести программатор ESP-01. Есть несколько доступных онлайн, на картинке ниже показан пример программатора ESP-01. Это очень практично, потому что вам просто нужно подключить ESP-01 к модулю, а модуль к компьютеру, чтобы запрограммировать ESP8266. Другим вариантом является использование программатора FTDI. В следующей таблице показаны соединения, которые необходимо установить между ESP8266 и программатором FTDI.
Если у вас новый программатор FTDI, вам возможно, потребуется установить драйверы FTDI на ПК с Windows. Посетите этот веб-сайт для получения официальных драйверов. (Если COM-порт неактивен в Arduino IDE, это, вероятно, связано с тем, что у вас не установлены драйверы). Затем вам просто нужно подключить программатор FTDI к компьютеру и загрузить код в ESP8266, нажав кнопку загрузки. ДемонстрацияЧтобы убедиться, что код работает должным образом, откройте Serial Monitor со скоростью 115200 бод. Нажмите кнопку ESP8266 RST или EN, чтобы перезагрузить плату и запустить только что загруженный код. Вы должны получить список ближайших сетей Wi-Fi. Если вы используете ESP-01, после загрузки кода отключите GPIO 0 от GND, чтобы отключить режим программирования. Затем подключите контакт RST к GND примерно на одну секунду, а затем отключите его, чтобы сбросить плату. Установка USB-драйверов ESP8266 NodeMCUЕсли после подключения платы ESP8266 к компьютеру COM-порт в Arduino IDE неактивен, это означает, что на вашем компьютере не установлены необходимые драйверы USB. Большинство плат ESP8266 используют драйверы CP2101 или Ch440. Проверьте преобразователь USB в UART на вашей плате и установите соответствующие драйверы. Инструкции легко найти с помощью быстрого поиска в Google. Например, «установить драйверы CP2101 для Windows». Лучшие ресурсы для начала работы с ESP8266Если вы хотите создать свои собственные проекты IoT и домашней автоматизации с платами ESP8266 и вам нужна помощь в начале работы, у нас есть лучшие ресурсы для вас.
Подведение итогов Мы надеемся, что это руководство по началу работы оказалось для вас полезным. |

Обзор и сравнение.
Большинство полнофункциональных макетных плат имеют эти две функции. Это важно для простого подключения ESP8266 к компьютеру для загрузки кода и подачи питания.
Обычно на платах меньшего размера имеется небольшое количество доступных GPIO, таких как ESP-01.
Он поставляется со встроенным регулятором напряжения и преобразователем USB-UART, что упрощает загрузку кода. По этим причинам это также может быть хорошим выбором для начинающих.
Мы покажем вам распиновку этих плат. Распиновка похожа на карту, которая показывает, какой вывод соответствует какому GPIO и его функциям. Таким образом, вы должны знать, какие GPIO использовать, если вам нужно использовать SPI, I2C, ADC или другие.
Например, D0 соответствует GPIO16, а D1 соответствует GPIO5. При программировании ваших плат с помощью Arduino IDE вы должны использовать номер GPIO, а не номер на шелкографии. Это относится к большинству плат ESP8266.
Затем просто перейдите к Файл > Примеры и ознакомьтесь с примерами в разделе ESP8266.
0 (модуль ESP-12E). Если вы не знаете, какая у вас плата, вы всегда можете выбрать Generic ESP8266 Module .
Вам нужно будет подключить ESP-01 к программатору FTDI, как показано ниже. Затем просто подключите программатор FTDI к компьютеру.