Моргаем встроенным светодиодом ардуино

Плавное управление RGB светодиодом

Управление rgb светодиодом на Arduino можно сделать плавным, используя аналоговые выходы с «ШИМ». Для этого ножки светодиода необходимо подключить к аналоговым выходам, например, к пинам 11, 10 и 9. И подавать на аналоговые выходы микроконтроллера различные значения ШИМ (PWM), для этого воспользуемся циклом for, с помощью которого можно повторять нужные команды в программе.

Скетч для плавного мигания RGB светодиода

#define RED 11  // присваиваем имя RED для пина 11
#define GRN 10 // присваиваем имя GRN для пина 10
#define BLU  9   // присваиваем имя BLU для пина 9
 
void setup() {
   pinMode(RED, OUTPUT);  // используем Pin11 для вывода
   pinMode(GRN, OUTPUT); // используем Pin10 для вывода
   pinMode(BLU, OUTPUT);  // используем Pin9 для вывода
}
 
void loop() {
   // плавное включение/выключение красного цвета
   for (int i = 0; i <= 255; i++) {
      analogWrite(RED, i);
      delay(2);
   }
   for (int i = 255; i >= 0; i--) {
      analogWrite(RED, i);
      delay(2);
   }

   // плавное включение/выключение зеленого цвета
   for (int i = 0; i <= 255; i++) {
      analogWrite(GRN, i);
      delay(2);
   }
   for (int i = 255; i >= 0; i--) {
      analogWrite(GRN, i);
      delay(2);
   }

   // плавное включение/выключение синего цвета
   for (int i = 0; i <= 255; i++) {
      analogWrite(BLU, i);
      delay(2);
   }
   for (int i = 255; i >= 0; i--) {
      analogWrite(BLU, i);
      delay(2);
   }
}

Пояснения к коду:

  1. с помощью директивы мы заменили номера пинов 9, 10 и 11 на соответствующие имена , и . Это сделано для удобства, чтобы не запутаться в скетче и понимать какой цвет мы включаем;
  2. пины 9, 10 и 11 мы использовали, как аналоговые выходы .

Как подключить светодиод к Arduino Uno / Nano

Для этого занятия нам потребуется:

  • плата Arduino Uno / Arduino Nano / Arduino Mega;
  • макетная плата;
  • несколько светодиодов и резисторов 220 Ом;
  • провода «папа-папа».

Для надёжной сборки устройств создаются печатные платы, на что уходит много времени. Для быстрой сборки электрических схем без пайки используют макетную плату (breadboard). Под слоем пластика на макетной плате находятся медные пластины-рельсы (дорожки), выложенные по простому принципу (смотри фото). Дорожки служат для создания контакта между радиоэлементами и проводами.

Быстрая сборка схем на макетной плате

Одну и ту же схему можно собрать разными способами
Длинная ножка светодиодов — анод, она всегда подключается к плюсу

Для чего светодиод включают к Ардуино с резистором? Дело в том, что в светодиоде стоит кристалл который боится больших токов. Резистор призван ограничивать силу тока (Амперы), чтобы светодиод не перегорел. Большой ток губителен для светодиода, меньший ток (благодаря подключению резистора) обеспечивает длительную работу. Чтобы подключить светодиод к Ардуино без резистора, используйте 13 порт.

Кабель с разъемами USB-A и USB-B для подключения принтера

Если у вас не установлена программа Arduino IDE, то скачайте последнюю версию на официальном сайте www.arduino.cc. С помощью USB кабеля производится запись программ, также плата получает питание от компьютера. Если требуется автономная работа электронного устройства, то плату можно запитать от батарейки или блока питания на 7-12 В. При подаче питания на плате загорится светодиод индикации.

Убедитесь, что программа определила ваш тип платы Ардуино

Шаг 1. Зайдите в основном меню «Инструменты -> Плата». Если плата Arduino определилась неправильно, то выберите необходимый тип, например, Arduino Uno.

