Funktionsaufruf für bestimmte Zeit unterbinden

OP #3324924
Lesenswert?

Hallo liebe Gemeinde,
Ich versuche mich gerade mit einem XMega in die Welt der Mikrocontroller 
einzuarbeiten. Nachdem ich gerade mit dem Qtouch Button rumgespielt 
habe, stellt sich für mich die Frage ob man Funktionsaufrufe für eine 
bestimmte Zeitspanne "sperren" kann um eine Mehrfachauslösung zu 
unterbinden.
Bisher ruft bei mir der Timerinterrupt einen Algorithmus auf, in dem 
dann entschieden wird ob der Button gedrückt ist oder nicht. Ich will 
aber nicht, dass der Button mehrmals in einer bestimmten Zeitspanne 
ausgelöst wird. Gibt's da irgendeine pfiffige Lösung oder bleibt mir nur 
den Timer einfach komplett für eine bestimmte Zeit anzuhalten?
#3324935
Lesenswert?

Allerdings hört sich das Ganze danach an, als ob du auf der Suche nach 
Entprellung bist, bzw. den Unterschied zwischen
* Taste wurde niedergedrückt und
* Taste ist gedrückt
lernen musst.

Ersteres ist eine Flankenerkennung. D.h. der Weg führt über die 
Erkenntnis, das eine niedergedrückte Taste auch wieder losgelassen 
werden muss - d.h. der Wechsel von nicht gedrückt zu gedrückt ist das 
entscheidende und nicht das die Taste gedrückt ist.
OP #3324947
Lesenswert?

Danke für Eure Antworten. Entprellung scheint das richtige Stichwort zu 
sein, das werde ich mir erstmal zu Gemüte führen.
Bisher löse ich es halt über ein Flag, das durch "loslassen" der 
Touchfläche wieder freigegeben wird. Ich würde gerne aber auch 
Mehrfachauslösung durch Halten der Taste zulassen, aber sowas ist ja im 
Wiki beschrieben.
Vielen Dank für das Stichwort!

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren