#include <LedControl.h>
const int DIN_PIN = 11;
const int CLK_PIN = 13;
const int CS_PIN = 10;
const int NUM_MATRICES = 4;
LedControl lc = LedControl(DIN_PIN, CLK_PIN, CS_PIN, NUM_MATRICES);
void setup() {
lc.shutdown(0, false);
lc.setIntensity(0, 4);
lc.clearDisplay(0);
}
void loop() {
secuenciaColumnasAscendentes();
secuenciaColumnasDescendentes();
secuenciaOlas();
// Añade más secuencias según sea necesario
delay(500); // Ajusta el tiempo de espera entre secuencias
}
void secuenciaColumnasAscendentes() {
for (int columna = 0; columna < 32; columna++) {
for (int fila = 0; fila < 8; fila++) {
for (int matriz = 0; matriz < NUM_MATRICES; matriz++) {
lc.setLed(matriz, fila, columna, true);
}
}
delay(50);
}
for (int matriz = 0; matriz < NUM_MATRICES; matriz++) {
lc.clearDisplay(matriz);
}
}
void secuenciaColumnasDescendentes() {
for (int columna = 31; columna >= 0; columna--) {
for (int fila = 0; fila < 8; fila++) {
for (int matriz = 0; matriz < NUM_MATRICES; matriz++) {
lc.setLed(matriz, fila, columna, true);
}
}
delay(50);
}
for (int matriz = 0; matriz < NUM_MATRICES; matriz++) {
lc.clearDisplay(matriz);
}
}
void secuenciaOlas() {
for (int i = 0; i < 32; i++) {
for (int fila = 0; fila < 8; fila++) {
for (int matriz = 0; matriz < NUM_MATRICES; matriz++) {
lc.setLed(matriz, fila, i, true);
}
}
delay(50);
}
for (int i = 31; i >= 0; i--) {
for (int fila = 0; fila < 8; fila++) {
for (int matriz = 0; matriz < NUM_MATRICES; matriz++) {
lc.setLed(matriz, fila, i, true);
}
}
delay(50);
}
for (int matriz = 0; matriz < NUM_MATRICES; matriz++) {
lc.clearDisplay(matriz);
}
}