Шаг 2. Установите порт (кроме COM1) подключения в меню «Инструменты -> Порт», так как при подключении Ардуино к ПК создается виртуальный COM-порт.

Убедитесь, что программа определила порт подключения Ардуино

Скетч для включения светодиода от Ардуино

void setup() {
pinMode(13, OUTPUT); // объявляем пин 13 как выход
}

void loop() {
digitalWrite(13, HIGH); // зажигаем светодиод

delay(1000); // ждем 1 секунду

digitalWrite(13, LOW); // выключаем светодиод

delay(1000); // ждем 1 секунду
}

Подключение светодиодов к другим портам производится по схеме, размещенной выше (подключение резистора к светодиодам также необходимо). А в скетче требуется изменить номера портов, к которым подключены светодиоды. При этом сколько вы используете светодиодов в схеме, столько и раз следует прописать команды .

Скопируйте код и вставьте скетч в программу Arduino IDE

Перед загрузкой программы в микроконтроллер можно выполнить проверку (компиляцию), на наличие ошибок в коде. В случае обнаружения ошибки — будет получено сообщение в нижнем окошке Arduino IDE. В любом случае, при загрузке скетча, сначала происходит проверка и компиляция программы. При компиляции происходит перевод программы в двоичный код, понятный микроконтроллеру.

Перед загрузкой программы в микроконтроллер, потребуется сохранить скетч на компьютере. Нажмите «Сохранить» в появившемся окне и начнется загрузка.

Перед загрузкой программы, потребуется сохранить скетч

Пояснения к коду:

  1. процедура выполняется при запуске микроконтроллера один раз. Используется для конфигурации портов микроконтроллера и других настроек;
  2. после выполнения запускается процедура , которая выполняется в бесконечном цикле. Это мы используем, чтобы светодиод мигал постоянно;
  3. процедуры и должны присутствовать в любой программе (скетче), даже если вам не нужно ничего выполнять в них — пусть они будут пустые, просто не пишите ничего между фигурными скобками.

Программирование светодиода

Для начала разберемся, что такой ввод и вывод. Есть команды, которые мы даем компьютеру. Например, мы вводим какой-то текст, который хотим распечатать. В этом случае клавиатура — это устройство ввода, так как с ее помощью мы передаем команду компьютеру. Принтер — устройство вывода, он «выводит» наш результат на бумагу.

Теперь разберемся с кодом для мигания светодиода. Нам нужно настроить нашу ножку на вывод. Для этого используем команду pinMode. Эта команда говорит плате, как она будет работать: на вход или на вывод. Команда является настройкой программы, поэтому она пишется в первом блоке setup(). Общий вид кода:

В скобках после функции pinMode мы указываем номер пина, с которым мы будем работать. После точки с запятой указываем, на что будет работать наш пин: на ввод INPUT или на вывод OUTPUT. В нашем случае пин 3 работает на вывод, это мы и пишем в коде.

Функция digitalWrite()

Функция digitalWrite даёт команду подать напряжение на определённый пин платы. Номер этого пина мы указываем в скобках. У функции есть параметры HIGH и LOW. Параметр HIGH (с английского — высоко) включает напряжение, параметр LOW (с английского — низко) отключает.

Нам нужно включить светодиод. Для этого мы включаем напряжение на 3-ий пин, поэтому код будет выглядеть так:

Это уже готовый код. На его основе мы можем включить светодиод. Если загрузить этот код на плату, то светодиод загорится.

Для выключения светодиода мы используем ту же функцию. Для этого в скобках после функции задаем параметр LOW. Функция выглядет так: digitalWrite(3; LOW)

Функция delay()

Delay с английского переводится как «задерживать». Эту задачу и выполняет функция: она приостанавливает выполнение программы на указанный промежуток времени. В скобках мы указываем время остановки в миллисекундах. 1 секунда = 1000 миллисекунд, поэтому если нам нужно установить задержку в секунду, пишем: delay(1000).

Теперь допишем наш код с использованием функции delay() и функцией digitalWrite() для выключения светодиода:

