Hallo µC-Freunde! Ich bin komplett neu hier und suche schon seit über einer Stunde nach eine Lösung. Ich habe genau so etwas schon vor ein paar Jahren in der Schule gemacht, habe aber leider den Code nicht mehr. Es geht um folgendes: Ich möchte gerne mit meinem ATMega8a einen USB-Controller für meinen PC bauen/programmieren. Dieser Controller soll mehrere Buttons und einen Joystick (nicht analog, also ein D-Pad mit Griff) mitbringen. Die Planung steht, die Teile sind quasi auf dem Weg. Mein Problem ist nun: Wie schreibe ich das Programm so, dass die Eingaben vom µC nicht intern genutzt werden sollen, sondern an Windows "weitergeleitet" werden sollen? Wie gesagt ich habe so etwas schon mal gemacht, allerdings ist das etwas länger her und ich stehe diesbezüglich auf dem Schlauch. Ob die Lösung in C oder in Bascom geliefert wird, ist mir relativ schnuppe, da ich beides im Ansatz beherrsche. Mit Assembler habe ich allerdings keine Erfahrung, aber ich weiß, dass wir dieses Projekt in der Schule mit Bascom realisiert haben. Ich bedanke mich schon mal im Voraus und wünsche ein Angenehmes Wochenende! Coon
:
Verschoben durch User
Nimm einen Controller aus einer alten USB-Tastatur und löte deine Tasten + Joystick passend dran. Fertsch.
TheCoon schrieb: > Wie schreibe ich das Programm so, dass die Eingaben vom µC nicht intern > genutzt werden sollen, sondern an Windows "weitergeleitet" werden > sollen? Dein Atmega8 hat kein USB-Interface; Du kannst aber per Software (V-USB) ein für HID-Anwendungen ausreichendes USB-Interface per Bit-Banging (Pingewackel) nachbilden. Und da, auf der V-USB-Projektseite, findest Du auch diverse Beispiele, wie dieses Softwarepaket genutzt werden kann: https://www.obdev.at/products/vusb/index.html
Unter dem Namen JoyWarrior kannst du so eine Platine auch fertig kaufen.
google ma nach usb4all, hat nur 1 kl. nachteil: anderer uC
Hallo, ein weiter Vorschlag mit USB 2.0 Interface: hat ein Atmega32u4 drauf. Als fertiges Board, evtl. mit zusätzlichem Spannungswandler und Steckverbinder: https://www.ehajo.de/boards/91/atmega32u4-breakout-board Den passende USB Stack gibt's mit dem LUFA Projekt: http://www.fourwalledcubicle.com/LUFA.php
ich nehme für sowas meistens ein billiges Digisparkboard aus China. Das kann dann per Arduinooberfläche programmiert werden und man kann Tastatur und Maus damit automatisieren.
Hallo tinyusbboard ( http://matrixstorm.com/avr/tinyusbboard/ ) kann USB_HID implementieren. Dazu gibt es auch breits eine Bibliothek die das ganze HID übernimmt: https://github.com/tinyusbboard/hid-KeyboardMouse MfG Stephan Nachtrag: https://plus.google.com/108414175871566419950/posts/Lk25mNtc2qu
:
Bearbeitet durch User
Erst mal vielen Dank für die vielen Antworten! Vielleicht wäre es noch nützlich zu wissen, dass ich einen ATMega8a auf einem mySmartControll V1.11 von myAVR.de besitze.
TheCoon schrieb: > Erst mal vielen Dank für die vielen Antworten! > > Vielleicht wäre es noch nützlich zu wissen, dass ich einen ATMega8a auf > einem mySmartControll V1.11 von myAVR.de besitze.
Auch wenn einige wieder die Nase rümpfen werden, aber https://www.obdev.at/products/vusb/hidkeys.html ist genau für diesen Zweck gemacht, das nur LowSpeed unterstützt wird, stört bei einer Tastatur auch nicht.
Den ATMega8a für etwas anderes verwenden. Arduino Leonardo oder Arduino Micro besorgen (haben echten USB-Port). Arduino Joystick Library von Matthew Heironimus ziehen, Beispiel ist dabei. Funktioniert super!
Gamepad kaufen. Fertig. Erspart 2-3 Jahre Einarbeitung in die Grundlagen, und unzählige Threads in einschlägigen Foren. Oliver
Oliver S. schrieb: > Fertig. Erspart 2-3 Jahre Einarbeitung in die Grundlagen, Lerneffekt: 0 Erkenntnisgewinn: 0 Fähigkeiten weiterentwickelt: 0
Richtig. Bei dem aus der Ausgangsfrage ableitbaren Kenntnisstand geht’s halt nicht anders. Das Projekt ist zwanzig Nummern zu groß. Zum Einstieg in die Materie kann er ja immer noch was passenderes finden. Oliver
Rufus Τ. F. schrieb: > Lerneffekt: 0 > Erkenntnisgewinn: 0 > Fähigkeiten weiterentwickelt: 0 Siehe: TheCoon schrieb: > Ob die Lösung in C oder in Bascom geliefert wird, ist mir relativ > schnuppe, Lerneffekt: 0 Erkenntnisgewinn: 0 Fähigkeiten weiterentwickelt: 0 ;-)
Hallo, Rufus Τ. F. schrieb: >> Fertig. Erspart 2-3 Jahre Einarbeitung in die Grundlagen, > > Lerneffekt: 0 > Erkenntnisgewinn: 0 > Fähigkeiten weiterentwickelt: 0 Und, wo ist das Problem? Glaubst du, das jemand der "so etwas schon vor ein paar Jahren in der Schule gemacht, aber leider den Code nicht mehr hat" wirklich interessiert daran ist etwas zu lernen? Und warum ist es eigentlich so wichtig, das jeder Fragesteller unbedingt etwas lernen muss? rhf
Roland F. schrieb: > Und warum ist es eigentlich so wichtig, das jeder Fragesteller > unbedingt etwas lernen muss? Oh, Mist, das Leben ist so anstrengend.
atmega8 ist veraltet. durch pingleichen atmega328 ersetzen. Dann Tastenbefehle per usart über usart-usb-modul an den pc senden und mit vb.net auswerten.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.