USB-Joystick was ist möglich

Persönliche Seite #3050073
Lesenswert?

Hallo zusammen,

für ein Projekt benötige ich ein Einfaches Eingabegerät
für das ich je einen Analogen (Poti 0-100%) Eingang und 10 Tasten 
benötige.

Ich teste gerade einem einfachen USB-Joystick (HAMA PC-Gamepad) ...

Zum auslesen verwende ich die JoyGetPosEx.DLL
1
TYPE TJOYINFOEX
2
   dwSize AS LONG
3
   dwFlags AS LONG
4
   dwXpos AS LONG
5
   dwYpos AS LONG
6
   dwZpos AS LONG
7
   dwRpos AS LONG
8
   dwUpos AS LONG
9
   dwVpos AS LONG
10
   dwButtons AS LONG
11
   dwButtonNubmer AS LONG
12
   dwPOV AS LONG
13
   dwReserved1 AS LONG
14
   dwReserved2 AS LONG
15
END TYPE
16

17
DECLARE FUNCTION JoyGetPosEx LIB "WINMM" ALIAS "joyGetPosEx" (uJoyID AS LONG, JoyInfo AS TJOYINFOEX) AS LONG

von den 6 möglichen Analoge Eingänge kann ich 4 einlesen ,
über dwButtons kann ich alle 12  Tasten verwenden, es stehen mir somit 
12 Leitungen für eine Matrix zu Verfügung und über dwPOV ein digitale 
Steuerfeld welches folgende Werte liefert:

mittig = 65535
oben  = 0
unten = 1800
links = 27000
rechts = 9000
alle zusammen = 4500
habe mir den Wert Binär anzeigen lassen, bin aber noch nicht ganz 
dahinter gekommen, ist aber auch erst mal nicht so wichtig.

---------------
Für mein Projekt habe ich vor einen bzw. mehrere FUNK-Jojstick als 
Materialspender zu verwenden ...

Welchen FUNK-Joystick könnt Ihr mir empfehlen um möglichst viele 
Funktionen mit möglichst kleinem Geld zu bekommen ...

Gruss Ralf
Persönliche Seite #3051685
Lesenswert?

Hallo

das kommt davon wenn man auf Zahlen schaut und diese in HEX oder BIN 
versucht zu deuten ... und dabei grinst ein das Ergebnis förmlich an :-)
1
Werte vom dwPOV 
2

3
mittig = 65535(-1)
4
oben   = 0      = 0° oder auch 360°
5
rechts = 9000   = 90°
6
unten  = 1800   = 180°
7
links  = 27000  = 270°
8

9
dwPOV / 100 ist einfach nur eine Winkelangabe ...

gibt es denn Joysticks die diesen Wert analog 0-360° überhaupt erzeugen, 
bislang habe ich immer nur Pads gesehen, welche die vier Richtungen als 
Tasten übergeben ...

Gruss Ralf
Gast #3052120
Lesenswert?

ich hätte das was billiges für Dich, ob es was gescheites ist kann ich 
nicht sagen
2.4G wireless Shock Controller Joypad Gamepad USB Receiver
http://www.ebay.de/itm/2-4G-wireless-Shock-Controller-Joypad-Gamepad-USB-Receiver-For-PC-Computer-Black-/280930028778?_trksid=p5197.m1992&_trkparms=aid%3D111000%26algo%3DREC.CURRENT%26ao%3D1%26asc%3D14%26meid%3D5702349148951912586%26pid%3D100015%26prg%3D1006%26rk%3D1%26sd%3D280930028778%26

32 Tasten an einem GamePad, hast Du da nicht ein wenig in deinem Tool 
überbieten oder wie kommst Du darauf ?
Persönliche Seite #3052842
Lesenswert?

@PCF
> 2.4G wireless Shock Controller Joypad
das sieht doch gut aus ... für das Geld kann man nicht viel falsch 
machen ... werde ich zum testen mal bestellen und dann berichten ...

32 Bit/Tasten ist die Vorgabe vom JoyGetPosEx ... glaube zwar auch nicht 
das es GamePads gibt die so viele Tasten haben werden ...

Gruss Ralf
#3052876
Lesenswert?

Ralf G. schrieb:
> 32 Bit/Tasten ist die Vorgabe vom JoyGetPosEx ... glaube zwar auch nicht
> das es GamePads gibt die so viele Tasten haben werden ...

Mit VUSB hab ich mal testweise nen Gamepad-Controller mit 64 Digitalen 
und 8 Analogen Eingängen für den Flight Simulator gebastelt.

MJoy hieß das ganze. Einfach mal nach MJoy16 googeln. Da wirst du 
schnell fündig. Hoffe es hilft ein wenig, wenn auch kabelgebunden.

EDIT: Ach ja, MJoy war nicht mein Projekt. Ich habe meines damals nur 
daran angelehnt/aufgebaut.
Gast #3052885
Lesenswert?

Ralf G. schrieb:
> gibt es denn Joysticks die diesen Wert analog 0-360° überhaupt erzeugen,
> bislang habe ich immer nur Pads gesehen, welche die vier Richtungen als
> Tasten übergeben ...

Es gibt auf jeden Fall auch Joysticks die das in 8 Segmente einteilen. 
Vielleicht gibt es dann auch für Hardcore Gamer welche, die das in 16 
einteilen.

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