Forum: Mikrocontroller und Digitale Elektronik Taster kurz und lang (mit Besonderheit)


von Martin S. (Gast)


Lesenswert?

Hallo liebe Community,

mein Ziel ist es einen Taster, je nachdem ob er kurz(unter 1 Sekunde) 
oder lang (über 1 Sekunde) gedrückt wird, mit zwei Funktionen 
auszustatten.


Wird der Taster kurz gedrückt:
- soll Programm pausieren (bei erneutem kurzdrücken weiterlaufen)

Wird der Taster lang gedrückt:
- soll ein analoger Wert vom potentiometer ausgelesen werden und dadurch 
der Helligkeitswert einer LED bestimmt und ausgegeben werden.

Das Besondere daran ist, dass ja zunächst geprüft werden muss ob der 
Taster HIGH ist und dann nach Ablauf der Sekunde >> soll automatisch 
(Taster soll also gedrückt bleiben) in eine Schleife übergegangen werden 
in der der Helligkeitswert der LED bestimmt und ausgegeben wird - bis 
der Taster losgelassen wird - da soll das Programm normal weiter laufen.

Bei meinen verschiedenen Versuchen bleib ich immer in der 
Pause(kurzdrücken) hängen ist meine Problem.

: Verschoben durch User
von Joachim B. (jar)


Lesenswert?

Beitrag "Tasten entprellen - Bulletproof"

da ist Entprellung drin und kurz und lang Abfrage

von Martin S. (Gast)


Lesenswert?

Danke für die schnelle Antwort.

Hab das Problem inzwischen lösen können.
Am Debounce lags aber glaube nicht.

Wenn mann delay(10); nach nem drücken machen, dann dürfte doch nix mehr 
bouncen oder?

von Joachim B. (jar)


Lesenswert?

Martin S. schrieb:
> delay(10); nach nem drücken machen, dann dürfte doch nix mehr
> bouncen oder?

ist aber verschenkte Rechenzeit, hat der sonst nix zu tun?

ich finde es genial im 10ms Interrupt Tasten abzufragen und kann überall 
jederzeit feststellen wenn ich mag ob irgendwo ne Taste gedrückt wurde 
ohne diese immer abzufragen und mir entgeht zu keiner Zeit ein 
Tastendruck

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.