from machine import Pin
import time
knop = Pin(18, Pin.IN, Pin.PULL_UP)
aantal = 0
laatste_klik = 0
start = 0
vorige = 1
# Instellingen in milliseconden
KLIK_WACHT = 500
LANG_DRUKKEN = 1000
while True:
nu = time.ticks_ms()
toestand = knop.value()
# Knop wordt ingedrukt
if toestand == 0 and vorige == 1:
start = nu
# Knop wordt losgelaten
if toestand == 1 and vorige == 0:
duur = time.ticks_diff(nu, start)
if duur >= LANG_DRUKKEN:
print("U drukte lang")
aantal = 0
else:
aantal += 1
laatste_klik = nu
# Wachten of er nog een klik komt
if aantal > 0:
if time.ticks_diff(nu, laatste_klik) > KLIK_WACHT:
if aantal == 1:
print("U drukte 1 keer")
elif aantal == 2:
print("U drukte 2 keer")
elif aantal == 3:
print("U drukte 3 keer")
else:
print("U drukte meer dan 3 keer")
aantal = 0
vorige = toestand
time.sleep_ms(20)
Loading
esp32-devkit-c-v4
esp32-devkit-c-v4