我的第一个Arduino/Python项目[Reaction.py]出现了一个小错误,time.sleep似乎导致了我的错误

2024-09-28 05:19:11 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我正在努力完成我的第一个项目,没有什么特别的,只有很少的问题

1。当我运行代码时,二极管一直亮着,但它应该熄灭。当我关闭程序时,我得到这一行的错误

时间、睡眠(随机、均匀(2,5))

似乎不喜欢在while循环中

2。当二极管仍然打开时,如果任何一个玩家按下它的按钮,它将得到-2分的处罚。但是自从我加上点球后,每次任何一个球员按下按钮,他们总是得到-2分

我想我可能和时间有关。睡眠虫

为方便起见,我将代码放在Pastebin上,因为它看起来非常糟糕,而且很难阅读

Link to code @ Pastebin


Tags: to项目代码错误时间玩家linkcode
1条回答
网友
1楼 · 发布于 2024-09-28 05:19:11

这可能有助于了解整个错误的时间。睡眠线

但除了任何错误,您的LED始终亮着,因为您只有一次睡眠,IF语句是“瞬时”的。代码基本上归结为:

while True:
    GPIO.output(led, 1)
    time.sleep(random.uniform(2,5))
    GPIO.output(led, 0)

与此基本相同:

while True:
    time.sleep(random.uniform(2,5))
    GPIO.output(led, 0)
    GPIO.output(led, 1)

希望这有帮助

编辑:我意识到我没有回答问题2。我怀疑这与董事会是否在睡觉时“倾听”有关,但我对此没有任何经验。基于https://sourceforge.net/p/raspberry-gpio-python/wiki/Inputs/可能您需要使用GPIO.event_detected,例如

相关问题 更多 >

    热门问题