
Видео
Схема

Исходный код
1// ─────────────────────────────────────────
2// BlueGrays · bluegrays.com
3// Мигающий светодиод
4// ─────────────────────────────────────────
5// Мигает одним светодиодом каждые 100 мс. Показывает базовое использование
6// функций digitalWrite и delay.
7//
8// Пины:
9// D9 -> Светодиод (с резистором 220 ohm)
10
11void setup() {
12 pinMode(9,OUTPUT); // Пин светодиода как выход
13}
14
15void loop() {
16 digitalWrite(9,HIGH); // Включить светодиод
17 delay(100); // Ждать 100 мс (1000 мс = 1 с)
18 digitalWrite(9,LOW); // Выключить светодиод
19 delay(100);
20}
21
Частые вопросы
Почему светодиод нельзя подключать без резистора?
Светодиод сам не ограничивает свой ток; при прямом подключении к 5 V он потребляет слишком большой ток, что может повредить и светодиод, и пин Arduino. Резистор 220 Ω ограничивает ток примерно до 13–15 mA, а это безопасно и для светодиода, и для пина.
Какой вывод светодиода — плюс (+)?
Длинная ножка — анод (+), короткая — катод (−). Сторона корпуса светодиода с плоским срезом тоже указывает на катод. Подключи анод к пину Arduino (через резистор), а катод — к GND; если перепутать, светодиод не загорится, но и не повредится.
Код загружен, но светодиод не горит. Что проверить?
Проверь по очереди: не вставлен ли светодиод наоборот? Совпадает ли номер пина в коде и в схеме? Есть ли подключение к GND? Стоят ли светодиод и резистор в одном ряду макетной платы? Светодиод «L» на плате тоже подключён к пину 13; можно сначала попробовать его через LED_BUILTIN.
Как изменить скорость мигания?
Значение внутри `delay()` задаётся в миллисекундах: `delay(1000)` ждёт одну секунду. Уменьшишь значение — светодиод будет мигать быстрее, увеличишь — медленнее. Длительности включения и выключения можно задать и по отдельности.
