Всем привет , подскажите куда можно копать со странным поведением ленты Для ознакомления сделал мигалку 3-мя цветами опуская подключения библиотек и тп код выглядит проще некуда while(true){ LEDS.showColor(CRGB(255,0,0)); delay(500); LEDS.showColor(CRGB(0,255,0)); delay(500); LEDS.showColor(CRGB(0,0,255)); delay(500); LEDS.showColor(CRGB(0,0,0)); delay(500); } 30 светодиодов дополнительное питание от мобильной USB зарядки на 2А Лента затыкается в произвольном месте но через какое то время отвисает, почему так понять не могу ссылка на видео для наглядности
//----------------------НАСТРОЙКИ----------------------- #define NUM_LEDS 30 // число светодиодов в ленте #define DI_PIN 3 // пин, к которому подключена лента #define start_flashes 1 // проверка цветов при запуске (1 - включить, 0 - выключить) //----------------------НАСТРОЙКИ----------------------- #define serialRate 9600 // скорость связи с ПК #include <FastLED.h> CRGB leds[NUM_LEDS]; // создаём ленту void setup() { FastLED.addLeds<WS2812B, DI_PIN, GRB>(leds, NUM_LEDS); // инициализация светодиодов LEDS.setBrightness(20); LEDS.showColor(CRGB(0, 0, 0)); while (start_flashes) { LEDS.showColor(CRGB(255, 0, 0)); delay(500); LEDS.showColor(CRGB(0, 255, 0)); delay(500); LEDS.showColor(CRGB(0, 0, 255)); delay(500); LEDS.showColor(CRGB(0, 0, 0)); delay(500); } } void loop() { }
А случаем часть кода в loop не надо перенести setup исполняется один раз при загрузке а loop работает как петля
с точки зрения обычного программирования можно и так и так(по крайней мере для "мигалки" чтоб проверить первичную работоспособность ленты ), вставлять такую конструкцию в setup может быть идеологически не правильно, но в любом случае должно работать