После загрузки программы на плату получаем следующее:

Срок службы

Период эксплуатации прибора из трех кристаллов определяется временем наработки на отказ самого недолговечного элемента. В данном случае он у всех трех p-n переходов примерно одинаковый. Производители заявляют срок службы RGB-элементов на уровне 25 000-30 000 часов

Но к этой цифре надо относиться осторожно. Заявленное время жизни эквивалентно непрерывной работе в течение 3-4 лет

Вряд ли кто-то из производителей проводил ресурсные испытания (да еще в различных тепловых и электрических режимах) в течение столь долгого периода. За это время появляются новые технологии, испытания надо начинать заново – и так до бесконечности. Гораздо более информативен гарантийный срок эксплуатации. А он составляет 10 000-15 000 часов. Все, что дальше – в лучшем случае математическое моделирование, в худшем – голый маркетинг. Проблема в том, что на распространенные недорогие светодиоды сведения о гарантии производителя, как правило, отсутствуют. Но ориентироваться можно на 10 000-15 000 часов и держать в голове еще приблизительно столько же. А дальше уповать только на везение. И еще один момент – период службы очень сильно зависит от теплового режима во время эксплуатации. Поэтому один и тот же элемент в разных условиях прослужит разное время. Для продления срока жизни LED надо внимательно относиться к проблеме отведения тепла, не пренебрегать радиаторами и создавать условия для естественной циркуляции воздуха, а в некоторых случаях прибегать и к принудительной вентиляции.

Но даже уменьшенные сроки — это несколько лет эксплуатации (ведь LED не будет работать без пауз). Поэтому появление трехцветных светодиодов позволяет дизайнерам широко применять полупроводниковые приборы в их задумках, а инженерам – эти идеи реализовывать «в железе».

Как сделать светодиодную мигалку своими руками

Существует множество схем, с помощью которых можно заставить мигать светодиод. Мигающие устройства можно изготовить как из отдельных радиодеталей, так и на основе различных микросхем. Сначала мы рассмотрим схему мигалки мультивибратора на двух транзисторах. Для ее сборки подойдут самые ходовые детали. Их можно приобрести в магазине радиодеталей или «добыть» из отживших свой срок телевизоров, радиоприемников и другой радиоаппаратуры. Также во многих интернет магазинах можно купить наборы деталей для сборки подобных схем led мигалок.

На рисунке изображена схема мигалки мультивибратора, состоящая всего из девяти деталей. Для ее сборки потребуются:

  • два резистора по 6.8 – 15 кОм;
  • два резистора имеющие сопротивление 470 – 680 Ом;
  • два маломощных транзистора имеющие структуру n-p-n, например КТ315 Б;
  • два электролитических конденсатора емкостью 47 –100 мкФ
  • один маломощный светодиод любого цвета, например красный.

Не обязательно, чтобы парные детали, например резисторы R2 и R3, имели одинаковую величину. Небольшой разброс номиналов практически не сказывается на работе мультивибратора. Также данная схема мигалки на светодиодах не критична к напряжению питания. Она уверенно работает в диапазоне напряжений от 3 до 12 вольт.

Схема мигалки мультивибратора работает следующим образом. В момент подачи на схему питания, всегда один из транзисторов окажется открытым чуть больше чем другой. Причиной может служить, например, чуть больший коэффициент передачи тока. Пусть первоначально больше открылся транзистор Т2. Тогда через его базу и резистор R1 потечет ток заряда конденсатора С1. Транзистор Т2 будет находиться в открытом состоянии и через R4 будет протекать его ток коллектора. На плюсовой обкладке конденсатора С2, присоединенной к коллектору Т2, будет низкое напряжение и он заряжаться не будет. По мере заряда С1 базовый ток Т2 будет уменьшаться, а напряжение на коллекторе расти. В какой-то момент это напряжение станет таким, что потечет ток заряда конденсатора C2 и транзистор Т3 начнет открываться. С1 начнет разряжаться через транзистор Т3 и резистор R2. Падение напряжения на R2 надежно закроет Т2. В это время через открытый транзистор Т3 и резистор R1 будет течь ток и светодиод LED1 будет светиться. В дальнейшем циклы заряда-разряда конденсаторов будут повторяться попеременно.

