【发布时间】:2018-09-06 21:46:28
【问题描述】:
我想在每次按下按钮时更改 LED 的闪烁时间。
我用 python 编写的代码不响应按钮输入点击。它需要什么变化?看起来回调不起作用
import RPi.GPIO as GPIO
from time import sleep
inbutton = 13
outpin = 7
z = 1
def init():
GPIO.setmode(GPIO.BOARD)
GPIO.setup(outpin, GPIO.OUT)
GPIO.setup(inbutton, GPIO.IN, pull_up_down=GPIO.PUD_UP)
global z
z = 1
def zest():
global z
if z == 1:
z = 2
while z == 2:
GPIO.output(outpin, 1)
print("led on")
sleep(1)
GPIO.output(outpin, 0)
print("led off")
sleep(1)
elif z == 2:
z = 1
while z == 1:
GPIO.output(outpin, 1)
print("led on")
sleep(2)
GPIO.output(outpin, 0)
print("led off")
sleep(2)
def loop():
GPIO.add_event_detect(inbutton, GPIO.FALLING, callback=zest(), bouncetime=1000)
if __name__ == '__main__':
init()
try:
while True:
loop()
except KeyboardInterrupt:
GPIO.output(outpin, 0)
GPIO.cleanup()
运行时 LED 以 1 秒的间隔闪烁。但不要响应按钮点击。那里的专家请看一下。
【问题讨论】:
标签: python raspberry-pi gpio led