↑
⬤ Iniciante

💡 LEDs — Iluminação da Casa

⏱️ 20 min   🧩 LED Branco (D5) · LED Amarelo (D6)

Exercícios

📌 Pinagem na placa de interface

MóduloConector InterfacePino ArduinoNotas
💡 LED BrancoLED1D5 (PWM)Sala — iluminação principal
💡 LED AmareloLED2D6 (PWM)Quarto / exterior
💡

Os pinos D5 e D6 suportam PWM (marcados com ~ no Arduino). Podes usar analogWrite(pino, 0–255) para controlar o brilho do LED.

Exercício 1 — Liga e Desliga

ex1_leds_liga.ino
#define LED_BRANCO 5   // Sala
#define LED_AMARELO 6  // Quarto

void setup() {
  pinMode(LED_BRANCO, OUTPUT);
  pinMode(LED_AMARELO, OUTPUT);

  digitalWrite(LED_BRANCO, HIGH);   // Liga sala
  digitalWrite(LED_AMARELO, HIGH);  // Liga quarto
}

void loop() {
  // Nada — LEDs ficam sempre ligados
}

Exercício 2 — Piscar (Simulação de alerta)

ex2_leds_blink.ino
#define LED_BRANCO 5
#define LED_AMARELO 6

void setup() {
  pinMode(LED_BRANCO, OUTPUT);
  pinMode(LED_AMARELO, OUTPUT);
}

void loop() {
  // Alternar os dois LEDs — efeito stroboscópico
  digitalWrite(LED_BRANCO, HIGH);
  digitalWrite(LED_AMARELO, LOW);
  delay(500);
  digitalWrite(LED_BRANCO, LOW);
  digitalWrite(LED_AMARELO, HIGH);
  delay(500);
}

Exercício 3 — Dimmer com PWM (fade suave)

ex3_leds_pwm.ino
#define LED_BRANCO 5

void setup() {
  // PWM não precisa de pinMode OUTPUT explícito
  // mas é boa prática incluir:
  pinMode(LED_BRANCO, OUTPUT);
}

void loop() {
  // Aumentar brilho gradualmente: 0 → 255
  for (int b = 0; b <= 255; b++) {
    analogWrite(LED_BRANCO, b);
    delay(8);
  }
  // Diminuir brilho: 255 → 0
  for (int b = 255; b >= 0; b--) {
    analogWrite(LED_BRANCO, b);
    delay(8);
  }
}

Exercício 4 — Iluminação automática (usando a LDR)

Combina o LED com o sensor de luz. Liga a luz quando escurece. Ver exercício completo em LDR →