Если посмотреть осциллограммы на коллекторах транзисторов, то они будут иметь вид прямоугольных импульсов.

Когда ширина (длительность) прямоугольных импульсов равна расстоянию между ними, тогда говорят, что сигнал имеет форму меандра. Снимая осциллограммы с коллекторов обоих транзисторов одновременно, можно заметить, что они всегда находятся в противофазе. Длительность импульсов и время между их повторениями напрямую зависят от произведений R2C2 и R3C1. Меняя соотношение произведений можно изменять длительность и частоту вспышек светодиода.

Для сборки схемы мигающего светодиода понадобятся паяльник, припой и флюс. В качестве флюса можно использовать канифоль или жидкий флюс для пайки, продающийся в магазинах. Перед сборкой конструкции необходимо тщательно зачистить и залудить выводы радиодеталей. Выводы транзисторов и светодиода нужно соединять в соответствии с их назначением. Также необходимо соблюдать полярность включения электролитических конденсаторов. Маркировка и назначение выводов транзисторов КТ315 показаны на фото.

Проще всего определить катод светодиода, рассматривая прибор на просвет. Катодом является электрод с большей площадью. Минусовой вывод «электролита» обычно помечен белой полосой на корпусе прибора.

В зависимости от задач, которые ставит перед собой радиолюбитель, схему мигалки можно собрать «навесу», соединяя выводы радиодеталей между собой с помощью отрезков тонкого провода. В этом случае может получиться конструкция наподобие той, что показана ниже на фото.


Собираем мигалку «на коленке»

Если нужно собрать мигалку для последующего применения, то монтаж можно выполнить на куске жесткого картона или изготовить печатную плату из текстолита.

Бегущие огни на светодиодах своими руками: схема

Одним из вариантов применения твердотельных световых источников в декоративных целях, является сборка так называемых «бегущих огней» на диодах, включающая в себя генератор прямоугольных импульсов, счетчик, дешифратор и устройства индикации.

Сборка всех элементов по предложенной схеме выполняется на макетной беспаечной плате, а устанавливаемые конденсаторы и резисторы по номиналу могут иметь некоторый разброс, но строго в пределах ±20%.

Бегущие огни на мощных светодиодах своими руками

Устанавливаемые в «бегущие огни» диоды (HL1 — HL16) могут обладать любым цветом свечения, но обязательным критерием выбора таких источников света является рабочее напряжение на уровне 3,0 В.

Резюме

Платформа Arduino предоставляет нам несколько способов выполнения задержки в своем проекте. С помощью delay вы можете быстро поставить на паузу выполнение скетча, но при этом заблокируете работу микроконтроллера. Использование команды millis позволяет обойтись в ардуино без delay, но для этого потребуется чуть больше программировать. Выбирайте лучший способ в зависимости от сложности вашего проекта. Как правило, в простых скетчах и при задержке меньше 10 секунд используют delay. Если логика работы сложнее и требуется большая задержка, то вместо delay лучше использовать millis.

«>

Проект “Мигалка”

Давайте попробуем сделать проект посложнее. Добавим два светодиода, которые будут мигать поочередно.

  • Плата Arduino Uno или Nano
  • Макетная плата
  • Два резистора 220 Ом
  • Два светодиода. Если есть возможность, лучше взять синий и красный.
  • Провода для соединения.

Сложность: простой проект.

  • Как подключить светодиод к ардуино.
  • Как изменить стандартную программу мигалки.
  • Повторим процедуру загрузки скетча в микроконтроллер.

Принцип подключения при этом не меняется. Мы используем два пина платы контроллера для соединения со светодиодами – 13 и 12. Можно использовать следующую схему:

Схема подключения светодиодов проекта Мигалка

