ESP8266 - LED RGB
Este tutorial te enseña cómo usar el ESP8266 para controlar un LED RGB. En detalle, aprenderemos:
- Cómo funciona un LED RGB.
- Cómo conectar un LED RGB a un ESP8266.
- Cómo programar el ESP8266 para controlar el color del LED RGB.
Hardware Requerido
Or you can buy the following kits:
| 1 | × | DIYables Sensor Kit (30 sensors/displays) | |
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Acerca de LED RGB
El LED RGB puede producir cualquier color combinando los tres colores primarios: rojo, verde y azul. Está compuesto por tres LEDs distintos (rojo, verde y azul), pero todos contenidos en una única carcasa.
Disposición de pines del LED RGB
Un LED RGB tiene cuatro pines:
- El pin común (cátodo) debe conectarse a GND (0V)
- El pin R (rojo) se utiliza para regular el rojo
- El pin G (verde) se utiliza para regular el verde
- El pin B (azul) se utiliza para regular el azul

Para hacer que un LED RGB funcione con ESP8266, tenemos que agregar resistencias limitadoras de corriente. Eso puede hacer que el cableado sea un poco complicado. ¡Pero oye, hay una solución! Podemos usar un módulo LED RGB que ya trae resistencias integradas. ¡Muy fácil!
El módulo LED RGB también incluye cuatro pines:
- Pin común (cátodo): debe conectarse a GND (0V)
- R (rojo): el pin se utiliza para controlar el rojo
- G (verde): el pin se utiliza para controlar el verde
- B (azul): el pin se utiliza para controlar el azul

※ Nota:
El pin común, que puede ser cátodo o ánodo, puede variar según el tipo de LED RGB. Este tutorial utilizará un pin común de cátodo.
Cómo funciona
En el ámbito de la física, tres valores de color componen un color: Rojo (R), Verde (V) y Azul (A). Cada valor oscila entre 0 y 255. La combinación de los tres valores produce un total de 256 x 256 x 256 colores.
Podemos configurar el LED RGB para que tenga cualquier color que deseemos utilizando el ESP8266 para generar señales PWM (que van de 0 a 255) para los pines R, G y B. El ciclo de trabajo de las señales PWM enviadas a los pines R, G y B es proporcional a los valores de color de Rojo, Verde y Azul, respectivamente.
Diagrama de Cableado
- Diagrama de cableado entre ESP8266 y LED RGB

This image is created using Fritzing. Click to enlarge image
Para obtener m\u00e1s informaci\u00f3n, consulte Pines del ESP8266 y c\u00f3mo alimentar ESP8266 y otros componentes.
- Diagrama de cableado entre ESP8266 y el módulo LED RGB

This image is created using Fritzing. Click to enlarge image
Cómo controlar un LED RGB
Vamos a aprender a controlar el LED GRB para obtener cualquier color, por ejemplo #00979D paso a paso:
- En primer lugar, determina qué color quieres mostrar y obtén su código de color. Consejos:
- Puedes obtener el código de color deseado desde el selector de colores
- Si quieres usar un color en una imagen, utiliza la herramienta en línea Colores desde Imagen
- Luego, convierte el código de color a valores R, G, B usando la herramienta de W3Schools. Toma nota de estos valores. En este caso: R = 0, G = 151, B = 157

- Especificar los pines del ESP8266 que se conectan a los pines R, G y B. Por ejemplo:
- Configura los siguientes pines del ESP8266 en modo de salida:
- Controla el LED para emitir el color de #00979D, que está compuesto por Rojo = 0, Verde = 151 y Azul = 157.
ESP8266 - Código de ejemplo para LED RGB
El código ESP8266 a continuación cambia el color del LED en una secuencia de:
- #00C9CC (Rojo = 0, Verde = 201, Azul = 204)
- #F7788A (Rojo = 247, Verde = 120, Azul = 138)
- #34A853 (Rojo = 52, Verde = 168, Azul = 83)
Al usar muchos colores, podríamos acortar el código del ESP8266 creando una función:
Conocimiento adicional
Para un LED RGB con ánodo común, necesitas:
- Conecta el pin común a 3,3 V del ESP8266.
- Invierte los valores R, G y B en la función analogWrite(), es decir, usa 255 - R, 255 - G y 255 - B, respectivamente
Una secuencia de LEDs RGB conectados entre sí forma una tira de LEDs RGB. Las tiras de LEDs pueden dividirse en tiras de LEDs direccionables y tiras de LEDs no direccionables. Crearemos tutoriales para ambos tipos de tiras de LEDs.
※ Nota:
No use una sola resistencia en el pin común de un LED RGB en lugar de tres resistencias en los demás pines. Esto se debe a que, aunque en teoría es válido usar una sola resistencia en el pin común, en la práctica no es así. Los LEDs en un paquete RGB no son idénticos, lo que significa que sus resistencias son diferentes. Como resultado, la corriente se distribuye de manera desigual a cada LED, haciendo que el brillo sea desigual, lo que puede llevar a la destrucción de uno o más LEDs, y, con el tiempo, de los demás LEDs.