Ошибка базы данных WordPress: [Table './meandr_base/anzpz_usermeta' is marked as crashed and last (automatic?) repair failed]
SELECT user_id, meta_key, meta_value FROM anzpz_usermeta WHERE user_id IN (1) ORDER BY umeta_id ASC

0

Arduino UNO — Fade-эффект. Урок 5

 

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

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

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
/*
 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

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *