Skip to contentSkip to main navigation Skip to footer

Arduino и светодиод

Описание


Светодиод – электронный компонент, излучающий свет при подаче напряжения. Обязательно изучи базовый урок по светодиодам! В наборе GyverKIT идёт 10 светодиодов.

Подключение


Светодиод питается током, подключать его просто так к источнику напряжения нельзя – сгорит. Для ограничения тока в наборе есть резисторы на 220 Ом. Длинная нога светодиода – анод, то есть “плюс”, подключаем его любой цифровой пин, а короткую ногу – на GND:

Примеры


Запустим классический “блинк” на пине, к которому подключен светодиод:

Мигание
#define LED_PIN 3

void setup() {
  pinMode(LED_PIN, OUTPUT);
}

void loop() {
  digitalWrite(LED_PIN, HIGH);
  delay(500);
  digitalWrite(LED_PIN, LOW);
  delay(500);
}
Управление яркостью

Я не просто так подключил светодиод на D3, это ведь ШИМ пин! Давайте мигать с половинной яркостью

#define LED_PIN 3

void setup() {
  pinMode(LED_PIN, OUTPUT);
}

void loop() {
  analogWrite(LED_PIN, 128);
  delay(500);
  analogWrite(LED_PIN, 0);
  delay(500);
}
Мигание со случайной яркостью

При помощи функции random() получим случайное значение, пусть оно будет яркостью светодиода на каждой вспышке

#define LED_PIN 3

void setup() {
  pinMode(LED_PIN, OUTPUT);
}

void loop() {
  analogWrite(LED_PIN, random(256));
  delay(500);
  analogWrite(LED_PIN, 0);
  delay(500);
}
Плавное мигание

Давайте плавно мигать при помощи ШИМ сигнала. Приведённый ниже алгоритм генерирует значения 0.. 255, затем 255.. 0 и  применяет их как яркость

#define LED_PIN 3

void setup() {
  pinMode(LED_PIN, OUTPUT);
}

uint32_t tmr;   // переменная таймера
int val = 0;    // переменная яркости
int dir = 2;    // скорость и направление яркости
void loop() {
  // асинхронный таймер на миллис
  if (millis() - tmr >= 20) {
    tmr = millis();
    val += dir;                             // прибавляем скорость
    if (val >= 255 || val <= 0) dir = -dir; // разворачиваем
    analogWrite(LED_PIN, val);              // применяем
  }
}

Домашнее задание


  • Подключить несколько светодиодов, помигать
  • Попробовать изучить урок по CRT гамме, помигать светодиодом более красиво!

 

Полезный пример?

Похожие примеры
0 Комментариев

Нет комментариев

Оставить комментарий

Ваш адрес email не будет опубликован.