Arduino UNO R4 - Parpadeo de múltiples LEDs

El Arduino UNO R4 parpadea varios LEDs.

Esta guía te muestra cómo programar un Arduino UNO R4 para hacer que varios LEDs parpadeen a diferentes frecuencias sin usar la función delay(). Ofrece el código de dos formas:

Demostraremos con tres LEDs. Puedes ajustar esto fácilmente para dos LEDs, cuatro LEDs o más.

Acerca de LED

Explora nuestra guía completa sobre LEDs, que cubre cómo conectar el hardware, cómo funcionan, cómo configurarlo con Arduino UNO R4 y los pasos de programación. Obtén más información aquí:

Diagrama de Cableado

Diagrama de cableado de múltiples LEDs para Arduino UNO R4

This image is created using Fritzing. Click to enlarge image

Ver La mejor forma de alimentar Arduino Uno R4 y otros componentes.

Código Arduino UNO R4 - Parpadeo de Múltiples LEDs

Para hacer parpadear varios LEDs al mismo tiempo, no deberíamos usar la función delay(). Esta función detiene la ejecución del resto del código, lo que significa que no podemos hacer parpadear diferentes LEDs al mismo tiempo. En su lugar, deberíamos usar la función millis() para controlar la temporización.

Para principiantes, gestionar las marcas de tiempo al parpadear varios LEDs puede ser difícil. Por suerte, la biblioteca ezLED (https://arduinogetstarted.com/tutorials/arduino-led-library) facilita esto al encargarse de la gestión de marcas de tiempo dentro de la biblioteca. Esto significa que los usuarios no tienen que preocuparse por gestionar las marcas de tiempo por sí mismos al usar la biblioteca. Además, usar un grupo de LEDs puede hacer que el código sea más claro y corto.

/* * Este código de Arduino UNO R4 fue desarrollado por es.newbiely.com * Este código de Arduino UNO R4 se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/tutorials/arduino-uno-r4/arduino-uno-r4-blink-multiple-led */ #include <ezLED.h> // ezLED library by ArduinoGetStarted.com #define PIN_LED_1 7 // The Arduino UNO R4 pin connected to LED 1 #define PIN_LED_2 8 // The Arduino UNO R4 pin connected to LED 2 #define PIN_LED_3 9 // The Arduino UNO R4 pin connected to LED 3 ezLED led1(PIN_LED_1); // create ezLED object that attach to pin PIN_LED_1 ezLED led2(PIN_LED_2); // create ezLED object that attach to pin PIN_LED_2 ezLED led3(PIN_LED_3); // create ezLED object that attach to pin PIN_LED_3 void setup() { Serial.begin(9600); led1.blink(800, 200); // 800ms ON, 200ms OFF, blink immediately led2.blink(500, 500); // 500ms ON, 500ms OFF, blink immediately led3.blink(500, 500, 500); // 500ms ON, 500ms OFF, blink after 500ms } void loop() { led1.loop(); // MUST call the led1.loop() function in loop() led2.loop(); // MUST call the led2.loop() function in loop() led3.loop(); // MUST call the led3.loop() function in loop() // DO SOMETHING HERE }

Pasos R\u00e1pidos

Siga estas instrucciones paso a paso:

  • Si es la primera vez que usas el Arduino Uno R4 WiFi/Minima, consulta el tutorial sobre configurar el entorno para Arduino Uno R4 WiFi/Minima en la IDE de Arduino.
  • Conecta la placa Arduino Uno R4 a los LEDs de acuerdo con el diagrama proporcionado.
  • Conecta la placa Arduino Uno R4 a tu computadora usando un cable USB.
  • Abre el IDE de Arduino en tu computadora.
  • Selecciona la placa adecuada Arduino Uno R4 (p. ej., Arduino Uno R4 WiFi) y el puerto COM.
  • Haz clic en el icono Bibliotecas en el lado izquierdo del IDE de Arduino.
  • Escribe "ezLED" en la caja de búsqueda y encuentra la biblioteca ezLED creada por Arduino UNO R4GetStarted.
  • Haz clic en el botón Instalar para añadir la biblioteca ezLED.
Biblioteca LED para Arduino UNO R4
  • Copie el código proporcionado y péguelo en el IDE de Arduino.
  • Para cargar el código en una placa Arduino UNO R4, haga clic en el botón Subir en el IDE de Arduino.
Cómo subir código del Arduino UNO R4 al IDE de Arduino
  • Comprueba si el LED está encendido o apagado.

Código Arduino UNO R4 - Parpadeo de múltiples LEDs usando arreglos

Podemos mejorar el código anterior usando una matriz de LEDs. El código que se muestra a continuación utiliza la matriz para gestionar objetos LED.

/* * Este código de Arduino UNO R4 fue desarrollado por es.newbiely.com * Este código de Arduino UNO R4 se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/tutorials/arduino-uno-r4/arduino-uno-r4-blink-multiple-led */ #include <ezLED.h> // ezLED library by ArduinoGetStarted.com #define NUM_LED 3 // three LEDs #define PIN_LED_1 7 // The Arduino UNO R4 pin connected to LED 1 #define PIN_LED_2 8 // The Arduino UNO R4 pin connected to LED 2 #define PIN_LED_3 9 // The Arduino UNO R4 pin connected to LED 3 ezLED ledArray[NUM_LED] = { ezLED(PIN_LED_1), // create ezLED object that attach to pin PIN_LED_1 ezLED(PIN_LED_2), // create ezLED object that attach to pin PIN_LED_2 ezLED(PIN_LED_3) // create ezLED object that attach to pin PIN_LED_3 }; void setup() { Serial.begin(9600); ledArray[0].blink(800, 200); // 800ms ON, 200ms OFF, blink immediately ledArray[1].blink(500, 500); // 500ms ON, 500ms OFF, blink immediately ledArray[2].blink(500, 500, 500); // 500ms ON, 500ms OFF, blink after 500ms } void loop() { for (int i = 0; i < NUM_LED; i++) ledArray[i].loop(); // MUST call the led.loop() function in loop() // DO SOMETHING HERE }

Usando la biblioteca ezLED, podemos hacer parpadear varios LEDs de forma flexible así:

  • Haz que varios LEDs parpadeen a diferentes velocidades.
  • Haz que varios LEDs empiecen a parpadear en momentos diferentes.
  • Haz que cada LED parpadee durante una duración específica.
  • Haz que cada LED parpadee un cierto número de veces.

Mira el código de muestra en la biblioteca.

Video Tutorial

Estamos considerando crear tutoriales en video. Si considera que los tutoriales en video son importantes, suscríbase a nuestro canal de YouTube para motivarnos a crear los videos.

※ NUESTROS MENSAJES

  • No dude en compartir el enlace de este tutorial. Sin embargo, por favor no use nuestro contenido en otros sitios web. Hemos invertido mucho esfuerzo y tiempo en crear el contenido, ¡por favor respete nuestro trabajo!