Cat hungry.png
Здравствуйте! Собираем деньги на перевод материалов по электронике(https://www.allaboutcircuits.com/education/). Реквизиты указаны здесь.

Arduino:Примеры/blinking 2 intervals

Материал из Онлайн справочника
Перейти к: навигация, поиск

Перевод: Максим Кузьмин (Cubewriter)
Перевел 2686 статей для сайта.

Контакты:

Проверка/Оформление/Редактирование: Мякишев Е.А.


Мигание светодиодом с использованием двух периодичностей[1]

Это скетч для библиотеки Metro и платы Arduino, который демонстрирует, как мигать светодиодом, подключенным к 13-ому контакту. В скетче используются две периодичности – светодиод будет включаться на 0,25 секунды и выключаться на 1 секунду.

Код

  1. /*
  2.  
  3. Мигание светодиодом с использованием двух периодичностей
  4.  
  5. Этот код включает/выключает светодиод, подключенный к 13-ому контакту.
  6. Светодиод будет включаться на 0,25 секунды, и выключаться – 1 секунду.
  7.  
  8. */
  9.  
  10. #include <Metro.h> // подключаем библиотеку Metro
  11. #define LED 13 // задаем контакт для светодиода
  12.  
  13. // создаем переменную для хранения информации 
  14. // о текущем  состоянии светодиода:
  15. int state = HIGH;
  16.  
  17. // создаем экземпляр класса Metro и задаем интервал 
  18. // в 250 миллисекунд (это 0,25 секунды):  
  19. Metro ledMetro = Metro(250); 
  20.  
  21. void setup()
  22. {
  23.   pinMode(LED,OUTPUT);
  24.   digitalWrite(LED,state);
  25. }
  26.  
  27. void loop()
  28. {
  29.  
  30.   if (ledMetro.check() == 1) { // проверяем, прошел ли объект Metro 
  31.                                // заданный временной интервал
  32.  
  33.     if (state==HIGH)  { 
  34.       state=LOW;
  35.       ledMetro.interval(250);  // если контакт в состоянии HIGH, 
  36.                                // задаем интервал на 0,25 секунды
  37.     } 
  38.     else {
  39.       ledMetro.interval(1000); // если контакт в состоянии LOW, 
  40.                                // задаем интервал на 1 секунду
  41.  
  42.       state=HIGH;
  43.     }
  44.     digitalWrite(LED,state);
  45.   }
  46. }

См.также

Внешние ссылки

  1. github.com - blinking_2_intervals.ino