Положительные контакты светодиода соединяем с цифровыми пинами, отрицательные – с GND.

Программирование мигалки

В скетч с мигающим светодиодом нам надо будет внести определенные изменения. Алгоритм действий таков:

  • Включаем синий светодиод
  • Ждем какое-то время (1 секунду)
  • Выключаем синий светодиод и одновременно включаем красный
  • Ждем какое-то время (1 секунду)
  • Повторяем еще раз

Попробуйте написать программу самостоятельно, основываясь на опыте, полученном из предыдущего проекта. Если возникнут сложности, можно обратиться к примеру далее по тексту.

В этой программе нам опять встречается блок команд loop. В нем мы выполняем включение и выключение пинов с помощью digitalWrite. Никаких сложностей это вызвать не должно.

Давайте поговорим более подробно о блоке setup. Мы видели его и в прошлом примере. Внутри setup обычно располагаются команды инициализации, которые запускаются только один раз, в момент подключения контроллера к питанию.

В примерах с мигалками мы устанавливаем пины в нужный режим – OUTPUT. В этом режиме мы работаем с внешними устройствами, получающими питание с данного пина ардуино. Например, наш светодиод ничего не передает в плату, он использует пин 13 для того, чтобы включиться. Поэтому мы устанавливаем режим OUTPUT – “на выход”. По умолчанию все пины находятся в режиме INPUT, оптимальном для подключения датсиков. Более подробную информацию вы можете найти в описании функции pinMode.

Надеемся, процедура проверки скетча и прошивки контроллера не вызвала каких-то трудностей. Запустите программу и вы увидите, как весело перемигиваются светодиоды на плате. Поздравляем с написанием своих первых проектов на Ардуино!

Подключение нескольких светодиодов

Для подключения нескольких светодиодов к ардуино нужно просто подключить каждый из них к своему цифровому порту по той же схеме. Например, для создания проекта «Мигалка» можно взять два светодиода красного и синего цвета, подключив через сопротивление их положительные (длинные ножки)контакты к 13 и 12 пину соответственно. Короткие ножки подключаются к минусу – земле.


Схема подключения светодиодов проекта Мигалка

Мы уже знаем, что на плате нас дожидаются три разъема с таким обозначением («GND»), можно подключать к любому. Если разъемов питания будет не хватать, у нас есть три варианта.

  • Сформировать нужные уровни питания на свободных пинах. Например, подав в скетче низкий уровень сигнала на пин 5, мы получим на этом разъеме необходимый нам «минус».
  • Использовать макетную плату, на которой есть отличные варианты для раздачи «плюсов и минусов» через общие линии питания (смотрите статью на нашем сайте).
  • Использовать специальные платы расширения Sensor Shield, у которых для каждого пина отдельно выводятся пины с питанием и землей.

Точно так же вы сможете подключить и следующие светодиоды, приступив к проектам светофор или светодиодная лента.

Имейте в виду, что подключение более 3 светодиодов создает достаточно большую нагрузку на модуль питания платы Arduino. Поэтому не рекомендуется устраивать длительное одновременное включение множества светодиодов.

Как работает RTOS

Прежде чем переходить к изучению принципов работы RTOS (операционных систем реального времени) давайте сначала рассмотрим что такое задача (Task). Задача – это кусок кода программы, которая выполняется микроконтроллером в строго назначенное время (по расписанию). То есть если вы хотите выполнить какую-нибудь задачу, то ей должно быть назначено расписание с помощью задержки на уровне ядра (kernel delay) или с помощью прерываний. Это можно сделать с помощью планировщика, присутствующего в ядре. В одноядерном процессоре планировщик помогает задачам выполняться в заданное время, при этом часто может создаваться впечатление, что различные задачи выполняются одновременно. Каждая задача выполняется в соответствии с приоритетом, который ей назначен.

Теперь давайте посмотрим что происходит в ядре RTOS если мы захотим создать задачу для мигания светодиодом с интервалом в 1 секунду и назначим этой задаче наивысший приоритет.

