Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

ESP8266 является недорогой Wi-Fi микрочип, с полным TCP / IP стек и микроконтроллером возможности, производства Espressif систем [1] в Шанхае, Китай.

Чип впервые привлек внимание западных производителей в августе 2014 года, когда появился модуль ESP-01 стороннего производителя Ai-Thinker. Этот небольшой модуль позволяет микроконтроллерам подключаться к сети Wi-Fi и устанавливать простые TCP / IP-соединения с помощью команд в стиле Hayes . Однако поначалу англоязычной документации по чипу и командам, которые он принимал, почти не было. [2] Очень низкая цена и тот факт, что в модуле было очень мало внешних компонентов, что предполагало, что в конечном итоге он может быть очень недорогим по объему, привлекли многих хакеров для изучения модуля, чипа и программного обеспечения на нем. а также переводить китайскую документацию. [3]

ESP8285 является ESP8266 с 1 МиБом встроенной вспышки, что позволяет строительство однокристальных устройств , способных подключаться к Wi-Fi. [4]

На смену этим микросхемам микроконтроллера пришло семейство устройств ESP32 , включая совместимый по выводам ESP32-C3.

Особенности [ править ]

Каркас модуля ЭСП-01
  • Процессор: 32-битное микропроцессорное ядро RISC L106 на основе Tensilica Xtensa Diamond Standard 106Micro, работающее на частоте 80 МГц [5]
  • Объем памяти:
    • 32 КБ ОЗУ инструкций
    • 32 КБ кэш-памяти инструкций
    • 80 КБ ОЗУ для пользовательских данных
    • 16 КБ ОЗУ для системных данных ETS
  • Внешняя флэш-память QSPI: поддерживается до 16 МБ (обычно от 512 КБ до 4 МБ)
  • IEEE 802.11 b / g / n Wi-Fi
  • 17 контактов GPIO [6]
  • SPI
  • I²C (программная реализация) [7]
  • I²S взаимодействует с DMA (общие контакты с GPIO)
  • UART на выделенных контактах, плюс UART только для передачи может быть включен на GPIO2
  • 10-битный АЦП ( АЦП последовательного приближения )

Распиновка ESP-01 [ править ]

Распиновка модуля ESP-01

Распиновка для обычного модуля ESP-01 следующая:

  1. GND, Земля (0 В)
  2. GPIO 2, универсальный ввод / вывод № 2
  3. GPIO 0, универсальный ввод / вывод № 0
  4. RX, получение данных, также GPIO3
  5. VCC, напряжение (+3,3 В; выдерживает до 3,6 В)
  6. RST, сброс
  7. CH_PD, отключение питания микросхемы
  8. TX, передача данных, также GPIO1
ESP8266 Штамп

SDK [ править ]

В октябре 2014 года Espressif Systems выпустила комплект для разработки программного обеспечения (SDK) для непосредственного программирования чипа, который устранил необходимость в отдельном микроконтроллере. [8] С тех пор было выпущено много официальных выпусков SDK от Espressif; Espressif поддерживает две версии SDK: одна основана на FreeRTOS, а другая - на обратных вызовах. [9]

Альтернативой официальному SDK Espressif является ESP-Open-SDK с открытым исходным кодом [10] , основанный на инструментальной цепочке GNU Compiler Collection (GCC), поддерживаемой Максом Филипповым. [11] Другой альтернативой является «Неофициальный комплект разработчика» Михаила Григорьева. [12] [13]

