Wie kann ich bei diesem Problem weiterkommen?
Ich habe mir einige Artikel hier über Maussensoren durchgelesen.
Ich finde das Auslesen kompliziert. Ich nutze einen PIC über einen Basicdialekt(Picbasicpro).
Kann mir jemand eine kurze Anleitung geben, wie ich den Sensor anschließen muß und herausfinde, wie sich etwas relativ dazu bewegt?
Was ist denn ein Quadraturausgang ?
Wie kann ich bei diesem Problem weiterkommen?
bitte sei so nett und stoebere hier und du wirst VIELE deiner Fragen beantwortet bekommen.
mfg
wawa
Lieber wawa, du hast doch nicht etwa eine Leseschwäche?
Moin,
Eine Frage vorweg, was für einen Maussensor meinst du? Kugelmaus oder optisch, PS2 oder USB, oder direkt verkabelt?
also zuerst mal zum Quadraturausgang:
So ein Quadraturencoder hat 2 Pins auf dem ein Signal um 90° Phasenverschoben liegt. Stell dir ein gleichmäßiges Rechtecksignal vor, das die hälfte der Zeit an und die andere Hälfte aus ist. Jetzt nimmst du genau das gleiche Signal und verschiebst es um eine viertel Periode, also um ein halbes high oder low. So sehen die Signale aus. Der Trick ist nun, dass in die eine Richtung der eine Kanal zuerst von low auf high wechselt, gefolgt vom anderen, und dass bei umgedrehter Bewegungsrichung genau der andere Kanal vorauseilt.
Dh du kannt mit nem Quadraturausgang die Bewegungsrichtung erkennen
...
Eine optische Maus, USB. Darauf steht: H2000 9924.Eine Frage vorweg, was für einen Maussensor meinst du? Kugelmaus oder optisch, PS2 oder USB, oder direkt verkabelt?
Ich sehe es so: Ich brauche vier I/O Anschlüsse vom PIC, die ich auf I einstelle. Diese verbinde ich mit XA,XB,YA und YB.
XA steht für X-Richtung Welle A
XB steht für X-Richtung Referenzwelle zu A
YA steht für Y-Richtung Welle A
YB steht für Y-Richtung Referenzwelle zu A
So kann ich also sehen, ob es sich in + oder -, Y oder X-Richtung bewegt.
Dann noch die Spannungsversorgung an Vdd und Ground und das war es - oder? Muß ich die Verbindung von XA,XB,YA und YB zu CY7C63000A-PC kappen?
Das klingt ja einfacher als ich dachte.So ein Quadraturencoder hat 2 Pins auf dem ein Signal um 90° Phasenverschoben liegt. Stell dir ein gleichmäßiges Rechtecksignal vor, das die hälfte der Zeit an und die andere Hälfte aus ist. Jetzt nimmst du genau das gleiche Signal und verschiebst es um eine viertel Periode, also um ein halbes high oder low. So sehen die Signale aus. Der Trick ist nun, dass in die eine Richtung der eine Kanal zuerst von low auf high wechselt, gefolgt vom anderen, und dass bei umgedrehter Bewegungsrichung genau der andere Kanal vorauseilt.
Dh du kannt mit nem Quadraturausgang die Bewegungsrichtung erkennen
Und je schneller sich die Maus bewegt, desto höher die Frequenz?
Mh ich kenn das Datenblatt des IC nicht, aber es klingt plausibel, dass die Daten direkt die Quadraturencoder Ausgänge sind. Mit jedem Übergang, von dem es 4 pro Periode gibt, kannst du einen Tick in eine Richtung bestimmen. Wie groß ein Tick ist, weiß ich allerdings nicht. Manche Mäuse haben neben dem USB Anschluss immernoch ein PS2-Interface, das könntest du ach seriell auslesen und direkt fragen, wie weit sich das Ding seit dem letzten Auslesen bewegt hat.
Aber wenn du an die Leitungen dran kommst und einen Controller dabei hast, der schnell genug ist bzw nicht zu beschäftigt mit was anderem, solltest du alle Übergänge erwischen können.
...
Prinzipiell gibt es zwei Möglichkeiten, mit einem Mauschip zu kommunizieren:
A) die bereits erwähnten Quadaturausgänge. Die musst du selber auswerten, was aber ziemlich simpel ist. Bei dieser Methode hast du aber keinerlei Möglichkeiten, z.B. die Auflösung einzustellen oder (bei optischen Mäusen) an die Bilddaten der Kamera zu kommen ...
B) über das synchrone, bidirektionale serielle Interface des Chips (Takt und Daten). Das ist einigermaßen komplex, fast schon eine kleine Diplomarbeit. Dafür bekommtst du aber Zugriff auf sämtliche Möglichkeiten der Kamera und des DSP ...
Frank
Lesezeichen