Мигающий светодиод на ESP32
Учит базовой работе с выходами GPIO на ESP32. Эффект мигания получается включением и выключением светодиода с цифрового пина. Это ESP32-версия классического проекта мигания на Arduino UNO; базовые команды мигания в среде Arduino те же, но расположение пинов ESP32 и уровни GPIO 3,3 V отличаются от Arduino UNO.

Видео
Схема

Исходный код
1// ─────────────────────────────────────────
2// BlueGrays · bluegrays.com
3// Мигающий светодиод на ESP32
4// ─────────────────────────────────────────
5// Мигает светодиодом на GPIO 5 платы ESP32 каждые 500 мс. Это версия
6// классического скетча blink для ESP32; меняется только номер пина.
7//
8// Пины:
9// GPIO 5 -> Красный светодиод (с резистором 220 ohm)
10// GND -> Короткая ножка светодиода (катод)
11
12void setup() {
13 pinMode(5, OUTPUT); // Пин светодиода как выход
14}
15
16void loop() {
17 digitalWrite(5, HIGH); // Включить светодиод
18 delay(500); // Ждать 0,5 с
19 digitalWrite(5, LOW); // Выключить светодиод
20 delay(500);
21}
22
Частые вопросы
Какие пины ESP32 можно использовать для светодиода?
Как выходы безопасно использовать GPIO 2, 4, 5, 12–19, 21–23, 25–27, 32 и 33. GPIO 34–39 работают только на вход и не могут управлять светодиодами. GPIO 6–11 подключены к встроенной flash-памяти, и их нельзя использовать ни в коем случае.
Какой резистор подходит для светодиода с ESP32 на 3,3 V?
Пины ESP32 выдают 3,3 V. Для красного светодиода подходит резистор 100–220 Ω; с резистором 220 Ω ток около 6–7 mA, и светодиод хорошо виден. У синих и белых светодиодов высокое прямое напряжение, поэтому при 3,3 V они могут светиться тусклее.
При загрузке кода появляется «Connecting...», и всё зависает. Что делать?
На некоторых платах ESP32 для режима загрузки нужно удерживать кнопку BOOT. Когда видишь «Connecting...», зажми кнопку BOOT и отпусти её, когда загрузка начнётся. Также убедись, что USB-кабель передаёт данные.
Будет ли код Arduino работать на ESP32 без изменений?
Базовые функции (pinMode, digitalWrite, delay) те же; чаще всего нужно только поменять номера пинов. В меню «Инструменты» выбери плату «ESP32 Dev Module».
