Проекты · Arduino / ESP32 / Pico

Проекты на Arduino

Сотни проектов от простых до продвинутых: схемы, код и видео.

Регулировка яркости светодиода потенциометром на ESP32 (аналог → PWM)
#115Средний
Premium

Регулировка яркости светодиода потенциометром на ESP32 (аналог → PWM)

В этом проекте яркость светодиода плавно регулируется потенциометром. Пин АЦП ESP32 читает напряжение 0–3,3V с потенциометра, затем это значение превращается в сигнал PWM (широтно-импульсная модуляция) и подаётся на светодиод. В результате при повороте потенциометра светодиод постепенно становится ярче или тусклее. В Arduino Core 3.0+ можно сразу использовать analogWrite(); на ESP32-S2/S3 разрешение АЦП фиксировано — 12 бит.

4.5(19)
32
Сервопривод на ESP32 (управление потенциометром)
#118Средний
Premium

Сервопривод на ESP32 (управление потенциометром)

В этом проекте сервопривод SG90 управляется потенциометром. Угол сервопривода задаётся сопоставлением аналогового значения потенциометра с диапазоном 0–180 градусов. Библиотека ESP32Servo формирует сигналы сервопривода на подходящих выходных пинах GPIO у ESP32; этот проект использует GPIO 18. Это базовый способ управления для роборук, подвесов камер и механизмов автоматических дверей.

4.3(29)
42
I2C LCD-дисплей (16x2) на ESP32
#119Средний
Premium

I2C LCD-дисплей (16x2) на ESP32

В этом проекте символьный LCD-экран 16x2 подключается к ESP32 по протоколу I2C и выводит текст. Благодаря I2C экраном можно управлять всего двумя пинами данных (SDA и SCL), не тратя 6+ пинов, как при классическом параллельном подключении. Код печатает постоянное сообщение в первой строке и счётчик, растущий каждую секунду, во второй. Кроме того, при запуске работает сканер I2C, который выводит адрес дисплея в монитор порта.

4.9(23)
40
Цифровые часы на ESP32 и DS1307 RTC (I2C + LCD)
#120Средний
Premium

Цифровые часы на ESP32 и DS1307 RTC (I2C + LCD)

В этом проекте время и дата из модуля часов реального времени (RTC) DS1307 выводятся на I2C LCD-экран 16x2. DS1307 — RTC с резервной батарейкой, который хранит время даже при выключенной ESP32. Оба модуля делят одну шину I2C (SDA/SCL), и ты узнаёшь, как управлять несколькими устройствами всего по двум сигнальным проводам. Проект даёт практические знания о протоколе I2C, работе модуля RTC и динамическом выводе данных на LCD-экран.

4.6(26)
40
Автоматическое освещение с PIR-датчиком движения на ESP32
#121Средний
Premium

Автоматическое освещение с PIR-датчиком движения на ESP32

В этом проекте PIR-датчик движения HC-SR501 замечает, что кто-то вошёл в комнату, и автоматически включает светодиод. Время свечения отслеживается через millis(); каждое показание HIGH обновляет время последнего движения, и светодиод гаснет не раньше чем через 10 секунд после последнего HIGH. Текущий код ещё и ждёт 50 ms на каждом цикле через delay(50), поэтому цикл не полностью неблокирующий. Подходит для освещения лестниц, шкафов и ванной.

4.4(24)
38
Пульт ДУ с ИК-приёмником на ESP32 (с экраном LCD)
#124Средний
Premium

Пульт ДУ с ИК-приёмником на ESP32 (с экраном LCD)

В этом проекте модуль ИК-приёмника TSOP4838 ловит сигналы пульта от телевизора, кондиционера или любого другого инфракрасного пульта с помощью ESP32. С библиотекой IRremote v4 расшифрованные ненулевые сырые коды выводятся на I2C LCD-экран. Этот пример помогает узнать коды пульта; включения, выключения или регулировки яркости светодиода с пульта в нём нет. Отличная отправная точка, чтобы превратить старые пульты в управление умным домом.

4.7(19)
30
4-разрядный семисегментный индикатор TM1637 на ESP32
#125Средний
Premium

