ESP8266 Урок 1 Первое знакомство с контроллером ESP8266
Наконец-то, по многочисленным просьбам мы начинаем знакомство, а впоследствии, как я думаю, и полноценную работу по программированию микроконтроллера ESP8266.
Данный контроллер является собственностью китайского производителя Espressif, и основную свою популярность среди программистов он снискал благодаря наличию беспроводного интерфейса Wi-Fi. Также немаловажным фактором является его очень низкая стоимость и также наличие на сегодняшний момент многочисленной документации, а также программного обеспечения, позволяющего самостоятельно писать для него программы на различных языках. О сфере использования данного контроллера в различных устройствах я вообще даже боюсь и говорить. Она очень многообразна: интернет вещей, сбор информации с различных датчиков и приборов, передача на другие устройства, где нет возможности протянуть к ним провода и т.д.
Поставляется данный контроллер в основном в виде различных модулей, многообразие которых не может не удивлять.
Вот это лишь некоторая часть из них
У меня также имеется в наличии ряд таких модулей, так как мне также небезразлично развитие данных технологий, ну и, повлияли также и ваши многочисленные просьбы.
Также я много думал о том, с чего начать рубрику по данному контроллеру. Вообще, честно говоря, хотелось приступить сразу к написанию программ и их прошивке в модуль. Но, так как в данных модулях сразу имеется определённое прошитое ПО, позволяющее уже с ним работать по интерфейсу UART посредством AT-команд, и, так как просьб по работе с AT-командами данного контроллера было тоже немалое количество, то начнём мы именно с них. А дальше уже покажет обстановка.
Прежде чем приступить к практической работе с модулем, мы познакомимся поначалу с контроллером, а затем уже будем знакомиться с модулями, а вернее с самым простым из них — ESP-01.
Практически во всех модулях, построенных на контроллере ESP8266 имеется в наличии внешняя микросхема FLASH-памяти, так как у контроллера, к сожалению, внутренней FLASH-памяти на борту нет. Но зато в этом есть и плюсы, позволяющие установить данную память различного размера.
Поначалу с архитектурой контроллера ESP8266 мы познакомимся очень кратко, так как сразу со всеми его многочисленными регистрами памяти мы работать не будем, и поэтому если мы их изучим сразу, то когда уже приступим к их использованию на практике, мы всё непременно забудем.
Основные технические характеристики контроллера ESP8266 (а точнее ESP8266EX), касающиеся передачи данных по Wi-FI:
- поддержка протокола 802.11 b/g/n,
- поддержка 802.11n (2.4 GHz), до 72.2 Mbps,
- дефрагментация,
- 2 виртуальных передатчика Wi-Fi,
- поддержка шифрования WPA/WPA2 WEP/TKIP/AES,
- выходная мощность +20 дБм в режиме 802.11b,
- WiFi режим — STA (станция), программная точка доступа, программная точка доступа + STA (станция).
Это лишь некоторые самые интересные характеристики по передаче данных.
Также приведу некоторые остальные характеристики:
- встроенный MCU 32-бит с низким энергопотреблением,
- встроенные блоки ФАПЧ и управления мощностью,
- встроенный стек протоколов TCP/IP с поддержкой протоколов передачи данных IPv4, TCP/UDP/HTTP
- интерфейсы SDIO 2.0, SPI, HSPI UART, I2C, I2S, IRDA, PWM, GPIO,
- поддержка различных режимов пониженного энергопотребления,
- диапазон рабочих температур –40°C ~ 125°C,
- загрузка (а также и выгрузка) ПО по интерфейсу UART,
- питание 2.5V ~ 3.6V (стабильная работа контроллера, как подтвердила практика, наблюдается при стабилизированном напряжении 3.3V).
Токи потребления контроллером в активном режиме при определённых режимах и скоростях передачи данных
А это токи потребления контроллером в различных режимах пониженного энергопотребления, а также что остаётся в данных режимах в работе
Находится микроконтроллер ESP8266 в 32-пинном QFN корпусе.
Вот основное назначение ножек (возможен REMAP)

А вот это блок-схема
То, что там нарисован FLASH вовсе не свидетельствует о его наличии, поэтому он него идёт соединительная линия к интерфейсам, подчёркивающая его подключение через внешний интерфейс.
Также об этом свидетельствует и вот этот пункт, в котором обозначены параметры подключаемого внешнего FLASH
Оперативной памяти в контроллере около 50 килобайт.
Процессор в контроллер ESP8266 встроен Xtensa L106 от компании Tensilica. Работает он на частоте до 80 мегагерц, возможен также негарантированный разгон до 160 МГц.
Вообщем, это пока всё, что я хотел сказать вам о контроллере ESP8266. В дальнейших уроках мы уже начнём знакомство с отдельными модулями, научимся управлять их работой сначала с помощью команд AT, а затем уже напишем свои прошивки, позволяющие работать с модулем самостоятельно и более гибко, а также впоследствии мы обязательно подключим данный контроллер к другому контроллеру общего назначения, в частности к STM32, к которому мы с вами уже так привыкли, что позволит ещё более профессионально организовать процессы передачи данных между устройствами без использования проводов.
Всем спасибо за внимание!
Модуль ESP NodeMCU можно купить здесь: Модуль ESP NodeMCU
Различные модули ЕSP8266 можно приобрести здесь Модули ЕSP8266
Переходник USB to TTL можно приобрести здесь ftdi ft232rl
Смотреть ВИДЕОУРОК в RuTube (нажмите на картинку)
Смотреть ВИДЕОУРОК в YouTube (нажмите на картинку)








Наконец-то Владимир вернулся)
Дык я никуда и не уходил, просто теперь мёртвый сезон закончился, пора и честь знать.
Большое спасибо! С нетерпением ждём продолжения. Уважаем Ваш добросовестный и системный подход к ликвидации околоконтроллерной безграмотности.
Есть вопросы :
правильно ли я понимаю?
1. ESP8266 — это на ARM?
2. Официальных даташитов на ESP8266 нет ?
3. Есть только набор закрытых библиотек для использования?