PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Joystiktasten prellen?!?



Magge2k
10.10.2006, 16:45
Hi leute!

Ich habe einen USB joystick und frage diesen immer alle 20ms ab.
Wenn ich jetzt eine Taste drücke und wieder loslasse dann prellt diese.

Kennt von euch jmd eine Funktion oder ein stücken Code mit dem ich die Tasten per Software entprellen kann?

der Joystick ist am PC angeschlossen und die Entwicklungssprache ist C.

greez

robocat
10.10.2006, 18:12
vielleicht genügt es schon, weniger häufig zu pollen, etwa alle 70ms könnte taugen.

Magge2k
10.10.2006, 18:14
das ist leider nicht möglich da in der Routine nicht nur der Joystick abgefragt wird.

robocat
10.10.2006, 18:57
sorry, das war schon das beste was mir eingefallen ist... =(
evtl nur bei jedem 4ten mal joystick abfragen?
oder 2-3 mal kurz hintereinander, und die ergebnisse &-verknüpfen?
*grübel*

Ruppi
11.10.2006, 15:43
Hallo,
in Software könnte man folgendes machen: Du fragst ja in einer Schleife Deine jeweilige Taste ab. Wenn diese gedrückt wird, musst du wegen dem Prellen etwas warten und dann erneut fragen, ob die Taste immernoch gedrückt ist. Wenn ja, wartest du, bis sie losgelassen wird.
Ich versuche mal, es in Basic zu formulieren:

if Taste=true then
waitms 10
do
loop until Taste=false
end if

Hoffe, es hilft Dir weiter...

Ruppi

king-sixXx
11.10.2006, 15:49
Bau in deine Routine einen Counter ein und ueberpruefe bei jedem Durchlauf den Status von deinem Joystick. Wenn dreimal hintereinander gedrueckt ist, dann kannst du ein Ergeignis ausfuehren.
Ich hab das bei meinem Joystick auch so geamcht. Allerdings wird dieser von einem PC ausgewertet...

MFG!

king-sixXx
11.10.2006, 15:55
Hab noch was gefunden:
http://www.mikrocontroller.net/articles/Entprellung