Примеры проектов на Arduino
Примеры проектов на Arduino — 55 готовых примеров со схемой и кодом. Откройте любой в браузере и запустите без платы и проводов.
Arduino Uno: индикатор TM1637 на двух выводах
Четыре разряда на двух проводах. Протокол похож на I2C и им не является, поэтому выводы любые — в отличие от дисплеев, прибитых к…
Arduino Uno: ручка яркости
Переменный резистор крутит яркость светодиода. Между входом и выходом стоит map: у входа 1024 значения, у ШИМ — 256, и переводить…
Arduino Uno: сглаживание показаний
Показания аналогового входа дрожат в последних разрядах всегда. Скользящее среднее убирает дрожь, и на графике сразу видно, чем за…
Arduino Uno: экран OLED и его цена в памяти
SSD1306 держит картинку в ОЗУ платы: 1024 байта из 2048 у Uno. Половина памяти уходит на экран ещё до первой переменной — и это на…
Arduino Uno: сколько осталось оперативной памяти
У ATmega328P две тысячи байт ОЗУ. Кончается она молча: ни ошибки, ни перезагрузки — плата просто начинает вести себя странно, и бе…
Arduino Uno: таймер 1 ровно раз в секунду
millis плюс проверка в цикле дают приблизительный интервал. Таймер в режиме CTC даёт точный — и срабатывает, даже когда цикл занят…
Arduino Uno: плавная яркость и выводы с ШИМ
analogWrite работает не на всяком выводе: на Uno ШИМ есть только на шести. Пример показывает разницу — на одном светодиоде яркость…
Arduino Uno: прерывание на любом выводе
Обход правила про выводы 2 и 3. У ATmega328P есть второй механизм прерываний, доступный на каждом выводе — ценой одного обработчик…
Arduino Uno: светофор на состояниях
Три светодиода и четыре фазы. Написано машиной состояний, а не цепочкой delay — потому что светофор, который нельзя переключить кн…
Arduino Uno: часы реального времени
millis считает от включения и обнуляется при сбросе. Часам нужна микросхема со своей батарейкой — и она же объясняет, зачем в схем…
Arduino Uno: «Жизнь» Конвея на матрице 8×8
Два правила — выжить при двух-трёх соседях и родиться при трёх — и на матрице ползёт планер и мигает мигалка. Поле замкнуто: улете…
Arduino Uno: меню на LCD и энкодере
Классический интерфейс прибора из одной ручки: поворот листает пункты, нажатие выбирает, в пункте поворот меняет значение, второе…
Arduino Uno: прерывание по фронту
На Uno прерывания по фронту есть только на выводах 2 и 3 — это первое, обо что спотыкаются переносящие код с ESP32, где их можно п…
Arduino Uno: таблицы и тексты во флеше
Тридцать две тысячи байт флеша против двух тысяч ОЗУ. Всё, что не меняется, должно лежать во флеше — иначе таблица на сто чисел съ…
Arduino Uno: электронный кубик на семи светодиодах
Семь светодиодов стоят как точки на грани кубика. Нажали кнопку — грани мелькают всё медленнее, как у катящегося кубика, и останав…
Arduino Nano: термометр, который помнит минимум и максимум после выключения
Рекорды температуры хранятся в EEPROM — памяти, которая переживает выключение. Писать туда часто нельзя, у ячейки около ста тысяч…
Arduino Uno: азбука Морзе — текст из порта вспышками и писком
Напишите текст в монитор порта — Arduino отстучит его светодиодом и зуммером, а в порт напечатает точки и тире. Длительности по пр…
Arduino Uno: игра «Угадай число» в мониторе порта
Arduino загадывает число от 1 до 100 и отвечает «больше» или «меньше». Деля отрезок пополам, угадаете за семь попыток любое число…
Arduino Uno: секундомер с кругами на LCD
Левая кнопка — старт и стоп, правая — отметить круг на ходу или сбросить на остановленном. На первой строке общее время с сотыми…
Arduino Uno: энкодер — яркость ручкой
Ручка с щелчками вместо потенциометра: у неё нет упоров, и она не врёт после выключения. Поворот ловит прерывание, кнопка под ручк…
Arduino Uno: HTU21D по I2C без библиотеки
Температура и влажность двумя командами по I2C. Контрольная сумма проверяется в скетче, чтобы сбой на шине не стал показанием.
Arduino Uno: датчик DHT11
Самый дешёвый датчик температуры и влажности: целые значения по одному проводу. Проверка на NaN обязательна — без неё оборванный п…
Arduino Uno: датчик влажности почвы
Чем влажнее почва, тем ниже напряжение на AO. Скетч переводит отсчёты АЦП в проценты и зажигает светодиод, когда горшок высох.
Arduino Uno: датчик газа MQ-2
Чем больше газа, тем выше напряжение на AO. Сигнал включается при высоком пороге и выключается только при заметно более низком.