Advertisement
Push28

ws2811b animation

Jan 13th, 2017
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.84 KB | None | 0 0
  1. #include "FastLED.h"
  2. // Number of RGB LEDs in the strand
  3. #define NUM_LEDS 30
  4.  
  5. // Define the array of leds
  6. CRGB leds[NUM_LEDS];
  7. // Arduino pin used for Data
  8. #define PIN 6
  9.  
  10. void setup()
  11. {
  12.   FastLED.addLeds<NEOPIXEL, PIN>(leds, NUM_LEDS);
  13. }
  14.  
  15. void loop() {
  16.   // one at a time
  17.   for(int j = 0; j < 3; j++) {
  18.     for(int i = 0 ; i < NUM_LEDS; i++ ) {
  19.       memset(leds, 0, NUM_LEDS * 3);
  20.       switch(j) {
  21.         case 0: leds[i].r = 255; break;
  22.         case 1: leds[i].g = 255; break;
  23.         case 2: leds[i].b = 255; break;
  24.       }
  25.       FastLED.show();
  26.       delay(50);
  27.     }
  28.   }
  29.  
  30.   // growing/receeding bars
  31.   for(int j = 0; j < 3; j++) {
  32.     memset(leds, 0, NUM_LEDS * 3);
  33.     for(int i = 0 ; i < NUM_LEDS; i++ ) {
  34.       switch(j) {
  35.         case 0: leds[i].r = 255; break;
  36.         case 1: leds[i].g = 255; break;
  37.         case 2: leds[i].b = 255; break;
  38.       }
  39.       FastLED.show();
  40.       delay(20);
  41.     }
  42.     for(int i = NUM_LEDS-1 ; i >= 0; i-- ) {
  43.       switch(j) {
  44.         case 0: leds[i].r = 0; break;
  45.         case 1: leds[i].g = 0; break;
  46.         case 2: leds[i].b = 0; break;
  47.       }
  48.       FastSPI_LED.show();
  49.       delay(1);
  50.     }
  51.   }
  52.  
  53.   // Fade in/fade out
  54.   for(int j = 0; j < 3; j++ ) {
  55.     memset(leds, 0, NUM_LEDS * 3);
  56.     for(int k = 0; k < 256; k++) {
  57.       for(int i = 0; i < NUM_LEDS; i++ ) {
  58.         switch(j) {
  59.           case 0: leds[i].r = k; break;
  60.           case 1: leds[i].g = k; break;
  61.           case 2: leds[i].b = k; break;
  62.         }
  63.       }
  64.       FastLED.show();
  65.       delay(3);
  66.     }
  67.     for(int k = 255; k >= 0; k--) {
  68.       for(int i = 0; i < NUM_LEDS; i++ ) {
  69.         switch(j) {
  70.           case 0: leds[i].r = k; break;
  71.           case 1: leds[i].g = k; break;
  72.           case 2: leds[i].b = k; break;
  73.         }
  74.       }
  75.       FastLED.show();
  76.       delay(3);
  77.     }
  78.   }
  79. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement