8-900-374-94-44
[email protected]
Slide Image
Меню

Esp8266 модуль wifi: Модуль Wi-Fi ESP8266 (ESP-01) / Купить в Москве и СПБ с доставкой по России / Амперка

ONPAD.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 режим, иначе прошивки/программы, которые вы загрузили, могут работать неправильно.

ESP8266 и Arduino, подключение, распиновка / Хабр

Привет Хабр. Тема ESP8266, как и IoT(интернет вещей), всё больше набирает популярности, и уже Arduino подхватывает инициативу — добавляя эти Wi-Fi модули в список поддерживаемых плат.
Но как же его подключить к ардуино? И возможно как-то обойтись вообще без ардуино? Сегодня именно об этом и пойдёт речь в этой статье.

Забегая наперёд, скажу, что будет вторая статья, уже более практическая, по теме прошивки и программирования модуля ESP8266 в среде разработки Arduino IDE. Но, обо всём по порядку.

Этот видеоролик, полностью дублирует материал, представленный в статье.


На данный момент, существует много разновидностей этого модуля, вот некоторые из них:

А вот распиновка ESP01, ESP03, ESP12:


* Данную картинку можно посмотреть в хорошем качестве на офф. сайте pighixxx.com.

Лично мне, больше всего нравится версия ESP07. Как минимум за то, что тут есть металлический экран (он защищает микросхемы от внешних наводок, тем самым обеспечивает более стабильную работу), своя керамическая антенна, разъём для внешней антенны. Получается, подключив к нему внешнюю антенну, например типа биквадрат, то можно добиться неплохой дальности. К тому же, тут есть немало портов ввода вывода, так называемых GPIO(General Purpose Input Output — порты ввода-вывода общего назначения), по аналогии с ардуино — пинов.

Давайте вернёмся к нашим баранам Wi-Fi модулям и Arduino. В этой статье, я буду рассматривать подключение ESP8266(модели ESP01) к Arduino Nano V3.

Но, данная информация будет актуальна для большинства модулей ESP8266 и так же разных Arduino плат, например самой популярной Arduino UNO.

Пару слов по ножкам ESP01:

Vcc и GND(на картинке выше это 8 и 1) — питание, на ножку Vcc можно подавать, судя по документации, от 3 до 3. 6 В, а GND — земля (минус питания). Я видел, как один человек подключал этот модуль к двум AA аккумуляторам (напряжение питания в этом случае было примерно 2.7 В) и модуль был работоспособным. Но всё же разработчики указали диапазон напряжений, в котором модуль должен гарантированно работать, если вы используете другой — ваши проблемы.

Внимание! Этот модуль основан на 3.3 В логике, а Arduino в основном — 5 В логика. 5 В запросто могут вывести из строя ESP8266, потому на него нужно отдельно от ардуино подавать питание

.

— На моей ардуинке есть ножка, где написано 3.3 В, почему бы не использовать её?

Наверное подумаете вы. Дело в том, что ESP8266 довольно таки прожорливый модуль, и в пиках может потреблять токи до 200 мА, и почти никакая ардуинка по умолчанию не способна выдать такой ток, разве что исключением является Arduino Due, у которой ток по линии 3.3 В может достигать 800 мА, чего с запасом хватит, в других же случаях советую использовать дополнительный стабилизатор на 3. 3 В, например AMS1117 3.3 В. Таких валом как в Китае, так и у нас.

Ножка RST 6 — предназначена «железной» для перезагрузки модуля, кратковременно подав на неё низкий логический уровень, модуль перезагрузиться. Хоть и на видео я этим пренебрёг, но всё же вам советую «прижимать» данную ногу резистором на 10 кОм к плюсу питания, дабы добиться лучшей стабильности в работе модуля, а то у меня перезагружался от малейших наводок.

Ножка CP_PD 4(или по-другому EN) — служит, опять же, для «железного» перевода модуля в энергосберегающий режим, в котором он потребляет очень маленький ток. Ну и снова — не будет лишним «прижать» эту ногу резистором на 10 кОм к плюсу питалова. На видео я тупо закоротил эту ногу на Vcc, потому как под рукой не оказалось такого резистора.

Ноги RXD0 7 TXD0 2 — аппаратный UART, который используется для перепрошивки, но ведь никто не запрещает использовать эти порты как GPIO(GPIO3 и GPIO1 соотвественно). GPIO3 на картинке почему-то не размечен, но в даташите он есть:

К стати, к ножке TXD0 2 подключен светодиод «Connect», и горит он при низком логическом уровне на GPIO1, ну или когда модуль отправляет что-то по UART.

GPIO0 5 — может быть не только портом ввода/вывода, но и переводить модуль в режим программирования. Делается это подключив этот порт к низкому логическому уровню(«прижав» к GND) и подав питание на модуль. На видео я делаю это обычной кнопкой. После перепрошивки — не забудьте вытащить перемычку/отжать кнопку(кнопку во время перепрошивки держать не обязательно, модуль при включении переходит в режим программирования, и остаётся в нём до перезагрузки).

GPIO2 3 — порт ввода/вывода.

И ещё один немаловажный момент, каждый GPIO Wi-Fi модуля может безопасно выдавать ток до 6 мА, чтобы его не спалить, обязательно ставьте резисторы последовательно портам ввода/вывода на… Вспоминаем закон Ома R = U/I = 3.3В / 0.006 А = 550 Ом, то есть, на 560 Ом. Или же пренебрегайте этим, и потом удивляйтесь почему оно не работает.

В ESP01 все GPIO поддерживают ШИМ, так что к нашим четырём GPIO, то есть GPIO0-3 можно подключить драйвер двигателя, аля L293 / L298 и рулить двумя двигателями, например катера, или же сделать RGB Wi-Fi приблуду. Да, да, данный модуль имеет на борту много чего, и для простеньких проектов

