#include <Adafruit_NeoPixel.h>
#define PIN 2 // Pin de datos conectado al NeoPixel
#define NUMPIXELS 16 // Número de LEDs en el anillo
Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
// Variable para manejar los colores
int colorOffset = 0;
void setup() {
pixels.begin(); // Inicializa la biblioteca NeoPixel
pixels.show(); // Apaga todos los LEDs al inicio
}
void loop() {
for (int i = 0; i < NUMPIXELS; i++) {
// Calcula el color de cada LED usando un gradiente de arcoíris
int hue = (i * 256 / NUMPIXELS + colorOffset) % 256; // Hues van de 0 a 255
pixels.setPixelColor(i, pixels.ColorHSV(hue * 256));
}
pixels.show(); // Muestra los colores en el anillo
colorOffset = (colorOffset + 1) % 256; // Incrementa el desplazamiento del color
delay(50); // Ajusta la velocidad del barrido
}