Но независимо от нашей задачи мигания светодиодом, ядром RTOS всегда создается еще одна дополнительная задача, которая называется «холостой» задачей (idle task). Холостая задача создается когда нет никакой другой задачи для исполнения. Эта задача всегда выполняется с приоритетом 0 (самый низкий приоритет). Если мы проанализируем временной граф, показанный на рисунке выше, мы можем увидеть что выполнение всегда начинается с задачи мигания светодиодом (LED task) и она выполняется определенное время, а в оставшееся время выполняется холостая задача (idle task) до тех пор пока не наступит момент прерывания (tick interrupt). При наступлении этого момента прерывания ядро решает какая задача должна выполняться исходя из приоритета задачи и общего затраченного времени на выполнение задачи мигания светодиодом. Когда интервал времени 1 секунда заканчивается, ядро снова выбирает для выполнения задачу мигания светодиодом (LED task) поскольку она имеет более высокий приоритет чем холостая задача (idle task). Если в конкретный момент времени имеется для выполнения две или более задачи с одинаковым приоритетом, то они выполняются циклически, друг за другом.

На следующем рисунке показана диаграмма состояний, которая показывает переключение с невыполняемой задачи на выполняемую.

Каждая новая созданная задача сначала пребывает в состоянии готовности (Ready state), которое является частью состояния, во время которого не происходит выполнения задачи (not running state). Если созданная задача (Task1) имеет более высокий приоритет, чем все остальные задачи, она переходит в состояние выполнения (running). Если во время ее выполнения поступает задача с более высоким приоритетом чем у нее, то она снова возвращается в состояние Ready state. Если происходит блокировка выполнения этой задачи со стороны API (программный интерфейс приложения), то процессор больше не занимается этой задачей до тех пор, пока не закончится лимит времени, определенный пользователем.

Если выполнение задачи Task1 приостанавливается со стороны API, то задача Task1 переходит в состояние приостановки (Suspended state) и она в этом состоянии будет не видна планировщику (scheduler). Если вы возобновляете (resume) задачу 1 из состояния приостановки, то она снова переходит в состояние Ready (готова к исполнению) как показано на приведенном рисунке.

Итак, мы рассмотрели общие принципы выполнения задач и изменения их состояния в операционной системе реального времени. В этой статье мы рассмотрим выполнение трех задач в плате Arduino Uno используя FreeRTOS API.

Сборка сигнализации своими руками

Определившись с тем, как устроены мигающие светодиоды, как они работают, и почему мигают, можно приступить непосредственно к монтажу.

Для сборки потребуется 2 гибких многожильных проводка небольшого диаметра. Предпочтительнее выбирать кабели разного цвета, чтобы иметь возможность отличать их при подключении к автомобильной проводке.

Далее нужно тщательно заизолировать места пайки при использовании обычного или термоусадочного кембрика.

Когда резистор и оба провода закреплены, можно поместить схему в толстую полимерную трубку. Окончательный этап монтажа сигнализации своими руками – подключение проводов к «+» и «-» цепи питания автомобиля. Если все мигает как надо, мигалку на светодиодах можно считать удачной.

Сборка схем своими руками на базе светодиодов пользуется огромной популярностью среди автолюбителей. Почему? Диоды дают огромные возможности для тюнинга. Замена любого освещения, внутренней подсветки и многое другое.

Функция millis вместо delay

Функция millis() позволит выполнить задержку без delay на ардуино, тем самым обойти недостатки предыдущих способов. Максимальное значение параметра millis такое же, как и у функции delay (4294967295мс или 50 суток). При переполнении значение просто сбрасывается в 0, не забывайте об этом.