4-разрядный семисегментный индикатор TM1637 на ESP32

Модуль 4-разрядного семисегментного индикатора с драйвером TM1637 управляется с ESP32. Всего через 2 пина GPIO (CLK и DIO) запускается счётчик от 0 до 9999, меняется яркость и показывается двоеточие (:) в формате часов. Благодаря библиотеке TM1637Display выводить числа, шестнадцатеричные значения, сегменты и строки очень просто.

4.7(20)
32
Управление лентой WS2812B NeoPixel на ESP32
#126Средний
Premium

Управление лентой WS2812B NeoPixel на ESP32

Адресуемые светодиоды WS2812B (NeoPixel) — умные RGB-светодиоды, которыми управляют цепочкой через один пин данных. В этом проекте лента WS2812B из 8 светодиодов управляется библиотекой Adafruit_NeoPixel и показывает плавную радужную анимацию. Логика 3,3V у ESP32 работает с большинством WS2812B, но на случай нестабильности показано решение с последовательным резистором 470Ω и конденсатором 1000µF. Анимация получается сдвигом значения оттенка.

4.9(19)
30
Глаза робота на ESP32 (OLED-дисплей + сенсорный датчик TTP223)
#166Средний
Premium

Глаза робота на ESP32 (OLED-дисплей + сенсорный датчик TTP223)

Настольный робот с чувствами! ESP32 рисует на OLED на 0,96 дюйма два глаза, которые сами осматриваются и моргают. Коснись сенсорного датчика TTP223, и робот обрадуется; удержи — глаза превратятся в сердечки; тыкай слишком часто — он рассердится; не обращай внимания 20 секунд — он уснёт. Пассивный зуммер даёт каждому настроению свой звук: конечный автомат, анимация фигур и неблокирующий звук в одном проекте.

0.0(0)
T-Rex Run на ESP32: игра с динозавром (OLED-дисплей + кнопка + зуммер)
#177Средний
Premium

T-Rex Run на ESP32: игра с динозавром (OLED-дисплей + кнопка + зуммер)

Динозавр из Chrome, который появляется, когда нет интернета, теперь у тебя на столе! ESP32 рисует бегущего динозавра на OLED на 0,96 дюйма; нажимай кнопку, чтобы прыгать, пока кактусы всё ускоряются. Очки и рекорд показаны в верхней строке, а рекорд сохраняется во flash-памяти ESP32 через Preferences, поэтому переживает отключение питания. Это версия проекта OLED T-Rex Run для ESP32 с пассивным зуммером для звуков прыжка, каждых 100 очков и столкновения.

0.0(0)
Сигнализация землетрясения на ESP32 (MPU-6050 + OLED-дисплей + зуммер)
#180Средний
Premium

Сигнализация землетрясения на ESP32 (MPU-6050 + OLED-дисплей + зуммер)

Экран замечает, когда стол трясётся! ESP32 считывает вибрацию с акселерометра MPU-6050 и рисует на OLED на 0,96 дюйма живую бегущую сейсмограмму. При превышении порога пассивный зуммер включает сирену, а красный светодиод мигает; одна кнопка глушит и сбрасывает тревогу. Тревога требует трёх измерений подряд выше порога: всплеск в одно измерение отбрасывается, но долгая вибрация от одиночного удара всё же может её вызвать. Это учебный проект, а не система оповещения.

0.0(0)
Табло курсов золота и валют на ESP32 (Wi-Fi + OLED-дисплей + кнопка)
#181Средний
Premium

Табло курсов золота и валют на ESP32 (Wi-Fi + OLED-дисплей + кнопка)

Почём сейчас золото в Турции? Не нужно заглядывать в телефон! ESP32 подключается к Wi-Fi, берёт цены на грамм золота, доллар США и евро в турецких лирах из бесплатного JSON-источника без ключа и показывает их на OLED на 0,96 дюйма. Цены обновляются каждые 60 секунд; кнопка листает страницы, а долгое нажатие сразу обновляет данные. Если интернет пропадёт, последние значения остаются на экране с пометкой OFFLINE.

0.0(0)