Другие SDK, в основном с открытым исходным кодом, включают:

  • Arduino  - прошивка на основе C ++. С помощью этого ядра процессор ESP8266 и его компоненты Wi-Fi можно программировать, как любое другое устройство Arduino. ESP8266 Arduino Core доступен через GitHub .
  • ESP8266 BASIC  - интерпретатор с открытым исходным кодом, похожий на BASIC, специально разработанный для Интернета вещей (IoT). Самостоятельная среда разработки на основе браузера.
  • ESP Easy  - разработан энтузиастами домашней автоматизации .
  • ESPHome  - ESPHome - это система для управления вашим ESP8266 / ESP32 с помощью простых, но мощных файлов конфигурации и удаленного управления ими через системы домашней автоматизации.
  • Tasmota - прошивка с открытым исходным кодом, очень популярная у энтузиастов домашней автоматизации.
  • ESP-Open-RTOS  - программная среда ESP8266 с открытым исходным кодом на основе FreeRTOS.
  • ESP-Open-SDK  - бесплатный и открытый (насколько это возможно) интегрированный SDK для чипов ESP8266 / ESP8285.
  • Espruino  - Активно поддерживается JavaScript SDK и прошивки, тесно эмулировать Node.js . Поддерживает несколько микроконтроллеров, включая ESP8266.
  • ESPurna  - Прошивка ESP8285 / ESP8266 с открытым исходным кодом.
  • Forthright  - Порт Джонса Форта на микроконтроллер ESP8266.
  • MicroPython  - порт MicroPython (реализация Python для встраиваемых устройств) на платформу ESP8266.
  • Moddable SDK - включает поддержку языка JavaScript и библиотек для ESP8266
  • Mongoose OS  - операционная система с открытым исходным кодом для подключенных продуктов. Поддерживает ESP8266 и ESP32. Разрабатывайте на C или JavaScript. [14]
  • NodeMCU  - прошивка на основе Lua .
  • PlatformIO  - кроссплатформенная IDE и унифицированный отладчик, который находится поверх кода и библиотек Arduino.
  • Punyforth  - вдохновленный Форт язык программирования для ESP8266.
  • Sming  - активно разрабатываемая асинхронная среда C / C ++ с превосходной производительностью и множеством сетевых функций.
  • uLisp  - версия языка программирования Lisp, специально разработанная для работы на процессорах с ограниченным объемом оперативной памяти.
  • ZBasic для ESP8266  - подмножество широко используемого Microsoft Visual Basic 6, адаптированного в качестве языка управления для семейства микроконтроллеров ZX и ESP8266.
  • Zerynth  - IoT framework для программирования ESP8266 [15] и других микроконтроллеров на Python .

Модули эспресса [ править ]

ESP-WROOM-02

Это серия модулей на базе ESP8266 от Espressif:

В приведенной выше таблице (и в двух следующих за ней таблицах) «Активные выводы» включают выводы GPIO и ADC, с помощью которых к микроконтроллеру ESP8266 могут быть подключены внешние устройства. «Шаг» - это расстояние между контактами на модуле ESP8266, которое важно знать, будет ли устройство использоваться на макетной плате. «Форм-фактор» также описывает упаковку модуля как «2 × 9 DIL», что означает два ряда по 9 контактов, расположенных «Dual In Line», как контакты микросхем DIP. Многие модули ESP-xx включают небольшой встроенный светодиод, который можно запрограммировать так, чтобы он мигал и тем самым указывал на активность. Существует несколько вариантов антенны для плат ESP-xx, включая трассирующую антенну, встроенную керамическую антенну и внешний разъем, который позволяет подключать внешнюю антенну Wi-Fi.Поскольку связь Wi-Fi генерирует много RFI (радиочастотных помех), правительственные органы, такие как FCC, используют экранированную электронику, чтобы минимизировать помехи другим устройствам. Некоторые модули ESP-xx помещены в металлическую коробку с печатью одобрения FCC. Первый и второй мировые рынки, вероятно, потребуют одобрения FCC и экранированных устройств Wi-Fi.[ необходима цитата ]

Модули Ai-Thinker [ править ]

Модули Ai-Thinker ESP8266 (ESP-12F, черный цвет) припаяны к коммутационным платам (белый цвет)

