Мигающий светодиод на Arduino Uno — это один из первых примеров для новичков, которые начинают изучать программирование платы Arduino. Рассмотрим несколько примеров скетчей: мигание встроенного светодиода, мигающий светодиод без функции delay, мигание нескольких светодиодов (мигалка Ардуино). Прочитав статью до конца, вы поймете, как управлять включением светодиодов, подключенных к Ардуино.
СОДЕРЖАНИЕ
Необходимые компоненты:
- Arduino Uno / Arduino Nano / Arduino Mega
- светодиоды и резисторы
- макетная плата
- коннекторы
Дополнительные материалы на эту тему:
Все платы из семейства Arduino имеют встроенный светодиод, подключенный к цифровому выводу 13 через резистор. Этот светодиод на микроконтроллере мигает при включении или при перезагрузке платы. С помощью простого кода можно управлять включением и выключением встроенным светодиодом на плате Ардуино, который «висит» на пине 13. Для этого даже не потребуется собирать электрическую схему маячка на макетной плате.
Маячок Ардуино: мигание светодиодом на плате

Для первого примера вам не нужно собирать основную схему. Программный код такой же, как в примере «Подключение светодиода к Ардуино». Встроенный светодиод подключен через резистор, поэтому вы можете подключить внешний светодиод напрямую к контакту GND и пину 13. Это самая простая программа для начала работы с Arduino. Скопируйте код, размещенный далее, и загрузите его в микроконтроллер через утилиту Arduino IDE.
Скетч мигающего светодиода на плате Ардуино
#define LED 13
void setup() {
pinMode(LED, OUTPUT);
}
void loop() {
digitalWrite(LED, HIGH);
delay(1000);
digitalWrite(LED, LOW);
delay(1000);
}
Мигание светодиодом Ардуино без функции delay

В программе используется функция millis Ardunio, которая возвращает количество миллисекунд, прошедших с момента запуска программы. Это позволяет использовать микроконтроллеры Ардуино в многозадачном режиме, так как millis не останавливает выполнение команд в коде, в отличие от функции delay. Микроконтроллер отсчитывает заданные миллисекунды и может выполнять другие важные задачи параллельно.
Скетч Arduino мигание светодиодом без delay
#define LED 13
unsigned long currentTime;
boolean ledState = 0;
void setup() {
pinMode(LED, OUTPUT);
}
void loop() {
if (millis() - currentTime > 500) {
currentTime = millis();
ledState=!ledState;
digitalWrite(LED, ledState);
}
}
Мигалка на Ардуино: мигание двумя светодиодами

Для следующего примера вам потребуется собрать схему на макетной плате с двумя светодиодами, как показано на изображении выше. Более сложной программой с мигающими светодиодами является программа для светофора на Arduino, где необходимо управлять включением и выключением трех и более светодиодов. После сборки электрической схемы загрузите в микроконтроллер следующую программу для мигалки.
Скетч для включения и выключения двух светодиодов
#define RED 13
#define BLU 12
void setup() {
pinMode(RED, OUTPUT);
pinMode(BLU, OUTPUT);
}
void loop() {
digitalWrite(RED, HIGH);
digitalWrite(BLU, LOW);
delay(1000);
digitalWrite(RED, LOW);
digitalWrite(BLU, HIGH);
delay(1000);
}
Заключение. Мы рассмотрели в статье, как сделать мигающий светодиод / лампочку на Arduino Uno (маячок). Вы можете использовать для этих целей функцию millis или функцию delay. Если у вас остались вопросы по этой теме, не стесняйтесь оставлять их в комментариях к этому обзору. Мы постараемся ответить на все вопросы, как только получим их. Желаем вам успехов в освоении языка программирования Arduino!
