Taster entprellen

#483460
Lesenswert?

> Kann mir jemand etwa mehr erklären

Das ist gar nicht so leicht zu erklären. Das Ganze ist
nämlich ziemlich trickreich. Ich bin kein Neuling mehr
und habe schon ziemlich lange gebraucht um zu verstehen
wie das funktioniert.

Das Zählen hat nur den Grund, dass der Code insgesamt
4 mal hintereinander die Tasten abfrägt und nur dann
wenn alle 4 mal dasselbe Ergebnis herauskommt, gilt die
Taste als gedrückt.

> Warum zwei Zähler?
Eigentlich ist es nur 1 Zähler, der aber auf 2 Variablen
aufgeteilt ist. Das ist einer der Gründe warum der Code
ziemlich 'tricky' ist.

> Welche Rolle spielt ein "atomic"?
'atomic' in diesem Zusammenhang heist nur, dass garantiert
werden soll, dass ein Programmabschnitt ohne Unterbrechung
durch einen Interrupt durchläuft.
atomic == atomar == in einem Stück, unteilbar.
Daher werden vor dem Codestück die Interrupts abgeschaltet
und dahinter wieder aufgedreht.

Benutzte den Code einfach. Er funktioniert ausgezeichnet.
Wenn du nicht verstehst wie diese 'Magie' funktioniert:
Kein Beinbruch. Als Neuling muss man diesen Code nicht
verstehen.

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