#include #define PIN 6 #define NUMPIXELS 1 Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); void setup() { pixels.begin(); pixels.setBrightness(30); // Establece el brillo a 30% } void loop() { pixels.fill(pixels.Color(255, 0, 0)); // Rellena de color rojo pixels.show(); delay(1000); // Espera 1 segundo pixels.fill(pixels.Color(0, 255, 0)); // Rellena de color verde pixels.show(); delay(1000); pixels.fill(pixels.Color(0, 0, 255)); // Rellena de color azul pixels.show(); delay(1000); colorChase(pixels.Color(255, 0, 0), 100); // Realiza la secuencia de chase con color rojo colorChase(pixels.Color(255, 150, 0), 100); colorChase(pixels.Color(0, 255, 0), 100); colorChase(pixels.Color(0, 255, 255), 100); colorChase(pixels.Color(0, 0, 255), 100); colorChase(pixels.Color(180, 0, 255), 100); rainbowCycle(0); // Realiza el ciclo de arcoĆ­ris } void colorChase(uint32_t color, int wait) { for (int i = 0; i < NUMPIXELS; ++i) { pixels.setPixelColor(i, color); pixels.show(); delay(wait); } delay(500); } void rainbowCycle(int wait) { uint16_t i, j; for (j = 0; j < 256; ++j) { // Ciclo por los 256 colores en la rueda for (i = 0; i < NUMPIXELS; ++i) { pixels.setPixelColor(i, Wheel(((i * 256 / NUMPIXELS) + j) & 255)); } pixels.show(); delay(wait); } } uint32_t Wheel(byte WheelPos) { WheelPos = 255 - WheelPos; if (WheelPos < 85) { return pixels.Color(255 - WheelPos * 3, 0, WheelPos * 3); } if (WheelPos < 170) { WheelPos -= 85; return pixels.Color(0, WheelPos * 3, 255 - WheelPos * 3); } WheelPos -= 170; return pixels.Color(WheelPos * 3, 255 - WheelPos * 3, 0); }