Примеры проектов на ESP32
Примеры проектов на ESP32 — 189 готовых примеров со схемой и кодом. Откройте любой в браузере и запустите без платы и проводов.
DHT22: температура и влажность
Однопроводный протокол с собственным таймингом. Библиотека читает датчик не чаще раза в две секунды — быстрее он не отвечает.
Кодовый замок
Ввод накапливается в строку и сравнивается с образцом. Сброс по звёздочке.
Мигание без delay()
То же мигание, но на millis(). Пока идёт delay(), процессор не может делать ничего другого — здесь может.
Сведения о чипе
Ревизия, число ядер, объём флеша, MAC-адрес, свободная память. Первое, что стоит вывести в незнакомом железе.
Светофор
Конечный автомат на трёх светодиодах: состояние, длительность, переход. Основа для любой последовательности.
Сигнал перегруза
Порог с гистерезисом и усреднением. Заодно — что делает power_down и зачем он нужен на батарее.
ArduinoJson: разбор и сборка
Шестая версия и седьмая различаются в первой же строке. Разбор чужого ответа, проверка ошибок и сборка своего.
LCD 16x2: первый текст
Дисплей на I2C: два провода данных вместо шести. Адрес обычно 0x27, реже 0x3F — проверяется сканером шины.
LCD: термометр
Датчик и дисплей вместе. Собственный символ градуса — потому что в наборе LCD его нет.
MPU6050: шесть чисел
Три ускорения, три угловые скорости и температура кристалла. И первое, о что все спотыкаются: датчик после включения спит.
OLED SSD1306: первый вывод
128x64 точки. Всё рисуется в буфер, на экран попадает по display().
OLED: график значения
Кольцевой буфер и столбики. Показывает не только текущее значение, но и как оно менялось.
Serial: чтение по строкам
Байты копятся до перевода строки. Без этого команда приходит по кускам.
Матрица 8×8: первая точка
Микросхема после подачи питания выключена, и это первое, обо что спотыкаются. Дальше — точки, строки и вся матрица.
Сигнал о перегреве
Порог с гистерезисом поверх датчика: светодиод и зуммер срабатывают, когда температура выходит за границу.
Тепловой насос вода–вода на ESP32: 11 датчиков DS18B20, ЭРВ и панель Settings
Контроллер теплового насоса вода–вода на базе наружного блока кондиционера: 11 термометров DS18B20 на трёх линиях 1-Wire, два датч…
Яркость и ночной режим
Восемь ступеней яркости и настоящее гашение. Ночью индикатор в спальне светит как прожектор — отсюда и пример.
LCD: бегущая строка
Текст длиннее шестнадцати символов показывается окном, которое ползёт по строке.
LCD: счётчик секунд
Обновление одной строки без очистки всего экрана: мигания не будет.
NeoPixel: шкала уровня
Лента как линейный индикатор: зелёный, жёлтый, красный по мере роста значения.
OLED: анимация
Шарик, отражающийся от краёв. Скорость и координаты как состояние между кадрами.
OLED: индикатор выполнения
Рамка, заливка и проценты. Примитивы GFX: прямоугольники и текст.
OLED: крупные цифры
Перерисовка кадра целиком: очистка, вывод, display(). Так делается любая динамика.
TM1637: четыре разряда
Индикатор на двух проводах: не I2C, хотя и похоже. Числа, ведущие нули и то, чем показ отличается от вычисления.