我如何编写按键回调?

how do i write a keypress callback?

我正在尝试在 python 3.4.2 中为 Raspberry Pi 编写一段代码,它使用回调来触发某些事件。

目前,我正在使用一个漂亮的 GPIO 命令 (GPIO.add_event_detect) 以及一个 try/except 规则,使脚本暂停并等待某些事情发生。

我想在按下键盘按钮的同时做一些类似的事情(现在不关心是哪一个),有没有一种类似于 GPIO.add_event_detect 的方法?

代码示例:

import RPi.GPIO as GPIO

receiverPin = 14
quitButton = 17

GPIO.setmode(GPIO.BCM)
GPIO.setup(receiverPin, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
GPIO.setup(quitButton, GPIO.IN, pull_up_down=GPIO.PUD_UP)

#FUNCTION ACTIVATED BY DESIRED CODE#
def activate(channel):
    #do stuff#

def direct_hit(channel):
    #do stuff#

GPIO.add_event_detect(receiverPin, GPIO.BOTH, callback=direct_hit)

#DESIRED CODE BLOCK
keypress.add_event_detect(KEYPRESS_ENTER, callback=activate)

try:
    GPIO.wait_for_edge(quitButton, GPIO.FALLING)
    print("Exiting")
    GPIO.cleanup()
    quit()
except KeyboardInterrupt:
    GPIO.cleanup()
GPIO.cleanup()

有办法吗?记住我是自学的(很差)。

在此先感谢您的帮助。

我为你做了一些研究并找到了这个库:https://github.com/boppreh/keyboard#keyboard.on_press 有事件方法 on_press

只需添加:

import keyboard
keyboard.on_press = yourCallback

希望对您有所帮助。