Quizás uno de los módulos más comunes en un kit de inicio de Arduino, el LED RGB le permite crear todo tipo de colores con solo cuatro pines del Arduino. Este tutorial demuestra dos formas de usar este módulo, ¡así que siga leyendo para saber qué tan bien funciona!
¿Qué es un módulo LED RGB?
Un módulo LED RGB utiliza un tipo especial de luz LED que puede emitir tres colores: rojo, verde y azul. Sin embargo, puede crear cualquier color que se le ocurra cambiando cuál está encendido y mezclando el brillo de cada uno.

Hay dos formas de encender un módulo LED RGB en cualquier placa Arduino. El método habitual es usar los pines analógicos de Arduino para enviar señales PWM al módulo. Esto le permite mezclar cada color, dándole un control total sobre el LED RGB.
Mientras tanto, la otra opción (digital) es usar los pines 11, 12, 13 y GND conectando el módulo al Arduino como lo haría con un escudo. Esto ahorra espacio al no requerir cables de puente para cada pin, pero intercambia un control fino sobre el tono y el brillo del LED. Además, la configuración solo funciona si el módulo tiene pines que encajan correctamente en la placa Arduino, como el HW-479 que estamos usando en esta guía.
Cómo funcionan los LED RGB
En este punto, puede que te estés preguntando cómo un único módulo LED RGB emite tres colores. Puede que se sorprenda al saber que un LED RGB no es realmente solo una LED elegante pero tres LED más pequeños encerrados en un LED más grande. Estos mini LED comparten el mismo pin de conexión a tierra, que debería ser el más largo de los cuatro pines en un LED RGB.
Si tiene un LED RGB desnudo en lugar de un módulo en una placa de conexión, puede hacer algo similar a un módulo conectando resistencias en cada uno de los pines de color. El valor de la resistencia varía según el fabricante, pero 220 Ω por rama es una apuesta segura.
Consejo: aprenda a encender bombillas usando Arduino con un módulo de relé.
Lo que necesitarás
Si está listo para comenzar, necesitará estos elementos para poner en marcha este proyecto.
Hardware
- Módulo LED RGB HW-479
- Cables de puente (si usa el método analógico)
- arduino
Software
Cómo usar un módulo LED RGB usando el método digital
Este método solo funciona en placas Arduino con un pin GND junto al pin 13. Algunos ejemplos son Uno, Duemilanove, Mega y Leonardo. Si tiene una placa de microcontrolador basada en Arduino no oficial, asegúrese de que esté usando encabezados de clavija hembra. Los módulos LED RGB suelen estar en cabezales macho.
Preparando el Código
- Primero, define los pines: 11 para azul, 12 para verde y 13 para rojo.
const int blueLED = 11; const int greenLED = 12; const int redLED = 13;
- En
setup()
defina estos pines como pines de salida.
void setup() { pinMode(blueLED, OUTPUT); pinMode(greenLED, OUTPUT); pinMode(redLED, OUTPUT); }
- En
loop()
, agregue energía a un pin, pause el código durante 1000 milisegundos (1 segundo), luego encienda el siguiente hasta que todos los pines estén encendidos. Finalmente, apágalos uno por uno.
void loop() { digitalWrite(blueLED, HIGH); delay(1000); digitalWrite(greenLED, HIGH); delay(1000); digitalWrite(redLED, HIGH); delay(1000); digitalWrite(blueLED, LOW); delay(1000); digitalWrite(greenLED, LOW); delay(1000); digitalWrite(redLED, LOW); delay(1000); }
Esta es la versión completa del código:
const int blueLED = 11; const int greenLED = 12; const int redLED = 13; void setup() { pinMode(blueLED, OUTPUT); pinMode(greenLED, OUTPUT); pinMode(redLED, OUTPUT); } void loop() { digitalWrite(blueLED, HIGH); delay(1000); digitalWrite(greenLED, HIGH); delay(1000); digitalWrite(redLED, HIGH); delay(1000); digitalWrite(blueLED, LOW); delay(1000); digitalWrite(greenLED, LOW); delay(1000); digitalWrite(redLED, LOW); delay(1000); }
Construyendo el circuito
El circuito es sencillo. Apunte el pin “-” en el módulo LED RGB al pin GND de Arduino. Si lo alinea correctamente, los otros tres pines deben entrar en los pines 13, 12 y 11.

