Forum: Mikrocontroller und Digitale Elektronik wie lese ich eine USB Maus mit ATXMEGA aus ?


von Sylvia H. (sandy)


Lesenswert?

Hallo Leute,
ich habe folgendes Problem:
ich habe eine Schaltung rund um den MAX3421E entwickelt, welche USB 
Datenverkehr auf einen SPI Bus weiterleitet.
Der Ansteuerungscontroller ist ein ATXMEGA 256D3.
Nun bin ich auf der Suche nach einem Treiber, welcher die Maus anspricht 
und ihre Daten abfrägt.
Im www habe ich bisher nur Maustreiber gefunden, mit denen man selbst 
eine Maus entwickeln kann, wo finde ich aber einen Teiber, der auf dem 
Host läuft und die Maus ansteuert?
Die Programmiersprache sollte C sein.
Gruß
Sylvia

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Du brauchst einen USB-Host-Stack für Deinen USB-Host-Controller (den 
MAX3421E) und darauf aufsetzend einen Treiber für die HID-Geräteklasse. 
Wenn Du den einen findest, dürfte der andere nicht weit sein.

von Sylvia H. (sandy)


Lesenswert?

Der Host Stack ist bereits im MAX3421 implementiert, wenn eine Maus 
angeschlossen wird setzt der ATXMEGA die Enumeration in Gang.
Doch danach ist Sendepause. Ich weis nicht, wie man die Maus anspricht, 
und deren Daten ausliest.
Das mit dem Treiber für die HID Klasse ist mir klar, doch irgendwie 
finde ich keinen, der ohne Windows oder sonstige Betriebssysteme 
funktioniert.

von slw (Gast)


Lesenswert?

ich würde sagen wie jedes HID Device durch polling auf Interrupt 
endpoint

von Sylvia H. (sandy)


Lesenswert?

gibts da irgendwo Beispielcode? Ich bin ganz neu im Geschäft, und noch 
etwas verloren in der Thematik..........

von slw (Gast)


Lesenswert?

und gleich mit host angefangen...mutig, mutig

Besorge einen USB Sniffer und schalte diesen zwischen PC und Maus. Ich 
bin mir sicher, dass Du nach der Auswertung der Daten viel weiter 
kommst.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.