this might work
This commit is contained in:
parent
8d74edad0c
commit
d7e6298f47
35
main.py
35
main.py
@ -2,19 +2,30 @@
|
|||||||
import pigpio
|
import pigpio
|
||||||
import time
|
import time
|
||||||
import datetime
|
import datetime
|
||||||
|
import asyncio
|
||||||
|
from functools import wraps, partial
|
||||||
|
|
||||||
if __name__ == "__main__":
|
def async_wrap(func):
|
||||||
def cbf(gpio, level):
|
@wraps(func)
|
||||||
if(pi.read(gpio)!=0):
|
async def run(*args, loop=None, executor=None, **kwargs):
|
||||||
i = datetime.datetime.now()
|
if loop is None:
|
||||||
date = i.strftime("%Y-%m-%d %H:%M:%S")
|
loop = asyncio.get_event_loop()
|
||||||
print("gpio "+str(gpio)+"button gpio gave 1")
|
pfunc = partial(func, *args, **kwargs)
|
||||||
|
return await loop.run_in_executor(executor, pfunc)
|
||||||
|
return run
|
||||||
|
|
||||||
|
# init GPIO
|
||||||
|
pi = pigpio.pi()
|
||||||
|
# button pin
|
||||||
|
pi.set_mode(10, pigpio.INPUT)
|
||||||
|
|
||||||
|
@async_wrap
|
||||||
|
def button_press(gpio:int, level) -> bool:
|
||||||
|
while True:
|
||||||
if(pi.read(gpio)==0):
|
if(pi.read(gpio)==0):
|
||||||
i = datetime.datetime.now()
|
return True
|
||||||
date = i.strftime("%Y-%m-%d %H:%M:%S")
|
|
||||||
|
|
||||||
print(date)
|
|
||||||
pi = pigpio.pi()
|
cbf(10, pigpio.EITHER_EDGE)
|
||||||
pi.set_mode(10, pigpio.INPUT)
|
if __name__ == "__main__":
|
||||||
cbf(10, pigpio.EITHER_EDGE)
|
asyncio.run(button_press())
|
Loading…
x
Reference in New Issue
Block a user