Подключение
SparkFun ESP8266 Thing - это плата для разработчиков на основе WiFi модуля ESP8266. К сожалению, на нее невозможно заливать прошивку просто через USB, USB используюется только для обеспечения питанием. Для программирования модуля необходим USB-to-Serial конвертер, например, такой, как использовал я: SparkFun FTDI Basic Breakout. Но и любой другой конвертер с 3,3 В на выходе должен подойти. Чтобы подключить конвертер к плате, нужно на ESP8266 Thing напаять разъем (далее будет фотография того, что получилось у меня).Также не рекомендуется прошивать ESP8266, когда питание подается по USB. В моем случае это не было проблемой, так как у меня имелась батарейка, купленная специально для использования с этим модулем: JA-803450P. ESP8266 Thing умеет заряжать батарейку, когда подключено питание по USB.
В итоге у меня получилась такая конструкция:
На фото видно, что на плате (как и на конвертере) размечены все выходы, поэтому вопросов, как припаять разъем и как подсоединить конвертер, не возникает.
Следующий шаг - это залить тестовую прошивку. Самый простой способ - воспользоваться существующим аддоном к Arduino IDE.
Arduino IDE
Последнюю версию Arduino IDE можно скачать с сайта arduino.cc. В репозиториях Ubuntu тоже есть соответсвующие пакеты, но они содержат довольно старую версию Arduino IDE (я использовал 1.6.8). После установки запускаем IDE, идем в File -> Preferences, ищем на этой вкладке поля ввода "Additional Board Manager URL" и добавляем туда следующий url:http://arduino.esp8266.com/stable/package_esp8266com_index.json
Также можно поменять скорость передачи в Tools -> Upload speed c 115200 на 921600. В случае с Ubuntu (как у меня), чтобы не запускать IDE от рута, необходимо разрешить своему пользователю доступ к /dev/tty (у меня после подключения конвертера к компьютеру порт определился по адресу /dev/ttyUSB0). Для этого надо добавить пользователя в группу dialout, например, командой:
sudo adduser $USER dialout
Тестовая прошивка
Чтобы проверить, что все работает, я использовал простую программу, которая мигает одним светодиодом, расположенным прямо на плате.#define ESP8266_LED 5 void setup( ) { pinMode( ESP8266_LED, OUTPUT ); } void loop( ) { digitalWrite( ESP8266_LED, HIGH ); delay( 500 ); digitalWrite( ESP8266_LED, LOW ); delay( 500 ); }
Комментариев нет :
Отправить комментарий