[在树莓派上按下按钮时运行命令

问题描述 投票:0回答:1

我以为我做对了,但我一定做错了。

我想发生的事情是,当我第一次按下按钮时,它将override_set设置为true,然后运行步进电机的命令,然后在屏幕上显示启用了替代功能。当再次按下按钮时,它将使步进电机向前运行,然后将override_set设置为false。

override_set = False

#setting button stuff up
def override (channel):
    global override_set
    global kit
    global gate_open
    override_set = not override_set
    if overide_set == True:
            cv2.putText(frame,'Overide Enabled',(int(IM_WIDTH*.1),int(IM_HEIGHT*.5)),font,3,(0,0,0),7,cv2.LINE_AA)
    if override_set:
        for i in range(200):
            kit.stepper1.onestep(direction=stepper.BACKWARD,style=stepper.MICROSTEP)
        gate_open = True
    else:
        for i in range(200):
                kit.stepper1.onestep(direction=stepper.FORWARD,style=stepper.MICROSTEP)
        gate_open = False
GPIO.setmode(GPIO.BCM)

GPIO.setup(18, GPIO.IN, pull_up_down=GPIO.PUD_UP)
GPIO.add_event_detect(18, GPIO.FALLING, callback=override, bouncetime=300)
python python-3.x raspberry-pi gpio
1个回答
-1
投票

大声笑,我显然没有足够的意见要发表……希望我不会因为使用“答案”来提供帮助而受到抨击。

[当您说按钮不起作用时,您是什么意思?你可以调试吗?代码实际执行吗?还是按下按钮甚至不会触发功能?

© www.soinside.com 2019 - 2024. All rights reserved.