Python摄影棚没有按钮,直到硬币插入

2024-04-29 09:49:21 发布

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

我对Python非常陌生,目前正在编程一个Photobooth。 我想关闭按钮,直到一个硬币被扔,并希望它去激活时,照片保存。 我只是不明白,在发生什么事之前,我不知道该如何编码动作按钮。在

我知道我的代码非常混乱,但总体上运行良好。 我在一个覆盆子pi上编程,并在gpio18上有硬币接收器。 我得到10个脉冲,因为它是一个硬币接收器,它只对1欧元硬币有效。在

Code in github

这就是我使用的代码。在

如果有人能照亮我的黑暗就太棒了! 提前谢谢!在


Tags: 代码编码覆盆子编程pi硬币脉冲按钮
1条回答
网友
1楼 · 发布于 2024-04-29 09:49:21

如果硬币已插入,请尝试存储一个变量:

#Default is not inserted (start of script)
coin_inserted = 0

当一枚硬币被插入时,你会得到十个脉冲:

^{pr2}$

当你按下你的密码时:

def button_press_func(coin_inserted):
    if coin_inserted = 1:
        #Take Picture
        take_picture_function(coin_inserted)
    else:
        #Error
        print("You have not inserted a coin")

在拍摄照片的代码中,当完成并保存照片时,将变量设置回0

^{4}$

另外:

在评论中,用户强调他们不知道如何检测硬币计数器。忽略上述代码并执行以下操作。在

#Set up GPIO18 as input, this goes at the top of code
GPIO.setup(18, GPIO.in, pull_up_down=GPIO.PUD_DOWN)

然后,在代码的末尾,永远循环,直到插入硬币为止。在

#Will loop until ctrl+c
while True:
    if GPIO.input(18):
        take_picture_function()
        sleep(0.1)

相关问题 更多 >