diff options
Diffstat (limited to 'examples/Cylon/Cylon.ino')
-rw-r--r-- | examples/Cylon/Cylon.ino | 32 |
1 files changed, 21 insertions, 11 deletions
diff --git a/examples/Cylon/Cylon.ino b/examples/Cylon/Cylon.ino index dfb6ed78..e484adb3 100644 --- a/examples/Cylon/Cylon.ino +++ b/examples/Cylon/Cylon.ino @@ -1,43 +1,53 @@ #include "FastLED.h" // How many leds in your strip? -#define NUM_LEDS 40 +#define NUM_LEDS 64 // For led chips like Neopixels, which have a data line, ground, and power, you just // need to define DATA_PIN. For led chipsets that are SPI based (four wires - data, clock, // ground, and power), like the LPD8806, define both DATA_PIN and CLOCK_PIN -#define DATA_PIN 6 +#define DATA_PIN 7 #define CLOCK_PIN 13 // Define the array of leds CRGB leds[NUM_LEDS]; void setup() { - FastLED.addLeds<NEOPIXEL,DATA_PIN>(leds, NUM_LEDS); + Serial.begin(57600); + Serial.println("resetting"); + LEDS.addLeds<WS2812,2,RGB>(leds,NUM_LEDS); + LEDS.setBrightness(84); } +void fadeall() { for(int i = 0; i < NUM_LEDS; i++) { leds[i].nscale8(250); } } + void loop() { + static uint8_t hue = 0; + Serial.print("x"); // First slide the led in one direction for(int i = 0; i < NUM_LEDS; i++) { // Set the i'th led to red - leds[i] = CRGB::Red; + leds[i] = CHSV(hue++, 255, 255); // Show the leds - FastLED.show(); + FastLED.show(); // now that we've shown the leds, reset the i'th led to black - leds[i] = CRGB::Black; + // leds[i] = CRGB::Black; + fadeall(); // Wait a little bit before we loop around and do it again - delay(30); + delay(10); } + Serial.print("x"); // Now go in the other direction. - for(int i = NUM_LEDS-1; i >= 0; i--) { + for(int i = (NUM_LEDS)-1; i >= 0; i--) { // Set the i'th led to red - leds[i] = CRGB::Red; + leds[i] = CHSV(hue++, 255, 255); // Show the leds FastLED.show(); // now that we've shown the leds, reset the i'th led to black - leds[i] = CRGB::Black; + // leds[i] = CRGB::Black; + fadeall(); // Wait a little bit before we loop around and do it again - delay(30); + delay(10); } } |