PSA9685, ШИМ, blink

Вопросы от новичков
Ответить
Аватара пользователя
Яйкс
Рядовой
Сообщения: 49
Зарегистрирован: 23 янв 2018, 13:14
Откуда: Москва
Имя: Сергей

PSA9685, ШИМ, blink

Сообщение Яйкс »

Добрый день, друзья!

Помогите, пожалуйста, разобраться в причинах поведения работы программы. В настоящий момент собираю светодиодную матрицу на 2-х платах PSA9685 (30 светодиодов). Светодиоды будут мигать в разной последовательностью и одновременно с этим будет меняться яркость, тем самым создавая визуальные эффекты. Так как плата работает по принципу ШИМ, то процесс мигания сделал путем перезаписи значений на выход платы. Все вроде работает, но.....

Режим 1 - мигаем всеми светодиодами - с 1 по 7 - все работает
добавляем режим 2 - мигать светодиодом 7 - мигает, но
теперь при включении режима 1 мигает светодиодами с 1 по 6, а 7 не работает, хотя он тоже должен мигать

Может быть сумбурно, но думаю смысл понятен. Как так происходит? Я не могу разобраться. Что нужно добавить в схему чтобы работало правильно?
Заранее благодарю за помощь.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
rw6cm
Полковник
Сообщения: 2372
Зарегистрирован: 06 сен 2015, 20:25
Имя: Владимир
Поблагодарили: 41 раз

PSA9685, ШИМ, blink

Сообщение rw6cm »

Яйкс писал(а): 11 фев 2018, 01:25включении режима 1 мигает светодиодами с 1 по 6, а 7 не работает, хотя он тоже должен мигать
7 светодиод привязан одновременно к двум генераторам. так нельзя.
надо через логику, или переключатель.
Win10-64, FLProg (portable)
Аватара пользователя
Яйкс
Рядовой
Сообщения: 49
Зарегистрирован: 23 янв 2018, 13:14
Откуда: Москва
Имя: Сергей

PSA9685, ШИМ, blink

Сообщение Яйкс »

rw6cm писал(а): 11 фев 2018, 06:427 светодиод привязан одновременно к двум генераторам. так нельзя.
надо через логику, или переключатель.
Так я через переключатель и делал, поэтому и не могу понять как так происходит. Это простой пример с двумя режимами, а если их будет скажем 10, то как тогда?!
Изображение
Аватара пользователя
rw6cm
Полковник
Сообщения: 2372
Зарегистрирован: 06 сен 2015, 20:25
Имя: Владимир
Поблагодарили: 41 раз

PSA9685, ШИМ, blink

Сообщение rw6cm »

Яйкс писал(а): 11 фев 2018, 08:25Так я через переключатель и делал, поэтому и не могу понять как так происходит.
[spoiler]
в выключенном состоянии генератора на переменной лед7офф висит 1,
вы через другую переменную пишите на нее 0, в результате она меняет свое состояние на каждом такте.
er.png
Вообще не понятен ваш алгоритм, что вы хотите сделать.
счетчик переключает выход раз в секунду, генераторы так же переключают переменные, какой смысл?
генераторы убрать, ни чего не изменится.

[/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Win10-64, FLProg (portable)
Аватара пользователя
Яйкс
Рядовой
Сообщения: 49
Зарегистрирован: 23 янв 2018, 13:14
Откуда: Москва
Имя: Сергей

PSA9685, ШИМ, blink

Сообщение Яйкс »

rw6cm писал(а): 11 фев 2018, 12:55в выключенном состоянии генератора на переменной лед7офф висит 1
Да, вы правы. Я все время не могу привыкнуть, что она там именно "висит". Человеческая логика подсказывает, что раз нет плюса, то не работает-а тут так не выходит.
Меня все время почему-то тянет отключение через инверсию сделать, а раз есть инверсия, то этот светодиод, соответственно, выпадает из режима, поэтому и горит 6 из 7. Не могу пока придумать как это обойти.
rw6cm писал(а): 11 фев 2018, 12:55Вообще не понятен ваш алгоритм, что вы хотите сделать.
Хочу попробовать сделать так чтобы с одной кнопки можно было переключать три режима работы: 1 - мигают все 7 светодиодов, 2 - мигает скажем 3 из 7, 3 - мигает, скажем, 2 из 7.

А дальше уже на основе этой программы можно развиваться дальше.

Вообще, большое Вам спасибо, что откликнулись на помощь. С Fl Prog ковыряюсь сам, спросить не у кого.
Аватара пользователя
rw6cm
Полковник
Сообщения: 2372
Зарегистрирован: 06 сен 2015, 20:25
Имя: Владимир
Поблагодарили: 41 раз

PSA9685, ШИМ, blink

Сообщение rw6cm »

Яйкс писал(а): 11 фев 2018, 20:11А дальше уже на основе этой программы можно развиваться дальше.
forum1.flp
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Win10-64, FLProg (portable)
Аватара пользователя
Яйкс
Рядовой
Сообщения: 49
Зарегистрирован: 23 янв 2018, 13:14
Откуда: Москва
Имя: Сергей

PSA9685, ШИМ, blink

Сообщение Яйкс »

rw6cm писал(а): 11 фев 2018, 20:25forum1.flp
Владимир, спасибо большое за помощь! Сам бы до такой логики точно не дошел бы. Вот, что значит гуру. Очень сильно помогли.
Ответить

Вернуться в «Начинающим»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость