diff options
author | Christian Pointner <equinox@spreadspace.org> | 2015-07-13 00:53:49 +0200 |
---|---|---|
committer | Christian Pointner <equinox@spreadspace.org> | 2015-07-13 00:53:49 +0200 |
commit | c9ba5cbff4cf151ea6152ef853532f3f579185eb (patch) | |
tree | f433e177061dd0e23d67a86f8e0c39391c737f06 /usb-fastled/usb-fastled.cpp | |
parent | CXXFLAGS vs CFLAGS for lib C++ targets (diff) |
improved fastled example
Diffstat (limited to 'usb-fastled/usb-fastled.cpp')
-rw-r--r-- | usb-fastled/usb-fastled.cpp | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/usb-fastled/usb-fastled.cpp b/usb-fastled/usb-fastled.cpp index 767492f..429e8f5 100644 --- a/usb-fastled/usb-fastled.cpp +++ b/usb-fastled/usb-fastled.cpp @@ -37,7 +37,7 @@ // How many leds in your strip? -#define NUM_LEDS 4 +#define NUM_LEDS 30 // 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, @@ -58,7 +58,7 @@ void fastled_init() // FastLED.addLeds<TM1809, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<WS2811, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<WS2812, DATA_PIN, RGB>(leds, NUM_LEDS); - FastLED.addLeds<WS2812B, DATA_PIN, RGB>(leds, NUM_LEDS); + FastLED.addLeds<WS2812B, DATA_PIN, GRB>(leds, NUM_LEDS); // FastLED.addLeds<NEOPIXEL, DATA_PIN>(leds, NUM_LEDS); // FastLED.addLeds<APA104, DATA_PIN, RGB>(leds, NUM_LEDS); // FastLED.addLeds<UCS1903, DATA_PIN, RGB>(leds, NUM_LEDS); @@ -81,12 +81,25 @@ void fastled_init() // FastLED.addLeds<DOTSTAR, DATA_PIN, CLOCK_PIN, RGB>(leds, NUM_LEDS); } + +void leds_set(CRGB color) +{ + uint8_t i; + for(i = 0; i < NUM_LEDS; ++i) { + leds[i] = color; + } + FastLED.show(); +} + void handle_cmd(uint8_t cmd) { switch(cmd) { - case '0': leds[0] = CRGB::Black; FastLED.show(); led_off(); break; - case '1': leds[0] = CRGB::Green; FastLED.show(); led_on(); break; - case 'r': reset2bootloader(); break; + case '0': leds_set(CRGB::Black); led_off(); break; + case '1': leds_set(CRGB::White); led_on(); break; + case 'r': leds_set(CRGB::Red); led_on(); break; + case 'g': leds_set(CRGB::Green); led_on(); break; + case 'b': leds_set(CRGB::Blue); led_on(); break; + case '!': reset2bootloader(); break; default: printf("error\r\n"); return; } printf("ok\r\n"); |