ESP8266 Arduino IDE

Публикация 22.05.2015

Фирма Esspressif Systems выпускает серию плат платформы ESP8266EX. Каждая серия обозначается двухзначным порядковым номером и самой дешевой/популярной является 01. Она не самая навороченная по портам ввода-вывода с платы и заточена как модуль радио связи по wi-fi, но оказалось, что это только вершина айсберга. Чудеса на этом не заканчиваются - в ESP8266 можно загружать скетчи из Arduino IDE и тем более подходят многие ардуино-библиотеки.

ESP8266 для Arduino или вместо

Волшебство заключается в том, что эта маленькая, платка имеет на борту перепрограммируемый контроллер с тактовой частотой 80 Mhz. Вот это поворот!
Управляемые разъемы платы: Tx, Rx, GPIO0, GPIO1. Аппаратные разъемы: VVC, GND, CH_PD, RESET.

Tx и Rx - используются для UART;
GPIO0 - если будет подтянут к земле при включении - процессор переходит в режим программирования;
CH_PD - требует подключения плюса с питания для запуска процессора. VVC питается 3.2 вольта и требует очень стабильного напряжения т.к. чип кушает и немного греется.

ESP8266 для Arduino или вместо

ESP8266-01 в виду своей огранниченности подойдет не для каждого проекта и тогда можно посмотреть в сторону более старших серий, например ESP8266-07. Разница в цене минимальна, но это таки настоящий Arduino Pro. Тут нам доступны множество управляемых GPIO на любой вкус и под любой проект.

ESP8266 для Arduino или вместо

Напомню, что плата очень капризна по питанию. В момент включения резкий пик потребления тока до 350 mA и проседания напряжения приведет к повторной перезагрузке еще и еще. По напряжению тоже нужно жестко стабилизировать. 3.6 вольт уже не подходит, нужно строго 3.2-3.3 вольта. Самая простая схема стабилизатора такая:

ESP8266 для Arduino или вместо

Сами же GIPO вводы/выводы толерантны к сигналу 5 вольт и проблем обычно не возникает.

Теперь давайте подключим. Загорится красный диод питания и синий, который моргает в такт передаваемым пакетам по UART. Мониторинг сети обнаруживает новую точку доступа ESP8266 в случае заводской прошивки для контроллера. Штатная прошивка предназначена для работы с сетью с помощью AT команд по UART. Esspressif Systems считал, что на этом все и закончится.

ESP8266 для Arduino или вместо

Для подключения по UART к ESP потребуется переходник USB UART-TTL. С его помощью загружаем скетчи в старый добрый Arduino Pro-mini. Не забываем, что подключать линии данных нужно крест на крест (R-T T-R). Теперь нам нужна терминальная программа, пусть будем HiperTermina. Выставляем скорость 9600, отправляем AT и получаем ответ ... OK.

ESP8266 для Arduino или вместо

Можно заменить прошивку или просто ее обновить, например мы хотим AT версии 0.21.
Цепляем GIPO0 к земле, подаем питание. Наш контроллер готов принимать новую прошивку.
Самая простая программа для прошивки XTCOM_UTIL - она кушает hex файлы и зашивает в контроллер.
После загрузки hex отключаем землю от GPIO0, перезагружаемся и вуаля - контроллер сообщает по UART, что теперь прошивка новая.

AT
OK
AT+GMRAT version:0.21.0.0
SDK version:0.9.5
OK

Аналогичным образом можно зашить hex файл для превращения ESP в Arduino и работать полноценно через Arduino IDE.

* комментарии публикуются после модерации
Нет комментариев