Функции digitalWrite() и delay() в Arduino IDE на примере мигания светодиода.
В статье познакомимся с платой Arduino Uno, пинами платы. Напишем программу мигания светодиода в Arduino IDE.
Сборка схемы
Плата Arduino Uno
Для начала разберемся с платой, с которой будем работать. Для примера используем Arduino Uno — плата с микроконтроллером, то есть микросхемой. Она нужна для управления электронными устройствами.

На изображении видно устройство данной платы. В этой статье нас интересуют цифровые выводы. Они также называются пины или «ножки» платы. Данные пины используются для подключения к плате различных электронных компонентов.
Каждый из пинов имеет своё обозначение. Для работы нам нужны пин 3 и Gnd. Пин 3 мы используем для вывода, а пин Gnd для заземления. Gnd — это сокращение слова ground, в переводе на русский — земля.
Чтобы ток куда-то шел, цепь должна быть замкнута. Для этого есть обозначения + и —. Ток перемещается от + к —

Сборка схемы на макетной плате
Для сборки нам нужны:
- плата Arduino Uno
- макетная плата
- светодиод
- резистор
- провода
Короткую ножку подключаем к пину GND. Длинную ножку светодиода соединяем с резистором. Второй конец резистора соединяем проводом с пином 3.

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

Теперь разберемся с кодом для мигания светодиода. Нам нужно настроить нашу ножку на вывод. Для этого используем команду pinMode. Эта команда говорит плате, как она будет работать: на вход или на вывод. Команда является настройкой программы, поэтому она пишется в первом блоке setup(). Общий вид кода:
void setup()
{
pinMode(3; OUTPUT); // указываем пину 3 работать на вывод
}
В скобках после функции pinMode мы указываем номер пина, с которым мы будем работать. После точки с запятой указываем, на что будет работать наш пин: на ввод INPUT или на вывод OUTPUT. В нашем случае пин 3 работает на вывод, это мы и пишем в коде.
Не забывайте после каждой функции ставить знак «;», например:
pinMode(3; OUTPUT);
Функция digitalWrite()
Функция digitalWrite даёт команду подать напряжение на определённый пин платы. Номер этого пина мы указываем в скобках. У функции есть параметры HIGH и LOW. Параметр HIGH (с английского — высоко) включает напряжение, параметр LOW (с английского — низко) отключает.
Нам нужно включить светодиод. Для этого мы включаем напряжение на 3-ий пин, поэтому код будет выглядеть так:
void setup()
{
pinMode(3, OUTPUT); // указываем пину 3 работать на вывод
}
void loop()
{
digitalWrite(3, HIGH); // подаем напряжение на пин 3
}
Это уже готовый код. На его основе мы можем включить светодиод. Если загрузить этот код на плату, то светодиод загорится.

Для выключения светодиода мы используем ту же функцию. Для этого в скобках после функции задаем параметр LOW. Функция выглядет так: digitalWrite(3; LOW)
Функция delay()
Delay с английского переводится как «задерживать». Эту задачу и выполняет функция: она приостанавливает выполнение программы на указанный промежуток времени. В скобках мы указываем время остановки в миллисекундах. 1 секунда = 1000 миллисекунд, поэтому если нам нужно установить задержку в секунду, пишем: delay(1000).
Теперь допишем наш код с использованием функции delay() и функцией digitalWrite() для выключения светодиода:
void setup()
{
pinMode(3, OUTPUT); // указываем пину 3 работать на вывод
}
void loop()
{
digitalWrite(3, HIGH); // подаем напряжение на пин 3
delay(1000); // ждем 1000 миллисекунд
digitalWrite(3, LOW); // выключаем напряжение на пине 3
delay(1000); // ждем 1000 миллисекунд
}
После загрузки программы на плату получаем следующее:

Добавить комментарий