Menu
CoddyTech

Aumenta y disminuye gradualmente el brillo

Parte de la sección Salidas del Journey de Arduino de Coddy. Lección 4 de 24.

Para volver a atenuarse, el paso tiene que cambiar de dirección. Mantén el paso en su propia variable, fadeAmount. Añadir un número negativo hace que el brillo disminuya:

int brightness = 0;
int fadeAmount = 5;

void loop() {
  analogWrite(9, brightness);
  brightness = brightness + fadeAmount;
  if (brightness <= 0 || brightness >= 255) {
    fadeAmount = -fadeAmount;
  }
  delay(30);
}

Un signo menos delante de una variable cambia su signo: -fadeAmount convierte 5 en -5, y -5 de nuevo en 5.

if comprueba ambos extremos. En la parte superior, el paso se convierte en -5 y el LED se atenúa; en la parte inferior, vuelve a ser 5 y el LED aumenta su brillo. El LED respira y nunca pasa bruscamente de brillante a oscuro.

challenge icon

Desafío

Fácil

Haz que el LED del pin 9 se atenúe y luego se ilumine de nuevo, una y otra vez:

  • una variable fadeAmount de 5 junto a brightness
  • suma fadeAmount al brillo cada vez que se ejecuta loop(), después espera 30 ms
  • cambia su signo cuando el brillo llega a 0 o 255

Pulsa Run y después Check.

Pruébalo tú mismo

const int ledPin = 9;
int brightness = 0;
// crea fadeAmount aquí

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

void loop() {
  analogWrite(ledPin, brightness);
  brightness = brightness + 5;
  if (brightness > 255) {
    brightness = 0;
  }
  delay(30);
}
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Salidas

Practica por tu cuenta: Playground de Arduino