Галерея проектов
Любой проект можно открыть, запустить и сделать своей копией. У каждого примера есть разбор: что на схеме, какие библиотеки нужны и что делает код.
Мигание светодиодом
Самый первый скетч: вывод переключается раз в секунду. С него начинается проверка того, что сборка, прошивка и симуляция работают.
Веб-сервер: форма настроек
Форма и разбор полей через server.arg(): так прибору задают имя, яркость, пороги. Ползунок меняет скважность ШИМ — яркость видна п…
Arduino Mega: пятнадцать выводов с ШИМ
Главная причина брать Mega — не память, а выводы. ШИМ здесь на пятнадцати выводах против шести у Uno, и четыре светодиода с плавно…
Веб-сервер: лампа без перезагрузки
Страница сама спрашивает состояние и переключает лампу, не перезагружаясь. Разделение на страницу и JSON — то, с чего начинается л…
Почему 60 ампер-часов не значит 60 ампер в течение часа
Тот же аккумулятор, но нагрузка стартерная: две сотни ампер. Паспортная ёмкость измерена неспешным двадцатичасовым разрядом, и при…
Мигание без delay()
То же мигание, но на millis(). Пока идёт delay(), процессор не может делать ничего другого — здесь может.
Ноль горячее фазы: третья гармоника в офисном щитке
Три фазы, на каждой по киловатту компьютеров и светодиодных светильников. Нагрузка распределена идеально, перекоса нет — а в нулев…
Усилитель со своим питанием: двадцать восемь деталей
Две законченные схемы, соединённые в одну: блок питания из сети и усилитель, который от него работает. Слева переменное напряжение…
Амперметр и вольтметр: как их включать
Два прибора, которые путают чаще всего. Амперметр включается в разрыв цепи и меряет то, что через него течёт. Вольтметр — параллел…
Arduino Mega: шина I2C переехала на 20 и 21
Схема с Uno на Mega не переносится: A4 и A5 здесь обычные аналоговые входы, а шина выведена на 20 и 21. Дисплей молчит, и в коде и…
Arduino Nano: выводы A6 и A7, которые только читают
У Nano на два аналоговых входа больше, чем у Uno. Но digitalWrite и pinMode на них не работают вовсе — не запрещены, а физически н…
Дыхание светодиода
Та же яркость, но по синусу. Линейное изменение скважности глаз воспринимает неравномерно.
Кнопка: чтение состояния
Подтяжка внутри контроллера и инверсия логики: нажатая кнопка даёт LOW. Первое, обо что спотыкаются все.
Настольные часы на OLED
Часы и экран на одной шине I2C: два устройства, два провода. Экран перерисовывается только когда сменилась секунда.
LCD: счётчик секунд
Обновление одной строки без очистки всего экрана: мигания не будет.
NeoPixel: адресные светодиоды
Одна линия данных на всю ленту. Цвет каждого пикселя задаётся отдельно, показывается по show().
Свет в комнате: автомат, выключатель, светильник
Самая частая схема в квартире, собранная правильно. Фаза идёт с автомата на выключатель, с выключателя — на светильник; ноль прихо…
Светофор
Конечный автомат на трёх светодиодах: состояние, длительность, переход. Основа для любой последовательности.
OLED: график значения
Кольцевой буфер и столбики. Показывает не только текущее значение, но и как оно менялось.
Бегущий огонь
Четыре светодиода и массив выводов. Первый пример, где код короче схемы.
Шаговый двигатель
Полношаговая последовательность на четырёх выводах. Скорость ограничена паузой между шагами.
OLED: индикатор выполнения
Рамка, заливка и проценты. Примитивы GFX: прямоугольники и текст.
Два светодиода по очереди
Два вывода и противофаза. Показывает, что состояние выводов независимо.
Щиток однокомнатной квартиры
Собранный целиком щиток: ввод, счётчик, вводной автомат, противопожарное УЗО и три группы — свет, розетки комнаты, розетки кухни…