#include <FastLED.h>
#define DATA_PIN 2 // Используем GPIO2 (D4 на плате Wemos D1 Mini)
#define NUM_LEDS 100 // Количество светодиодов
CRGB leds[NUM_LEDS]; // Массив светодиодов
unsigned long previousMillis = 0; // Хранит отметку последнего обновления состояния
byte currentLedIndex = 0; // Текущий индекс активного светодиода
void setup() {
Serial.begin(115200); // Опционально, для дебага
FastLED.addLeds<WS2811, DATA_PIN, GRB>(leds, NUM_LEDS); // Инициализация ленты
}
void loop() {
unsigned long currentMillis = millis(); // Получаем текущее время в миллисекундах
if(currentMillis - previousMillis >= 1000) { // Проверяем, прошло ли больше одной секунды
previousMillis = currentMillis; // Сохраняем текущее время
fill_solid(leds, NUM_LEDS, CRGB::Black); // Гасим весь массив светодиодов
leds[currentLedIndex++] = CRGB::White; // Активируем следующий светодиод белым цветом
if(currentLedIndex >= NUM_LEDS) { // Проверяем выход за пределы массива
currentLedIndex = 0; // Возвращаемся к первому светодиоду
}
FastLED.show(); // Отображаем новое состояние ленты
}
}