Multifunktionstaster - Abfrage eines Status für eine Bestimmte Zeit?!

jurs:
Nein, mit pinMode INPUT_PULLUP ist die Pegel-Logik jetzt natürlich vertauscht und Du mußt beim Auslesen das Signal mit dem '!' (NOT) Operator invertieren:

tastehochState = !digitalRead(tasterhoch);

... ach, so "einfach" ist das. Okay!?
Danke!

jurs:
Ich fange mal an zu suchen ...

[Edit] So, fertig gesucht: Etwas in der Art habe ich bisher noch nicht im Forum gepostet, und auch bei mir auf der Festplatte konnte ich nur Fragmente entdecken. Ich hatte die Verwendung solcher Button-Funktionen aufgegeben, nachdem ich gemerkt hatte, wie lahm die Bedienung dadurch wird: Nur ein "Doubleclick" wird in der Zeit erkannt, die man für den Doubleclick tatsächlich benötigt, alle anderen Funktionen werden nur mit Verzögerung erkannt: Ein "Singleclick" wird erst erkannt, nachdem die maximal erlaubte Doubleclick-Time vergangen ist, innerhalb der aus einem Singleclick noch ein Doubeclick werden könnte. Und Longclick Tastendrücke brauchen lange, weil die Taste eine bestimmte Mindestdauer gedrückt bleiben muss. Das hatte mir dann alles nicht gefallen und ich habe es beiseite gelegt, obwohl es funktioniert hat.

Mal schauen, ob ich den Code da rausziehen und ein geeignetes Programmierbeispiel dazu machen kann.

Also einen Duoble-Click benötige ich nicht.
Ich habe mir das so vorgestellt:
Ich habe drei LED Ausgänge. Im "Ruhezustand" sind alle aus. Bei Single-Click geht LED1 an und bei weiteren Single-Clicks werden die LEDs "durch getoggelt". Das läuft so weit schon. Jetzt muss "nur noch" die Ausschalt-Funktion implementiert werden. Die soll über eine längere Haltedauer des Tasters realisiert werden.

Danke und Gruß
der "Stevie"