Подскажите как продумать алгоритм работы
- Войдите на сайт для отправки комментариев
Втр, 24/02/2015 - 13:01
Добрый день, делаю управление гирляндой ws2811 (управление каждым светодиодом по отдельнойсти) через arduino. Хочу сделать режим мигания по такому типу:
светодиоды 1 - 50 загораются все с наростающей яркостью, т.е. первый слабо, последний максимально, потом нужно сделать движение со смещением по одному, т.е. третий будет слабо, а первый максимально и так по кругу. подскжите как алгоритм циклами продумать. у меня получилось вот так:
for(int cc_led=0; cc_led<NUM_PIXELS; cc_led++){ // от 0 светика до максимального int cc_rad=0; // сдвиг светика for (int rad_led = cc_led; rad_led < NUM_PIXELS; rad_led++) { if(cc_rad>=200){cc_rad=0;}else{cc_rad+=7;} // присваиваем значение яркости каждому светику со смещением (максимальная яркость = 200) setHue(cc_rad,0,cc_rad, rad_led); // отправили значение в ленту ws2811.sendLedData(); // отправили значение в ленту }delay(200); }
получилось правильно, но доходя до последнего все ок, а первые так и остаются светится минимально, т.е. по кругу не работает :(
https://github.com/acrobotic/Ai_Ardushield_Lumina/blob/master/firmware/effects/effects.ino
оно?