Tabla de contenido:

Desvanecer un LED hacia adentro y hacia afuera: 3 pasos
Desvanecer un LED hacia adentro y hacia afuera: 3 pasos

Video: Desvanecer un LED hacia adentro y hacia afuera: 3 pasos

Video: Desvanecer un LED hacia adentro y hacia afuera: 3 pasos
Video: Aprende a instalar muy fácil esta tira Led que se controla con tu voz #BoomerIluminacion #B-Smarter 2024, Mes de julio
Anonim
Desvanecer un LED hacia adentro y hacia afuera
Desvanecer un LED hacia adentro y hacia afuera

Los siguientes pasos son experimentos para ilustrar cómo funcionan los LED. Ilustran cómo atenuar un LED a un ritmo uniforme y cómo hacer que aparezca y desaparezca.

Necesitará:

  • Arduino (usé un dúo)
  • Tablero de circuitos
  • LED rojo de 5 mm
  • Resistencia de 330 Ω (no es crítico, funcionará 330-560 Ω).
  • Cable de conexión sólido de calibre 22

Las piezas necesarias para estos experimentos se incluyen en todos los kits de inicio de Arduino.

Paso 1: Explicación de la modulación de pulsos

Explicación de la modulación de pulsos
Explicación de la modulación de pulsos
Explicación de la modulación de pulsos
Explicación de la modulación de pulsos
Explicación de la modulación de pulsos
Explicación de la modulación de pulsos

Los LED siempre funcionan al mismo voltaje independientemente del brillo. El brillo está determinado por un oscilador de onda cuadrada y la cantidad de tiempo que el voltaje es alto determina el brillo. Esto se llama Modulación de ancho de pulso (PWM). Esto es controlado por la función analogWrite (pin, n) de Arduino, donde n tiene un valor de 0 a 255. analogWrite () genera PWM, no analógico verdadero. Si n = 2, el LED será dos veces más brillante que n = 1. El brillo siempre se duplica cuando n se duplica. Entonces n = 255 será dos veces más brillante que n = 128.

El valor de n a menudo se expresa como un porcentaje llamado ciclo de trabajo. Las imágenes muestran trazas de osciloscopio para ciclos de trabajo de 25, 50 y 75%.

Paso 2: atenuación desigual

Atenuación desigual
Atenuación desigual
Atenuación desigual
Atenuación desigual

Construye el circuito como en el diagrama. Esto es como el circuito para hacer parpadear un LED. Utiliza el pin 9 porque necesita utilizar un pin habilitado para PWM.

Copie / pegue el boceto a continuación en el IDE de Arduino y ejecútelo.

Notará que cuanto más brillante es el LED, más lento se atenúa. A medida que se acerque al más tenue, se volverá más tenue muy rápido.

configuración vacía ()

{pinMode (9, SALIDA); } bucle vacío () {pin int = 9; para (int i = 255; i> -1; i--) {analogWrite (pin, i); retraso (10); } para (int i = 0; i <256; i ++) {analogWrite (pin, i); retraso (10); }}

}

El siguiente paso muestra cómo atenuar el LED a una velocidad constante y en una declaración para.

Paso 3: arriba y abajo en uno para ()

Para que el LED se atenúe a una velocidad constante, el retardo () debe aumentar a una velocidad exponencial porque la mitad del ciclo de trabajo siempre producirá la mitad del brillo. Mi primer pensamiento fue intentar usar la función map () pero es lineal.

La línea:

int d = (16-i / 16) ^ 2;

calcula el cuadrado inverso del brillo para determinar la duración del retraso.

Copie / pegue el boceto a continuación en el IDE de Arduino y verá que el LED se encenderá y apagará a una velocidad constante.

configuración vacía ()

{pinMode (9, SALIDA); } bucle vacío () {int x = 1; int pin = 9; para (int i = 0; i> -1; i = i + x) {int d = (16-i / 16) ^ 2; analogWrite (pin, i); retraso (d); si (i == 255) x = -1; // cambiar de dirección en el pico}}

Recomendado: