Плавный розжиг светодиодов
- Войдите на сайт для отправки комментариев
Чт, 09/08/2018 - 19:55
Всем привет! Я новичок в сфере ардуино и программирования в общем. У меня есть лента WS2812B и мне хотелось бы узнать, как можно сделать так, чтобы светодиоды плавно загорались один за другим, например красным цветом. Использую библиотеку FastLED, но буду рад и примерам с использованием других библиотек.
Заранее спасибо!
Элементарно, Ватсон!
Самое простое это использовать 2 цикла. Первый цикл выбирает диод. В нем целая переменная это номер диода с которым идёт работа. Второй цикл вложен в первый. В нем стандартная процедура измерения яркости нужных диодов в соответствии с библиотекой и желаниями. Внутри второго цикла в конце ledshow.
После прохода всех циклов надо очистить ленту. Не помню как в фастлед.
Ждем классическую фразу: "А пример покажете?"
Угу, понял, спасибо. А что если нужно сделать так, чтобы каждый следующий диод зажигался, скажем, спустя 100мс, а не после предыдущего?
Угу, понял, спасибо. А что если нужно сделать так, чтобы каждый следующий диод зажигался, скажем, спустя 100мс, а не после предыдущего?
дай угадаю - вставить перед переходом к следующему диоду delay(100) ? :)
Либо я чего-то не понимаю
Не совсем :) Я имел ввиду спустя 100мс после начала розжига предыдущего, не после затухания
Ищете "blink без delay", на основе этого алгоритма делаете такой код, чтобы во вложенном цикле (тот, который изменяет яркость светодиодов) менялся лимит. Т.е. первые сто мс цикл должет бегать до единички, вторые - до двойки, третьи - ... и так далее увеличивайте лимит каждый интервал, пока не достигнете количества светодиодов в страйпе.
Интересно, попробую.