Это первая серия модулей, созданная с помощью ESP8266 сторонним производителем Ai-Thinker, и остается наиболее широко доступной. [19] Все вместе они называются «модули ESP-xx». Чтобы сформировать работоспособную систему разработки, им требуются дополнительные компоненты, особенно последовательный адаптер TTL-to-USB (иногда называемый мостом USB-to-UART) и внешний источник питания 3,3 В. Начинающим разработчикам ESP8266 рекомендуется рассмотреть более крупные платы для разработки Wi-Fi ESP8266, такие как NodeMCU.который включает в себя мост USB-to-UART и разъем Micro-USB в сочетании с регулятором мощности на 3,3 В, уже встроенным в плату. Когда разработка проекта завершена, эти компоненты не нужны, и эти более дешевые модули ESP-xx представляют собой вариант с меньшим энергопотреблением и меньшей занимаемой площадью для производственных циклов.

В столбце «Примечания» размеры флэш-памяти относятся к данному модулю и всем модулям, находящимся под ним в таблице. Исключения, относящиеся к отдельному модулю, показаны в ().

Другие доски [ править ]

Причиной популярности многих из этих плат по сравнению с более ранними модулями ESP-xx является наличие на плате моста USB-to-UART (например, CP2102 от Silicon Labs или WCH CH340G) и разъема Micro-USB. в сочетании с регулятором на 3,3 В для подачи питания на плату и подключения к главному компьютеру (для разработки программного обеспечения), обычно называемому консолью, что делает его простой платформой для разработки. В более ранних модулях ESP-xx эти два элемента (адаптер USB-последовательный порт и регулятор) нужно было покупать отдельно и подключать к цепи ESP-xx. Современные платы ESP8266, такие как NodeMCU , проще в работе и предлагают больше контактов GPIO. Большинство перечисленных здесь плат основаны на модуле ESP-12E, но новые модули появляются, по-видимому, каждые несколько месяцев.

ESP32-C3 [ править ]

В 2020 году Espressif анонсировала новый чип ESP32-C3, совместимый по выводам с ESP8266. Он основан на одноядерном 32-битном процессоре RISC-V с тактовой частотой до 160 МГц. Он включает в себя 400 КБ ОЗУ и 384 КБ встроенной памяти. [42]

См. Также [ править ]

  • ESP32 - продукт-преемник Espressif
  • Интернет вещей
  • MCU (блок микроконтроллера)

