ESP8266 - tira de LEDs WS2812B
La tira de LEDs RGB WS2812B está formada por LEDs cuyo color y brillo pueden ajustarse de forma individual. Este tutorial te enseña cómo usar ESP8266 para controlar la tira de LEDs RGB WS2812B. En detalle, aprenderemos:
- Cómo conectar la tira de LEDs WS2812B al ESP8266
- Cómo programar el ESP8266 para controlar el color de cada LED individual en la tira de LEDs WS2812B.
- Cómo programar el ESP8266 para controlar el brillo de cada LED individual en la tira de LEDs WS2812B.
Solo necesitamos usar un pin digital del ESP8266 para controlar todos los LEDs de la tira.
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 la tira de LED RGB WS2812B
Pinout de la tira de LEDs WS2812B
La tira de LEDs RGB WS2812B tiene tres pines que requieren conexiones específicas:
- El pin GND debe conectarse a GND (0V)
- El pin VCC debe conectarse a los 5V de una fuente de alimentación externa
- El pin DIN es el pin que recibe la señal de control y debe estar conectado a un pin del ESP8266
※ Nota:
La secuencia de pines puede diferir según el fabricante. Es IMPERATIVO usar las marcas impresas en la tira de LEDs.
Diagrama de Cableado

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.
Cómo programar para la tira de LEDs RGB WS2812B
Hay dos bibliotecas que se pueden usar para controlar la tira de LEDs WS2812B:
- Biblioteca Adafruit NeoPixel.
- Biblioteca FastLED.
Este tutorial utilizará la biblioteca Adafruit NeoPixel.
- Crea un objeto WS2812B
- Tira de 30 LEDs
- Inicia la tira WS2812B que contiene 30 luces.
- Especifica el color de cada LED (conocido como píxel).
- Ajusta el brillo de todas las tiras.
※ Nota:
- WS2812B.setBrightness() se utiliza para ajustar el brillo de todos los píxeles en la tira de LEDs. Para establecer el brillo de cada píxel individual, podemos escalar los valores de color (R, G, B) con la misma proporción.
- Los valores establecidos por WS2812B.setBrightness() y WS2812B.setPixelColor() solo se aplicarán cuando se ejecute WS2812B.show().
Código ESP8266
El código a continuación realiza las siguientes secuencias:
- Pinta los píxeles de verde uno por uno con un retraso entre cada píxel
- Apaga todos los píxeles durante dos segundos
- Enciende todos los píxeles en rojo simultáneamente durante dos segundos
- Repite este proceso indefinidamente
Pasos R\u00e1pidos
Para empezar a trabajar con ESP8266 en el IDE de Arduino, sigue estos pasos:
- Consulta el cómo configurar el entorno para ESP8266 en Arduino IDE tutorial si es la primera vez que usas ESP8266.
- Conecta los componentes tal como se muestra en el diagrama.
- Conecta la placa ESP8266 a tu computadora usando un cable USB.
- Abre Arduino IDE en tu computadora.
- Elige la placa ESP8266 correcta, por ejemplo (p. ej. NodeMCU 1.0 (ESP-12E Module)), y su puerto COM correspondiente.
- Haz clic en el icono Bibliotecas en la barra izquierda del IDE de Arduino.
- Busca “Adafruit NeoPixel” y localiza la biblioteca NeoPixel de Adafruit.
- Luego, presiona el botón Instalar para instalar la biblioteca NeoPixel.
- Copia el código y ábrelo en el IDE de Arduino.
- Haz clic en el botón Subir para enviar el código al ESP8266.
- Observa el efecto LED.
※ Nota:
Para cualquier efecto LED complejo, ofrecemos el servicio de programación pagado
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.