#include #include #include #include "light_ws2812.h" //const uint8_t NUM_LEDS = 24; // Anzahl Leds #define NUM_LEDS 60 struct cRGB leds[NUM_LEDS]; void ledOff(int number) { leds[number].r = 0; leds[number].g = 0; leds[number].b = 0; ws2812_setleds(leds, NUM_LEDS); } void ledOn(int number) { leds[number].r = 125; leds[number].g = 72; leds[number].b = 15; ws2812_setleds(leds, NUM_LEDS); } void real_delay() { _delay_ms(100); } int main(void) { while(1) { ledOn(0); real_delay(); ledOn(1); real_delay(); ledOn(2); real_delay(); // this loop turns on led 4, and turns of 4-3 = 1.....then 5,2 then, 6,3 and so on for(uint8_t step = 3; step < NUM_LEDS-2; step++) { // last led of the 3, off ledOff(step-3); real_delay(); // next led on ledOn(step); real_delay(); } // the last 3 on ledOn(57); real_delay(); ledOn(58); real_delay(); ledOn(59); // the last 3 off ledOff(60); real_delay(); ledOff(59); real_delay(); ledOff(58); // this for loop runs backward, like the first one for(uint8_t step = 57; step > 2; step--) { //last led On ledOn(step); real_delay(); // next led on ledOff(step+3); real_delay(); } } }