PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Maus data!?



Dr.Gonzo
21.06.2007, 21:31
ich hät da mal ne frage (is ja klar sonst würd ich ja kein neuen thread aufmachen :-s )

Und zwar:
Bei den usb mäusen (sag ma mal die General keys von der hier soviel geposted wird) was kommst da bei den 2 Pins:
D- Data - und
D+ Data +
eigentlich herraus... und kann man mit den, ich sag mal daten, eigentlich was vernünftiges in der robotik anfangen?

danke schon mal im voraus
gonzo

radbruch
21.06.2007, 21:55
Hallo

Soweit ich weis verwenden USB-Mäuse ein recht aufwendiges Protokoll. Einfacher geht es mit einer seriellen Maus, hier ein Beispiel:

https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=28142

(Irgendwie wird keines meiner Projekte richtig fertiggestellt...)

Gruß

mic

Goblin
21.06.2007, 22:28
also soweit ich weiss ist Data- ganz einfach das Gegenteil von Data+. Das dient der Entstörung.

http://www.elektronik-kompendium.de/sites/com/bilder/09020811.gif

Aber wie Radbruch schon sagt, ne PS2-Maus ist vom Protokoll her wesentlich einfacher. USB ist echt nicht ohne. Je nach Vorkenntnissen solltest du da brauchbare Daten rausbekommen. Schau dir das PS2-Protokoll einfach mal bei Wikipedia an. So schwer ist das nicht.

radbruch
21.06.2007, 22:44
Ich vermute, das ist eine Differenzspannungsschnittstelle. Das bedeutet, das Signal steht nicht gegen Masse oder 0V an sondern es gilt der Pegel zwischen D+ und D-. Der Vorteil besteht in der Störungsunempfindlichkeit dieser Methode. Störfelder von außen beeinflussen beide verdrillte Datenleitungen gleichermasen, dadurch ändern sich dann zwar die Pegel gegen Masse, aber der Spannungsunterschied(=Differenz) zwischen den Datenleitungen bleibt gleich.

Dr.Gonzo
22.06.2007, 09:22
Aha also da ich in dieser Sache noch ein newbe bin wär die vernünftigere Variante die PS/2 Geschichte… Nur das Problem ist das man mit ps2 nicht wirklich gute Mäuse findet… Gibt’s vlt einen Adapter der mir das USB Protokoll auf ein PS/2 Protokoll konvertiert? Und wenn ja, hat das überhaupt einen Sinn? Die PS/2 Schnittstelle soll laut Wikipedia langsamer sein…

Zur Information: ich würd das ganze gern zur Positionsbestimmung durch Odometrie nutzen… ich hab mir den thread von mpetz durchgelesen:
https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=11548&highlight=odometrie
Dachte mir nur, dass es vlt einfacher ist das Protokoll zu verwenden, als das Signal direkt an der Maus abzugreifen.

Jaecko
22.06.2007, 09:28
Hab schon einige PCs gesehen, die eine USB-Maus hatten, der über nen Adapter an PS/2 angeschlossen war. Grund: Die USB-Maus funktionierte "ausserhalb" von Windows nicht, die PS/2 ging sogar im BIOS.

Goblin
22.06.2007, 12:49
Es gibt diese kleinen grünen Adapter von USB auf PS2, die bei fast jeder USB-Maus dabei sind. Bei uns im Dispatching-Büro liegen die tonnenweise rum. Ausserdem: die PS2-Schnittstelle sollte für dich auf jeden Fall schnell genug sein ;)

Dr.Gonzo
23.06.2007, 18:16
Ok danke für die Antworten...
ich werde mal schaun das ich was vernünftiges zusammen bring.

greeze
dr.gonzo

Rofo88
23.06.2007, 19:35
Und so sieht der Adapter von innen aus
http://img183.imageshack.us/img183/7186/adapdo0.jpg

Der Trick an der Sache ist : das Eingabegerät (Maus/Tastatur) erkennt das Protokoll und schaltet dementsprechend auf USB- oder PS2-Modus.

Lunarman
23.06.2007, 22:10
heißt dass, da läuft einfach kein usb drüber?

Rofo88
24.06.2007, 08:47
Wenn die Tastatur/Maus mit den Adapter an nem PC steckt erkennt das Eingabegerät das PS2-Protokoll und arbeitet auch nur mit diesem. Das heißt das auf dem Kabel+Adapder kein USB-Signal ist sondern nur PS2.

Früher gab es auch mal Mausadapter von PS2 auf RS232 (das war noch weit vor der USB-Zeit) da wurde es genauso gemacht da wurde halt zwichen PS2- und RS232-Protokoll entschieden.

BlinkyBill
25.06.2007, 08:12
genau, es wird nur in der Maus umgeschalten.

Daher funktioniert dieser adapter aber auch nur mit der Maus, bei der er mitgeliefert wurde, weil nur wenige gute Hersteller dann überhaupt noch ps2 in der Maus implementieren.

Die Ansteuerung über USB ist mehr oder weniger kompliziert.
Das Hauptproblem wird das initialisieren und identifizieren. Wenn sie läuft, wird einfach ein Array mit 4 Feldern übertragen. Davon enthält eines einen wert für die x-achse, eines einen wert für die y-achse, und die anderen beiden sind für tasten und Rad.
Bei den achsen werden positive und negative werte verwendet, je nachdem ob links /rechts oder eben hoch/runter.

Gruß