Портал для радиолюбителей
   Arduino UNO урок 5 - Fade
    Главная -> Статьи -> Проекты на Arduino -> Arduino UNO урок 5 - Fade


<< Назад в раздел   Распечатать Дата добавления: 2011-10-25 | Просмотров: 5698

В данном уроке мы рассмотрим пример реализации Fade-эффекта (плавное затухание) с помощью Arduino UNO. Вместо функции delay(), мы будем использовать функции тайминга как в уроке 3.

К ножке 9 Arduino UNO подсоедините светодиод через резистор 220 Ом.


Для плавного управления яркостью светодиода мы будем использовать функцию analogWrite(). Данная функция обеспечивает вывод ШИМ-сигнала на ножку контроллера. Причем функцию pinMode() предварительно вызывать не надо. Функция analogWrite(pin,value) содержит 2 параметра: pin - номер ножки для вывода, value - значение от 0 (выкл) до 255(вкл).

/*
 Fade-эффект
 
 Пример, показывающий возможности функции analogWrite()
 для реализации Fade-эффекта светодиода, который
 подключен к ноге 9 контроллера
 
 */
int brightness = 0;    	// яркость светодиода
int fadeAmount = 5;    	// шаг изменения яркости
unsigned long currentTime;
unsigned long loopTime;

void setup()  { 
  pinMode(9, OUTPUT);	// устанавливаем 9 ногу как выход
  currentTime = millis();
  loopTime = currentTime; 
} 

void loop()  { 
  currentTime = millis();
  if(currentTime >= (loopTime + 20)){  
    analogWrite(9, brightness);    // устанавливаем значение на 9 ножке

    brightness = brightness + fadeAmount;	// прибавляем шаг изменения яркости, которая установится в следующем цикле

    // если достигли мин. или макс. значения, то идем в обратную сторону (реверс): 
    if (brightness == 0 || brightness == 255) {
      fadeAmount = -fadeAmount ; 
    }     
    loopTime = currentTime;
  }       
}

Оригинал статьи на английском языке (перевод Колтыков А.В.)


Добавил:  Павел (Admin)  
Автор:  Неизвестно 

Вас может заинтересовать:

  1. Arduino UNO урок 10 - LCD
  2. Arduino UNO урок 6 - Энкодер
  3. Arduino UNO урок 5 - Fade
  4. Arduino UNO урок 4 - Бегущий огонь
  5. Счетчик расхода воды с термодатчиком и показаниями через интернет


    © PavKo, 2007-2018   Обратная связь   Ссылки   Яндекс.Метрика