Joystick entprellen

Hallo!
Nachdem ich jetzt eine annehmbare Pinbelegung für meinen Joystick herausgefunden habe bin ich fröhlich dabei das zu testen. Hier leuchten fröhlich LEDs auf (eine grüne für den Druckknopf, rote/gelbe zusätzlich bei X-/Y-Richtung).

Jetzt habe ich mir mal dieses Tutorial vorgenommen um ein Menü erstmal in der Konsole aufzubauen und das später dann auf mein Display zu übertragen.

Jetzt zeigt sich das Problem, das der Druckknopf in der Mitte des Joysticks "prellt".
Bei jeder Achsen-Bewegung des Joysticks wird auch der Druckknopf aktiviert. Das ist für die Auswertung der Achsen-Bewegung kein Problem, aber irgendwie "schwingt" der Taster halt nach, bzw. prellt eben.
Für jede Down-Bewegung hab ich so auch zwei bis vier Aktivierungen des Druckknopfes.

Wie komme ich dem am Besten bei, d.h. wie entprelle ich den Taster in der Mitte des Joysticks?

Bzw. vielleicht ist der verwendete Code an sich auch das Problem, das weiss ich nicht. Hat jemand etwas Besseres zur Auswertung von Buttons?

Danke!

Wenn bei jeder Bewegung auch der Mittelknopf gedrückt wird, sehe ich keine Möglichkeit eine ordentliche Kontrolle zu schreiben.
Viele Grüße Uwe

Ich habe gerade mal etwas ausprobiert, aber ob das so super ist, weiß ich nicht. Es scheint zumindest zu funktionieren.

Wenn ich ein delay(200); vor die Prüfung des Enter-Buttons setze, dann hat der Stick genug Zeit um "zurückzuschwingen" und wieder in Ruhe zu kommen, bevor geprüft wird, ob der Button gedrückt wurde...

Mit einer Verzögerung von 50 ms funktioniert das auch noch. Kann mir nicht genau erklären wieso, aber es scheint so tatsächlich zu klappen.

Jetzt muss ich noch den Enter-Button an sich entprellen, mal schauen was ich da mache...

Ich würde hier schauen: http://www.arduino.cc/en/Tutorial/Debounce oder für eine bessere Lösung hier:
Entprellung – Mikrocontroller.net.

Besten Dank, schau ich mir an.