У меня есть 100 адресных светодиодов: s подключен к RPi и хотел бы, чтобы они мигали в случайном порядке.Python: включение случайных светодиодов и отключение выключения
Моя первоначальная мысль заключалась в том, чтобы создать рандомизированный список при запуске, содержащий 100 чисел, а затем включить их один за другим в цикле. Через некоторое время я хотел бы снова отключить их.
RGBlist = [100 random numbers 0-99]
for i in RGBlist:
turnOnLED(i)
Как начать второй цикл для запуска одновременно с первым?
delay(X ms)
for i in RGBlist:
turnOffLED(i)
Я не хочу, чтобы все 100 светодиодов, чтобы включить перед включением их снова по одному за раз, я хотел бы СИД (х), чтобы включить, то светодиод (у), LED (г) , Светодиод (x) выключится, светодиод (u) включится, светодиод (y) выключится и так далее. Еще лучше, если их можно отключить после того, как они будут гореть в течение произвольного времени 100-500 мс.
Нужно ли мне вводить глубокие, темные пещеры многопроцессорности и нарезки?
Одна идея: когда вы включаете светодиод, поместите этот светодиод в список с меткой времени. когда пришло время выключить светодиод, найдите этот список, если найдете тот, который был включен более 500 мс. если вы это сделаете, отключите его и удалите из списка. если нет, возьмите случайный светодиод из этого списка и отключите его. – 576i
Думаю, вам нужно будет использовать многопоточность. В [этом вопросе] (http://stackoverflow.com/questions/7168508/background-function-in-python) основы объясняются очень хорошо. – SebasSBM