我正在使用GPIO库为raspberry pi创建一个python程序,并使用它来控制LED闪烁到音乐。我无法保持眨眼和音乐同步。我目前的代码:
for wval, bval, gval, yval, rval in data_gen:
set_leds(whites, wval)
set_leds(blues, bval)
set_leds(greens, gval)
set_leds(yellows, yval)
set_leds(reds, rval)
sleep(GRAPH_TIME)
在此代码中,
正如您所猜测的那样,问题是set_led函数需要时间来执行,而睡眠函数不是很准确。因此,由于歌曲是由外部程序连续播放的,大约一分钟后LED会明显偏离音乐。
python中有什么东西,也许是使用某种多线程,可以让我准确地让计时器保持运行?
答案 0 :(得分:0)
创建一个线程:
import threading
def blabla:
time.sleep (1)
thread = threading.Thread(target=blabla)#set the target to the function we made
thread.start()#start thread