WeMos D1 WiFi – Arduino-совместимая плата, управляемая микроконтроллером ESP-8266EX, вместо привычных микроконтроллеров семейства AVR, и, как следует из названия, ориентированная на работу с WiFi. Плата имеет форму, схожую с Arduino UNO, и такое же расположение контактных панелей, что означает совместимость с шилдами (Shields) для UNO. При всем этом плата довольно похожа на Arduino UNO, но при этом имеет некоторые существенные отличия. Среди них рабочее напряжение 3,3 В на всех цифровых выходах и разъем micro-USB типа B, как у платы Leonardo.
Работать с данной платой можно с помощью одной из двух сред разработки (IDE):
- Arduino IDE
- NodeMCU IDE
Если работать планируется в Arduino IDE, то перед началом ее следует подготовить:
1 Зайдите в настройки Arduino IDE:
Файл -> Настройки
2 В поле Дополнительные ссылки для Менеджера плат необходимо вписать следующий адрес и нажать OK
http://arduino.esp8266.com/stable/package_esp8266com_index.json
3 Далее следует зайти в Менеджер плат:
Настройки -> Плата: “…” -> Менеджер плат
4 В строке поиска менеджера напишите esp после чего усановите пакет для плат esp8266, нажав Установить.
После окончания установки можно будет выбрать нужную плату из списка.
Пример: Управление светодиодом по WiFi
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
#include <ESP8266WiFi.h> #include <ESP8266WebServer.h> int val = 1; // По умолчанию диод не горит const char *ssid = "AmperMarket"; // Название сети WiFi const char *password = "1234567890"; // Пароль для подключения ESP8266WebServer server(80); // Создаем веб сервер на 80 порту // Метод формирует стартовую страницу http://192.168.4.1 // Выводит в браузер текущее состояние диода и две кнопки void handleRoot() { String s = (val) ? "<h1>LED On</h1>" : "<h1>LED Off</h1>"; s += "<h2><a href="/led/on">LED On</a> "; s += "<a href="/led/off">LED Off</a></h2>"; server.send(200, "text/html", s); } // Метод включения диода void ledOn() { val = 1; // Включаем диод digitalWrite(BUILTIN_LED, val); // Перенаправление обратно на стартовую страницу server.sendHeader("Location", String("/"), true); server.send ( 302, "text/plain", ""); } // Метод выключения диода void ledOff() { val = 0; // Выключаем диод digitalWrite(BUILTIN_LED, val); // Перенаправление обратно на стартовую страницу server.sendHeader("Location", String("/"), true); server.send ( 302, "text/plain", ""); } // Функция настройки. Выполняется один раз при запуске void setup() { delay(1000); // Ждём секунду WiFi.softAP(ssid, password); // Создаём точку WiFi // Указываем по каким роутам какие методы запускать server.on("/", handleRoot); server.on("/led/on", ledOn); server.on("/led/off", ledOff); server.begin(); // Диод по умолчанию выключен pinMode(BUILTIN_LED, OUTPUT); digitalWrite(BUILTIN_LED, val); } // Основной цикл программы void loop() { // Ждём подключения server.handleClient(); } |
Распиновка
Описание на сайте производителя
Скачать драйвера CH340G для всех операционных систем