我需要帮助我使用 GPIOZero 库构建的警报系统代码(我的老板真的很喜欢这个库)。该系统适用于笔记本电脑推车,因此人们不会忘记关门,因为如果人们将门打开太久,蜂鸣器就会响起。所以我想要它做的非常简单,但它总是等待函数完成,然后再进行下一个:
如果门打开:记录时间,时间延迟,蜂鸣器打开
如果门关闭/关闭:蜂鸣器关闭,记录时间
有没有办法不等待函数在 GPIOZero 库中完成。请告诉我!
from gpiozero import Button
from signal import pause
from gpiozero import Buzzer
from gpiozero import LED
from time import sleep
##### VARIABLES DEF #######
button = Button(21, pull_up=True)
buzzer = Buzzer(4)
def door_opened():
f = open("log" + '.txt', 'a')
f.write("Opened " + time.strftime("%m-%d-%Y %X"))
f.close()
print("Door Open")
sleep(100)
print("door held, alarm on")
buzzer.on
def door_closed():
f = open("log" + '.txt', 'a')
f.write(" " + time.strftime("%X"))
f.write('\n')
f.close()
print("Door Closed")
buzzer.off()
print("Buzzer off")
button.when_pressed = door_closed
button.when_released = door_opened
pause()