Arduino:Примеры/Мигаем светодиодом с помощью прерывания по таймеру: различия между версиями
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Myagkij (обсуждение | вклад) |
Нет описания правки |
||
Строка 20: | Строка 20: | ||
==Код== | ==Код== | ||
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
#include <TimerOne.h> // Подключаем библиотеку TimerOne | #include <TimerOne.h> // Подключаем библиотеку TimerOne | ||
#define LED 13 // Определяем контакт, к которому подключен светодиод на плате | #define LED 13 // Определяем контакт, к которому подключен светодиод на плате |
Версия от 18:22, 14 мая 2023
Содержание | Знакомство с Arduino | Продукты | Основы | Справочник языка Arduino | Примеры | Библиотеки | Хакинг | Изменения | Сравнение языков Arduino и Processing |
Проверка/Оформление/Редактирование: Мякишев Е.А.
Черновик |
Мигаем светодиодом с помощью прерывания по таймеру
Данный пример демонстрирует как с помощью прерывания по таймеру, с использованием библиотеки TimerOne мигать светодиодом.
Необходимые компоненты
- Плата Arduino Uno, 1 шт.;
Монтажная схема
Для данного примера нужна только плата Arduino Uno.
Код
#include <TimerOne.h> // Подключаем библиотеку TimerOne
#define LED 13 // Определяем контакт, к которому подключен светодиод на плате
void setup()
{
pinMode(LED, OUTPUT);
Timer1.initialize(1000000); // Прерывание по таймеру будет срабатывать каждые 1000000 мкс = 1 сек.
Timer1.attachInterrupt(blinky); // Указываем функцию blinky() как обработчик прерывания по таймеру
}
void loop()
{
// Здесь можно вставить код, который будет выполняться в цикле
}
/*
* Функция обработчик прерывания по таймеру
*/
void blinky()
{
digitalWrite(LED, !digitalRead(LED)); // Переключаем состояние светодиода
}