#include <FastLED.h>
#define NUM_LEDS 36 // Jumlah total LED (6x6)
#define DATA_PIN_D2 2 // Pin digital untuk baris 1
#define DATA_PIN_D3 3 // Pin digital untuk baris 2
#define DATA_PIN_D4 4 // Pin digital untuk baris 3
#define DATA_PIN_D5 5 // Pin digital untuk baris 4
#define DATA_PIN_D6 6 // Pin digital untuk baris 5
#define DATA_PIN_D7 7 // Pin digital untuk baris 6
CRGB leds[NUM_LEDS];
void setup() {
FastLED.addLeds<NEOPIXEL, DATA_PIN_D2>(leds, 0, 6); // Baris 1
FastLED.addLeds<NEOPIXEL, DATA_PIN_D3>(leds, 6, 6); // Baris 2
FastLED.addLeds<NEOPIXEL, DATA_PIN_D4>(leds, 12, 6); // Baris 3
FastLED.addLeds<NEOPIXEL, DATA_PIN_D5>(leds, 18, 6); // Baris 4
FastLED.addLeds<NEOPIXEL, DATA_PIN_D6>(leds, 24, 6); // Baris 5
FastLED.addLeds<NEOPIXEL, DATA_PIN_D7>(leds, 30, 6); // Baris 6
FastLED.setBrightness(150); // Atur kecerahan LED lebih tinggi
fill_solid(leds, NUM_LEDS, CRGB::Black); // Matikan semua LED pada awalnya
FastLED.show();
}
void loop() {
// Animasi running LED dengan efek rainbow dari sudut kiri atas ke sudut kanan bawah
for (int i = 0; i < 256; ++i) {
for (int row = 0; row < 6; ++row) {
for (int col = 0; col < 6; ++col) {
int pixelIndex = row * 6 + col;
leds[pixelIndex] = CHSV(i + col * 10, 255, 255); // Efek rainbow dengan kecerahan lebih tinggi
FastLED.show();
delay(10); // Tunda sedikit untuk efek visual
}
}
}
}