С помощью millis мы не останавливаем выполнение всего скетча, а просто указываем, сколько времени ардуино должна просто “обходить” именно тот блок кода, который мы хотим приостановить. В отличие от delay millis сама по себе ничего не останавливает. Данная команда просто возвращает нам от встроенного таймера микроконтроллера количество миллисекунд, прошедших с момента запуска. При каждом вызове loop Мы сами измеряем время, прошедшее с последнего вызова нашего кода и если разница времени меньше желаемой паузы, то игнорируем код. Как только разница станет больше нужной паузы, мы выполняем код, получаем текущее время с помощью той же millis и запоминаем его – это время будет новой точкой отсчета. В следующем цикле отсчет уже будет от новой точки и мы опять будем игнорировать код, пока новая разница millis и нашего сохраненного прежде значения не достигнет вновь желаемой паузы.

Вот пример, наглядно иллюстрирующий работу команды:

Сначала мы вводим переменную timing, в ней будет храниться количество миллисекунд. По умолчанию значение переменной равно 0. В основной части программы проверяем условие: если количество миллисекунд с запуска микроконтроллера минус число, записанное в переменную timing больше, чем 10000, то выполняется действие по выводу сообщения в монитор порта и в переменную записывается текущее значение времени. В результате работы программы каждые 10 секунд в монитор порта будет выводиться надпись 10 seconds. Данный способ позволяет моргать светодиодом без delay.

Программа и скетч мигающего светодиода

Давайте теперь рассмотрим программу, которую мы загрузили из примеров и проанализируем.

Во-первых, давайте пока уберем большой блок комментарий – они обозначены в Arduino IDE серым цветом. На данном этапе они немного мешают нам, хотя они крайне важны и вы всегда должны писать комментарии к своим программам.

Если вы обратите внимание на блок loop, то именно в нем и сосредоточены наши команды, управляющие светодиодом:

digitalWrite – это название функции, которая отвечает за подачу напряжения на пин. Подробнее о ней можно прочитать в отдельной статье о digitalWrite.

LED_BUILDIN – это название внутреннего светодиода. В большинстве плат за этим названием прячется цифра 13. Для плат Uno, Nano можно смело писать 13 вместо LED_BUILDIN.

HIGH – условное название высокого уровня сигнала. Включает светодиод. Можно заменить цифрой 1.

LOW – условное обозначение низкого уровня сигнала. Выключает светодиод. Можно заменить цифрой 0.

delay – функция, которая останавливает выполнение скетча на определенное время. Крайне нежелательно использовать ее в реальных проектах, но в нашем простом примере она отработает замечательно. В скобках мы указываем цифру – это количество микросекунд, которые нужно ждать. 1000 – это 1 секунда. Подробнее можно прочитать в нашем материале о delay() .

Как только программа дойдет до конца, контроллер перейдет в начало блока loop и будет выполнять все команды заново. И так раз за разом, целую вечность (пока есть свет). Наш светодиод мигает без остановки.

Проект “Маячок” с мигающим светодиодом

В этом проекте мы с вами практически повторим предыдущий, но при этом добавим самую настоящую схему. Подключим светодиод и токоограничивающий резистор. Чтобы не повторяться, отправим вас за подробным описанием в статью о правильном подключении светодиода к плате Ардуино.

Вам понадобится:

  • Плата Arduino Uno или Nano
  • Макетная плата для монтажа без пайки
  • Резистор номиналом 220 Ом
  • Светодиод
  • Провода для соединения

Сложность:  простой проект.

Что мы узнаем:

  • Как подключить светодиод к ардуино.
  • Повторим процедуру загрузки скетча в микроконтроллер.

Для монтажа элементов мы будем использовать макетную плату. Если вы еще не очень хорошо понимаете, что это такое, то рекомендуем предварительно ознакомиться с отдельной статьей, посвященной макетным платам.

Соедините все элементы согласно следующей схемы для Arduino UNO. Для Arduino Nano светодиод подключается по той же схеме – к пину 13.

Если вы не меняли программу с предыдущего шага, то можно считать, что все сделано. Подключаем плату к компьютеру – светодиод должен немного помигать хаотично, а затем с точно установленным периодом.

Если вы еще не загружали программу, то вам надо повторить ту же последовательность действий, что и для работы со встроенным светодиодом. Загружаем пример, затем программу в контроллер и наблюдаем за результатом.