Arduino UNO урок 5 - Fade-ефект

  • Час 31-08-2015, 11:16
  • Автор admin
  • Коментарів 0 Комент.
  • Силка url

У даному уроці ми розглянемо приклад реалізації 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 gt;= (loopTime + 20)){ analogWrite(9, brightness); // встановлюємо значення на 9 ніжці brightness = brightness + fadeAmount; // додаємо крок зміни яскравості, яка встановиться в наступному циклі // якщо досягли хв. чи макс. значення, то йдемо у зворотний бік (реверс): if (brightness == 0 || brightness == 255) { fadeAmount = -fadeAmount ; } loopTime = currentTime; } }
Tags

Коментарі до новини