Arduino - LED que se desvanece

Este ejemplo demuestra el uso de la función analogWrite () para apagar un LED. AnalogWrite usa modulación de ancho de pulso (PWM), que enciende y apaga un pin digital muy rápidamente con diferentes relaciones entre encendido y apagado, para crear un efecto de desvanecimiento.

Componentes requeridos

Necesitará los siguientes componentes:

  • 1 × tablero
  • 1 × Arduino Uno R3
  • 1 × LED
  • Resistencia de 1 × 330Ω
  • 2 × puente

Procedimiento

Siga el diagrama del circuito y conecte los componentes en la placa de pruebas como se muestra en la imagen que se muestra a continuación.

Note- Para conocer la polaridad de un LED, mírelo de cerca. La más corta de las dos patas, hacia el borde plano de la bombilla, indica el terminal negativo.

Los componentes como las resistencias deben tener sus terminales doblados en ángulos de 90 ° para que se ajusten correctamente a los enchufes de la placa de pruebas. También puede acortar los terminales.

Bosquejo

Abra el software Arduino IDE en su computadora. La codificación en el lenguaje Arduino controlará su circuito. Abra el nuevo archivo de boceto haciendo clic en Nuevo.

Código Arduino

/*
   Fade
   This example shows how to fade an LED on pin 9 using the analogWrite() function.

   The analogWrite() function uses PWM, so if you want to change the pin you're using, be
   sure to use another PWM capable pin. On most Arduino, the PWM pins are identified with
   a "~" sign, like ~3, ~5, ~6, ~9, ~10 and ~11.
*/

int led = 9; // the PWM pin the LED is attached to
int brightness = 0; // how bright the LED is
int fadeAmount = 5; // how many points to fade the LED by
// the setup routine runs once when you press reset:

void setup() {
   // declare pin 9 to be an output:
   pinMode(led, OUTPUT);
}

// the loop routine runs over and over again forever:

void loop() {
   // set the brightness of pin 9:
   analogWrite(led, brightness);
   // change the brightness for next time through the loop:
   brightness = brightness + fadeAmount;
   // reverse the direction of the fading at the ends of the fade:
   if (brightness == 0 || brightness == 255) {
      fadeAmount = -fadeAmount ;
   }
   // wait for 30 milliseconds to see the dimming effect
   delay(300);
}

Código a tener en cuenta

Después de declarar el pin 9 como su pin LED, no hay nada que hacer en la función setup () de su código. La función analogWrite () que utilizará en el bucle principal de su código requiere dos argumentos: uno, que le dice a la función en qué pin escribir y el otro que indica qué valor de PWM escribir.

Para apagar y encender el LED, aumente gradualmente los valores de PWM de 0 (completamente apagado) a 255 (completamente encendido), y luego de nuevo a 0, para completar el ciclo. En el esquema que se muestra arriba, el valor de PWM se establece mediante una variable llamada brillo. Cada vez que pasa por el bucle, aumenta en el valor de la variablefadeAmount.

Si el brillo está en cualquiera de los extremos de su valor (0 o 255), fadeAmount se cambia a su valor negativo. En otras palabras, si fadeAmount es 5, entonces se establece en -5. Si es -5, entonces se establece en 5. La próxima vez que pase por el bucle, este cambio hará que el brillo también cambie de dirección.

analogWrite()puede cambiar el valor de PWM muy rápido, por lo que el retraso al final del boceto controla la velocidad del desvanecimiento. Intente cambiar el valor del retardo y vea cómo cambia el efecto de desvanecimiento.

Resultado

Debería ver que el brillo de su LED cambia gradualmente.