
WeMos D1 mini на ESP8266
WEMOS / LOLIN для оригинала; совместимые платы других изготовителей · D1 mini ESP8266, 4 МБ Flash; база v3.1.0
Компактная Wi-Fi-плата ESP8266 с USB–UART: подключение I²C и полный скетч для внешнего LED.
Автор: SLDV LAB
Опубликовано · Обновлено
О МОДУЛЕ
Что делает D1 mini ESP8266, 4 МБ Flash; база v3.1.0
WeMos/LOLIN D1 mini — компактная ESP8266-плата для датчиков, небольших контроллеров и Wi-Fi-проектов. Два ряда контактов совместимы с семейством D1 mini shields, но каждый шилд всё равно проверяют по питанию, занятому GPIO и адресу. Bluetooth у ESP8266 отсутствует.
Карточка охватывает обычную D1 mini на ESP8266 с 4 МБ Flash, не версии Pro, Lite или ESP32. В качестве документированной базы используется v3.1.0 с Micro-USB; v4.0.0 меняет разъём на USB-C и добавляет отдельный I²C-порт. Фото показывает раннюю обычную D1 mini и не подтверждает конкретную ревизию v3.1.0/v4.0.0.
Подписи D1/D2 не равны номерам GPIO: здесь D1=GPIO5, D2=GPIO4. A0 готовой оригинальной платы имеет делитель и заявленный предел 3,2 В; у самого ESP8266 вход ADC рассчитан только на 1 В. Для безымянной копии наличие и номиналы делителя надо проверить, поэтому аналоговый вход в начальных примерах не используется.
Фото: Tpkull / Wikimedia Commons, CC BY-SA 4.0. Фото платы обтравлено и размещено на фоне SLDV LAB с сохранением пропорций; компоненты и маркировка не дорисованы.
Схема распиновки
На фото ранняя D1 mini с экраном; ревизия не установлена. Схема ниже относится к WEMOS D1 mini v3.1.0. Порядок контактов совпадает; электрические пределы изображённой платы проверьте по её схеме.
Авторская схема SLDV LAB: WEMOS/LOLIN D1 mini v3.1.0, вид со стороны компонентов, Micro-USB снизу. GPIO 3,3 В; A0 до 3,2 В. Для клонов сверяйте маркировку и схему.
Схема создана SLDV LAB по официальной документации WEMOS D1 mini v3.1.0 и принципиальной схеме, указанной производителем. Это авторский справочный рисунок, а не фотография платы; оформление адаптировано к фону SLDV LAB.
Характеристики
- Микроконтроллер
- ESP8266EX, одно ядро Tensilica L106
- Рабочая частота
- 80 МГц; профиль поддерживает 160 МГц
- Flash базового исполнения
- 4 МБ
- Радиосвязь
- Wi-Fi 2,4 ГГц 802.11 b/g/n
- Встроенный Bluetooth
- Нет
- Логика GPIO
- 3.3 В
- Внешний аналоговый вход
- A0, предел 3,2 В у оригинальной D1 mini v3.1.0; не у голого чипа
- Интерфейс компьютера
- USB–UART-мост; USB устройства/HID у ESP8266 нет
- Интерфейс
- I²C, SPI, UART, Аналоговый, Wi-Fi
- Питание модуля
- В примерах 5 В через USB; GPIO и подтяжки I²C только 3,3 В. На A0 не подавать 5 В. Диапазон VIN/5V и допустимый ток зависят от платы; не объединять USB с внешним источником без схемы.
ПРАКТИКА
Подключение
| Контакт модуля | Контакт платы | Назначение |
|---|---|---|
| Питание/загрузка/Serial | USB платы | Вид разъёма и драйвер моста проверить по ревизии. |
| VCC датчика / GND | 3V3 / GND | Подтяжки I²C на стороне ESP8266 только к 3,3 В. |
| Анод LED через 1 кОм | D5 / GPIO14 | Катод к GND; первый пример использует числовой GPIO14. |
| SDA I²C-устройства | D2 / GPIO4 | Wire.begin(4, 5): SDA стоит первым аргументом. |
| SCL I²C-устройства | D1 / GPIO5 | Второй пример, 100 кГц. |
| SPI: SCK / MISO / MOSI / CS | D5/GPIO14; D6/GPIO12; D7/GPIO13; D8/GPIO15 | D5 уже занят LED в первом примере. D8 должен оставаться LOW при нормальном старте. |
| RX / TX UART-периферии | TX/GPIO1 / RX/GPIO3 | Перекрёстные линии, 3,3 В; эти контакты заняты также USB–UART и загрузчиком. |
| Загрузочные контакты | D3/GPIO0; D4/GPIO2; D8/GPIO15 | Для нормального старта GPIO0/2 HIGH, GPIO15 LOW. Не подключать нагрузки, меняющие эти состояния. |
| Аналоговый сигнал | A0 | Не используется в примерах. Проверьте делитель именно платы; 1 В на ADC кристалла нельзя путать с A0 модуля. |
| Сброс | RST | Краткое замыкание на GND. Для deep sleep wake D0/GPIO16 соединяют с RST отдельно, когда это нужно проекту. |
Подходит для Arduino. Выберите контакты по документации своей платы.
ВАШ ПРОЕКТ · ВАШ ДАТЧИК
Интегрируйте модуль с ChatGPT
Скопируйте запрос в ChatGPT. Укажите свою плату и среду разработки — получите подключение и код для своего проекта.
Помоги интегрировать WeMos D1 mini на ESP8266. Уточни ревизию, фото/маркировку модуля, USB–UART, объём Flash, задачу, среду и питание. Базовый Arduino core ESP8266 3.1.2, профиль LOLIN(WEMOS) D1 R2 & mini. Не используй пакет ESP32. Сверь номера D с GPIO: SDA D2=4, SCL D1=5, LED примера D5=14. Дай подключение, зависимости, полный скетч с обработкой ошибок и проверку результата. Сохрани правильные уровни загрузочных GPIO0/2/15 и линии Flash6–11. Не обещай Bluetooth. Для ADC сначала установи диапазон A0 по делителю платы; голый ADC ESP8266 принимает до 1 В. Длинные циклы должны отдавать управление через delay/yield. При ошибке загрузки проверь питание, кабель, мост, порт и boot-режим, не меняй Flash-параметры вслепую.
Библиотеки
Установите библиотеку для своей среды и откройте пример из её документации.
Что именно прописать
- Пакет
esp8266 by ESP8266 Community 3.1.2Версия API примеров.
- Board
LOLIN(WEMOS) D1 R2 & miniПроверить исполнение платы и Flash 4 МБ.
- CPU Frequency
80 MHzБазовая частота примеров.
- Внешний LED
GPIO14 / D5Резистор 1 кОм последовательно, катод GND.
- I²C
Wire.begin(4, 5); Wire.setClock(100000)SDA4/D2, SCL5/D1. В ESP8266 begin возвращает void, не bool.
- Монитор
115200Вывод сканера через USB–UART; краткий стартовый лог чипа может иметь другую скорость.
WeMos D1 mini на ESP8266: внешний LED на D5
cpp#include <Arduino.h>
constexpr int LED_PIN = 14;
void setup() {
pinMode(LED_PIN, OUTPUT);
digitalWrite(LED_PIN, LOW);
}
void loop() {
digitalWrite(LED_PIN, HIGH);
delay(500);
digitalWrite(LED_PIN, LOW);
delay(500);
}
Полный .ino для LOLIN(WEMOS) D1 R2 & mini, ESP8266 core 3.1.2; API и соответствие выводов сверены по исходникам и документации. Компиляция и аппаратное испытание не выполнялись. Выберите профиль и USB-порт; LED должен мигать с периодом 1 с. Если не мигает, проверьте D5=GPIO14, полярность и резистор. Встроенный индикатор не используется.
WeMos D1 mini на ESP8266: сканер I²C D2/D1
cpp#include <Arduino.h>
#include <Wire.h>
void setup() {
Serial.begin(115200);
Wire.begin(4, 5); // SDA GPIO4=D2, SCL GPIO5=D1
Wire.setClock(100000);
}
void loop() {
int found = 0;
for (uint8_t address = 8; address < 120; ++address) {
Wire.beginTransmission(address);
const uint8_t error = Wire.endTransmission();
if (error == 0) {
Serial.print("ACK 0x");
if (address < 16) Serial.print('0');
Serial.println(address, HEX);
++found;
} else if (error != 2) {
Serial.print("I2C error: ");
Serial.println(error);
}
yield();
}
Serial.print("Devices: ");
Serial.println(found);
delay(3000);
}
Полный .ino для LOLIN(WEMOS) D1 R2 & mini, ESP8266 core 3.1.2; API и соответствие выводов сверены по исходникам и документации. Компиляция и аппаратное испытание не выполнялись. Подключите известный I²C-модуль с уровнями 3,3 В. В мониторе 115200 появляются ACK-адреса; Devices: 0 без устройства нормально. При ошибках проверьте GND, питание и подтяжки. ACK не является идентификацией датчика; не сканируйте неизвестную рабочую шину.
Проекты с этим компонентом
Все проектыСвязанные проекты пока не опубликованы.


