Una matriz LED RGB 8x8 (64) con LEDs WS2812b direccionables para píxeles controlables de forma individual. Normalmente se controla con un microcontrolador mediante una sola señal de datos y una alimentación común de 5V con GND compartida. A menudo se encadena y se usa para gráficos sencillos, animaciones y pantallas de estado.
| Pin | Señal | Descripción |
|---|---|---|
5V |
power | 5V power input rail for the WS2812B LED matrix. |
GND |
ground | Common ground reference for power and data signals. |
DI |
data | Serial data input from the microcontroller to drive the first LED. |
DO |
data | Serial data output from the last LED for chaining another matrix. |
GND |
ground | Ground output/reference for a chained LED matrix. |
5V |
power | 5V rail output for powering or chaining LED matrices. |
| Desde | Hasta | Cable |
|---|---|---|
board:5V |
x1:5V |
red |
board:GND |
x1:GND |
black |
board:D6 |
x1:DI |
green |
Este ejemplo se escribió y verificó por compilación para arduino-uno. Codey Online lo adapta a cualquier otra placa compatible.
#include <Adafruit_NeoPixel.h>
#define LED_PIN 6
#define LED_COUNT 64
Adafruit_NeoPixel matrix(LED_COUNT, LED_PIN, NEO_GRB + NEO_KHZ800);
uint32_t colorFromXY(uint8_t x, uint8_t y) {
// Simple rainbow-style gradient across the 8x8 matrix.
uint8_t r = x * 32;
uint8_t g = y * 32;
uint8_t b = 255 - (x + y) * 16;
return matrix.Color(r, g, b);
}
uint16_t xyToIndex(uint8_t x, uint8_t y) {
// Common serpentine wiring for many 8x8 WS2812 matrices.
// If your specific module uses a different layout, adjust this mapping.
if (y % 2 == 0) {
return y * 8 + x;
} else {
return y * 8 + (7 - x);
}
}
void showDemoPattern() {
matrix.clear();
for (uint8_t y = 0; y < 8; y++) {
for (uint8_t x = 0; x < 8; x++) {
matrix.setPixelColor(xyToIndex(x, y), colorFromXY(x, y));
}
}
matrix.show();
}
void setup() {
Serial.begin(115200);
matrix.begin();
matrix.setBrightness(40);
matrix.show(); // Initialize all pixels to off
Serial.println("8x8 WS2812B matrix demo starting...");
}
void loop() {
showDemoPattern();
Serial.println("Showing color gradient on the 8x8 matrix.");
delay(1000);
matrix.clear();
matrix.show();
Serial.println("Cleared matrix.");
delay(500);
}
Describe lo que quieres construir. Codey Online escribe el codigo, dibuja el esquema de conexiones, lo compila y graba tu placa directamente desde el navegador.
Empieza gratis