USB-Treiber für PC-Seite

Gast #144870
Hallo Leute,
ich spiele schon seit ner Weile mit dem Gedanken, mal was mit AVR und
USB zu machen. Es gibt ja diese tollen FTDI-Chips, von TI ein paar, von
Philips ein paar usw, aber wie mache ich das auf der PC-Seite? Konkret
habe ich die Idee, einen USB-Joystick selber zu bauen. Ich habe hier
noch nen richtig gut verarbeiteten programmierbaren Flugsteuerknüppel
(X36 von Saitek, falls das jemandem was sagt), der jedoch per Gameport
angeschlossen wird und zusätzlich noch per Din-Fünfpol ins
Tastaturkabel eingeschleift wird. Nun hat mein Notebook aber keins von
beidem... Die Idee also: die Tasten und Potis des Joysticks mit ATmega8
oder so auslesen und per USB verschicken, aber dann muss man das Ding ja
irgendwie als Joystick deklarieren und die Potistellung in die richtigen
Speicherstellen schreiben. Und die Krönung wäre ja, wenn man mit einem
Knopfdruck auf dem Joystick einen Tastaturcode absenden könnte. Ich
weiß, gibts alles, die neueste Auflage von Saitek kostet 99€. Und ich
will sowieso mal rausbekommen, wie das mit USB funzt.
Kann mir jemand direkt mit der Idee weiterhelfen und/oder allgemeine
Informationen über die PC-Seite von USB-Peripherie geben? Ich
pogrammiere in Delphi.

MfG, Sebastian
Gast #144872
Du bist Dir dessen bewusst, daß es USB-Gameport-Adapter gibt?

Und auch dessen, daß die Tastaturkabelgeschichte nur für die
Stromversorgung des Joysticks erforderlich ist?

USB definiert Standardgeräteklassen für die unterschiedlichsten
Bereiche, für Wechseldatenträger ("Mass storage devices"),
Audioadapter und eben auch "Human input devices", kurz HID genannt.
Dazu zählen Mäuse, Tastaturen und Joysticks.
Der Sinn dieser Standardgeräteklassen ist, daß keine speziellen
Gerätetreiber erforderlich sind.

Mit einem FTDI-Chip ist es nicht möglich, eine der
Standardgeräteklassen zu implementieren; für einen selbstgebauten
Joystick müsste man also komplett eigene Treiber selbst neu
programmieren.
Es gibt von diversen Herstellern von USB-Microcontrollern
Musterapplikationen, die HIDs implementieren - wenn Du schon darauf
bestehen solltest, Deinen Joystick mit einer selbstgestrickten Lösung
anzuschließen, dann solltest Du so etwas verwenden.

Die eingangs von mir erwähnten USB-Gameport-Adapter sind übrigens auch
HIDs, benötigen also keine speziellen Devicetreiber.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 21 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.