скрипач Arduino не нужен, только для перепрошивки. А если использовать ESP07 то там вообще портов почти как у Uno, что даёт возможность уже уверенно обходиться без ардуино. Правда есть один неприятный момент, аналоговых портов у ESP01 вообще нет, а у ESP07 только один, ADC зовётся. Это конечно усугубляет работу с аналоговыми датчиками. В таком случае ардуино аналоговый мультиплексор в помощь.

Всё вроде как по распиновке пояснил, и вот схема подключения ESP8266 к Arduino Nano:

Видите на Arduino Nano перемычка на ножках RST и GND? Это нужно для того, чтобы ардуинка не мешала прошивке модуля, в случае подключения ESP8266 при помощи Arduino — обязательное условие.

Так же если подключаете к Arduino — RX модуля должен идти к RX ардуинки, TX — TX. Это потому, что микросхема преобразователь уже подключена к ножкам ардуино в перекрестном порядке.

Так же немаловажен резистивный делитель, состоящий из резисторов на 1 кОм и 2 кОм (можно сделать из двух резисторов на 1 кОм последовательно соединив их) по линии RX модуля. Потому как ардуино это 5 В логика а модуль 3.3. Получается примитивный преобразователь уровней. Он обязательно должен быть, потому что ноги RXD TXD модуля не толерантные к 5 В.

Ну и можно вообще обойтись без ардуино, подключив ESP8266 через обычный USB-UART преобразователь. В случае подключения к ардуино, мы, по сути, используем штатный конвертер интерфейсов usb и uart, минуя мозги. Так зачем тратиться лишний раз, если можно обойтись и без ардуино вообще? Только в этом случае, мы подключаем RXD модуля к TXD конвертора, TXD — RXD.

Если вам лениво заморачиваться с подключением, возится с резисторами и стабилизаторами — есть готовые решения NodeMcu:

Тут всё значительно проще, воткнул кабель в компьютер, установил драйвера и программируй, только не забывай задействовать перемычку/кнопку на GPIO0 для перевода модуля в режим прошивки.

Ну вот, с теорией наверное всё, статья получилась пожалуй довольно таки большая, и практическую часть, аля прошивка и программирование модуля, я опубликую немного позже.

Я, у себя на ютуб канале, открыл целый плейлист посвящённый моим видео по теме этого Wi-Fi модуля. В планах построили машинку, или лодку, на Wi-Fi управлении, где вместо пульта ДУ будет обычный смарт. Но пока что я к этому ещё не пришёл, так что это всего лишь планы на будущее.

Продолжение этой статьи.

Даташиты на:
ASM1117 3.3 B;
ESP8266EX(микроконтроллер, что стоит в модуле);

Ещё ссылки:
Русскоязычное сообщество по ESP8266;
Схемы рисовал в программе Fritzing;
Почему многие не любят Arduino;
Все мои публикации на geektimes.

By Сергей ПоделкинЦ ака MrПоделкинЦ.

P.S.

Уже на подходе плата на базе esp32:


http://www.pighixxx.com/test/2015/12/esp32-pinout/

Которая значительно круче чем esp8266, так что нас скоро ждёт бум, как мне кажется, темы IoT(интернет вещей).

Установка — Документация ESP8266 Arduino Core 3.1.2-1-g01d1c8e4

Менеджер плат

Это рекомендуемый метод установки для конечных пользователей.

Предварительные условия

  • 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 Учебное пособие по Wi-Fi и примеры с использованием Arduino IDE — 42 бота

В следующих примерах я буду использовать плату разработки NodeMCU и программировать ее с помощью программного обеспечения Arduino. Надеюсь, вы уже настроили среду разработки ESP8266 и смогли загрузить скетч. Если нет, сначала следуйте этому руководству.

Пример режима станции WiFi ESP8266

ESP8266 может обмениваться данными через WiFi в двух разных режимах. Он может подключаться к существующей беспроводной точке доступа или точке доступа, подобно тому, как вы подключаете свой телефон или компьютер к Интернету. Это называется режимом «станция». В режиме станции плата ESP8266 может подключаться к Интернету, а также может взаимодействовать с другими устройствами, подключенными к той же сети, включая другие модули ESP8266. Вот простой пример. Не забудьте заменить значения для ssid и пароль переменные с именем и паролем для вашей беспроводной сети!

После того, как вы загрузите код в свой модуль ESP8266, откройте последовательный монитор и перезапустите модуль (нажатие кнопки сброса на плате NodeMCU поможет). Весь код выполняется в функции настройки, поэтому он будет запущен только один раз. Вы должны увидеть что-то вроде этого, если все в порядке:

Режим станции ESP8266

Если у вас есть доступ к экрану администратора маршрутизатора, вы должны увидеть модуль ESP8266 в списке подключенных устройств.

ESP8266 Программная точка доступа Wi-Fi (Soft AP), пример 

Точки доступа Wi-Fi (AP) действуют как концентратор для одной или нескольких станций (например, вашего телефона или ПК). Точка доступа подключается к проводной сети и часто интегрируется с маршрутизатором, чтобы обеспечить доступ подключенных к ней станций к Интернету. Если точка доступа не подключена к Интернету через проводную сеть, она называется программной точкой доступа

Модуль ESP8266 может работать как программная точка доступа (Soft AP) и поддерживать до 5 клиентских устройств или станций Wi-Fi , подключен к нему. Вот базовый пример кода для превращения ESP8266 в программную точку доступа:

Когда вы загружаете этот скрипт в модуль ESP8266, вы должны увидеть следующий последовательный вывод:

Теперь, если вы откроете меню подключения Wi-Fi вашего телефона и проверите доступные сети, вы должны увидеть новую в список.

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

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