Ссылки [ править ]

  1. ^ «Обзор ESP8266» . Системы эспресса . Проверено 2 октября 2017 .
  2. ^ Брайан Benchoff (26 августа 2014). «Предупреждение о новом чипе: модуль WiFi ESP8266 (это 5 долларов США)» . Hackaday . Проверено 24 июня 2015 .
  3. ^ Brian Benchoff (6 сентября 2014). «Текущее состояние разработки ESP8266» . Hackaday . Проверено 24 июня 2015 .
  4. ^ "Espressif анонсирует чип ESP8285 Wi-Fi для носимых устройств" . Системы эспресса. 9 марта 2016 . Проверено 10 июля 2016 .
  5. ^ Тактовые частоты процессора и флэш-памяти могут быть увеличены вдвое путем разгона некоторых устройств. ЦП может работать на частоте 160 МГц, а скорость флэш-памяти может быть увеличена с 40 МГц до 80 МГц. [ необходима цитата ] Успех зависит от микросхемы. [ необходима цитата ]
  6. ^ "Технический справочник ESP8266, версия 1.7" (PDF) . Системы эспресса . Проверено 22 апреля 2021 .
  7. ^ "Дискуссионный форум Espressif ESP8266 Developer Zone: действительно ли ESP8266 имеет аппаратный I2C?" . Системы эспресса. 2014-10-27 . Проверено 2 октября 2017 .
  8. ^ Brian Benchoff (25 октября 2014). «SDK для чипа ESP8266 WiFi» . Hackaday . Проверено 24 июня 2015 .
  9. ^ "Официальный выпуск SDK от Espressif для ESP8266" . Системы эспресса. 29 июля 2015 года . Проверено 8 августа 2015 .
  10. Павел Соколовский. «esp-open-sdk: бесплатный и открытый (насколько это возможно) интегрированный SDK для чипов ESP8266 / ESP8285» .
  11. Макс Филиппов (15 февраля 2015 г.). "ESP8266 GCC Toolchain" . Проверено 8 августа 2015 .
  12. Михаил Григорьев. «Неофициальный комплект разработчика для Espressif ESP8266 (репозиторий GitHub)» .
  13. Михаил Григорьев. «Проект неофициального пакета разработки для Espressif ESP8266» .
  14. ^ "Документация по ОС Mongoose" . Чезанта.
  15. ^ Luigi F. Cerfeda (15 июня 2017). «Python для ESP8266 всего за несколько кликов с помощью Zerynth» . Зеринт (Kinzica Ventures LLC).
  16. ^ "Espressif ESP-WROOM-02" . Системы эспресса . Проверено 29 июля 2015 .
  17. ^ a b "Техническое описание ESP-WROOM-02D / ESP-WROOM-02U" (PDF) . Системы эспресса. Архивировано из оригинального (PDF) на 2017-12-01 . Проверено 25 ноября 2017 .
  18. ^ "ESP-WROOM-S2 Datasheet" (PDF) . Системы эспресса. Архивировано из оригинального (PDF) на 2017-10-08 . Проверено 8 октября 2017 .
  19. ^ "Семейство модулей ESP8266" . ESP8266 вики сообщества . Проверено 24 июня 2015 .
  20. ^ "2ADUIESP-12, компания Shenzhen Anxinke technology co., LTD для модуля Wi-Fi" . FCC . 30 декабря 2014 . Проверено 24 июня 2015 .
  21. ^ "FCC ID 2AHMR-ESP12S, Shenzhen Ai-Thinker Technology co., LTD МОДУЛЬ WIFI -ESP12S" . FCC . 4 августа 2016 . Проверено 17 июля 2017 .
  22. ^ "MOD-WIFI-ESP8266" . Олимекс . Проверено 25 июня 2015 .
  23. ^ "MOD-WIFI-ESP8266-DEV" . Олимекс . Проверено 25 июня 2015 .
  24. ^ "Adafruit HUZZAH ESP8266 Breakout" . Adafruit Industries . Проверено 25 июня 2015 .
  25. ^ "SparkFun ESP8266 Thing" . SparkFun . Проверено 27 июня 2015 .
  26. ^ "KNEWRON smartWIFI" . KNEWRON . Проверено 4 марта 2016 .
  27. ^ ESP8266 UNO. "Плата ArduCAM ESP8266 UNO" .
  28. ^ ESPduino. «Ардуино ESPduino» .
  29. ^ SwitchDoc Labs. «Роща WeatherPlus» .
  30. ^ а б в г д WeMos. «ВЕМОС» . WEMOS .
  31. ^ "WeMos D1" . WeMos . Проверено 30 ноября 2016 .
  32. ^ "WeMos D1 R2" . WeMos . Проверено 5 января 2016 .
  33. ^ "WeMos D1 mini" . WeMos . Проверено 29 июня 2017 .
  34. ^ «WeMos D1 mini Lite» . WeMos . Проверено 29 июня 2017 .
  35. ^ «WeMos D1 mini Pro» . WeMos . Проверено 29 июня 2017 .
  36. ^ "Эсперт" . Эсперт . Проверено 7 января 2016 .
  37. ^ «ESPresso Lite V2.0» . Эсперта Pte Ltd . Проверено 2 октября 2017 .
  38. ^ "Совет по развитию ESP-ADC DIL18" . Внутрисхемная вики . Проверено 3 февраля 2016 .
  39. ^ "Уоттеротт ESP-WROOM02-Breakout" . Уоттеротт . Проверено 6 ноября 2016 .
  40. ^ «Geek Wave Solution ESP8266-WROOM-02-IOT WiFi Development Board» . Решение Geek Wave . Проверено 4 сентября 2017 .
  41. ^ "Двухуровневая плата Witty ESP8266 ESP-12E" . Нет данных . Проверено 29 августа 2019 .
  42. ^ List, Дженни (2020-11-22). «Espressif Leaks ESP32-C3: WiFi SOC, который является RISC-V и совместим с контактами ESP8266» . Hackaday .

Внешние ссылки [ править ]

  • Ядро ESP8266 для Arduino IDE