Haciendo que funcione
Una vez que haya cargado el código en Arduino, debería ver que los colores del LED RGB cambian cada segundo.
Puede editar el código y hacer que muestre dos o todos los colores al mismo tiempo girándolos a HIGH
juntos ante el delay()
función, así:
digitalWrite(redLED, HIGH); digitalWrite(greenLED, HIGH); delay(1000);
¿Acabas de empezar con los microcontroladores? Consulte nuestra comparación de Arduino Uno y ESP32 para decidir cuál debe obtener.
Cómo usar un módulo LED RGB usando el método PWM
Este método proporciona un control más fino en comparación con el método anterior. El color del LED depende de la relación de ciclos de trabajo entre los pines 9, 10 y 11. Cuanto mayor sea la relación hacia un color, más fuerte se vuelve en la mezcla.
Además, aumentar el ciclo de trabajo aumenta el brillo del LED. Si aumenta todos los ciclos de trabajo manteniendo la misma proporción, obtendrá un LED RGB muy brillante.
Preparando el Código
- Defina los pines: 9 para azul, 10 para verde y 11 para rojo.
const int blueLED = 9; const int greenLED = 10; const int redLED = 11;
- Conviértalos en pines de salida.
void setup() { pinMode(blueLED, OUTPUT); pinMode(greenLED, OUTPUT); pinMode(redLED, OUTPUT); }
- En
loop()
utilizar elanalogWrite()
función en lugar dedigitalWrite()
para controlar los ciclos de trabajo de los pines. El proceso es similar al uso de PWM para controlar servomotores con una Raspberry Pi, excepto que usamos C++ en lugar de Python.
void loop() { analogWrite(greenLED, 25); analogWrite(blueLED, 50); delay(250); analogWrite(greenLED, 50); delay(250); analogWrite(greenLED, 100); delay(250); analogWrite(greenLED, 150); delay(250); analogWrite(greenLED, 125); delay(250); analogWrite(greenLED, 80); delay(250); analogWrite(greenLED, 40); delay(250); analogWrite(greenLED, 20); delay(250); analogWrite(greenLED, 0); delay(250); }
Construyendo el circuito
Usando cables de puente, conecte los pines B, G y R a los pines 9, 10 y 11. Conecte el GND o el pin a cualquiera de los pines GND de Arduino.

Haciendo que funcione
Es posible que haya notado que solo usamos dos colores esta vez: verde y azul. Eso es para que sea más fácil ver los efectos de cambiar las proporciones en el color general del LED RGB. El LED se ve azul profundo y se vuelve turquesa antes de culminar en un cian verdoso, luego se desvanece de nuevo a un azul profundo.
Además, puede combinar esto con el método anterior utilizando el pin 11 como pin analógico para controlar el brillo del pin azul.
¿Quieres otro proyecto divertido para probar? Aprenda a usar una Raspberry Pi para hacer que un Arduino Uno parpadee.
Preguntas frecuentes
¿Qué sucede si agrego una resistencia adicional en el módulo LED RGB?
Los módulos LED RGB ya tienen resistencias integradas. Si agrega otro, solo hará que el suyo sea más tenue de lo que debería haber sido mientras funciona con la misma cantidad de voltaje y corriente.
¿Qué hace que un LED se encienda?
¿Por qué los LED no se encienden cuando se conectan al revés?
Los LED son diodos, de ahí el nombre de emisores de luz. diodos. Todos los diodos dejan pasar la electricidad por un lado pero no por el otro. Sus partes de cátodo y ánodo generalmente están hechas de dos materiales diferentes que, cuando se presionan entre sí, obligan a los electrones a gastar más energía para ir en la otra dirección, como un automóvil que viaja en una cuesta empinada.
¿Por qué los televisores usan LED rojos?
En comparación con otros LED, los LED rojos pueden iluminarse intensamente usando menos energía en comparación con otros LED de colores que tienen el mismo tamaño, lo que los convierte en excelentes opciones como indicadores LED cuando los fabricantes de televisores planean eficiencia energética en sus productos.
Todas las imágenes por Terenz Jomar Dela Cruz.
¡Suscríbete a nuestro boletín!
Nuestros últimos tutoriales enviados directamente a su bandeja de entrada