AVR USB HID - Informationen gesucht!

OP #2746793
Hallo MC-Community!

Seit einigen Tagen versuche ich vernünftige Informationen bezüglich 
eines HID-Devices via AVR aufzutreiben.

Mein Projekt sieht dabei eine einfach Kommunikation zwischen einem 
AVR-basierten Microcontroller und dem PC mittels des standard 
HID-Treibers (Windows) vor. Im Prinzip also nur ein paar Knöpfe und 
Schalter, die dann Steuerbefehle an den PC übertragen (HID eben).

Die Frage ,die sich mir nun stellt, ist, wie ich am besten damit 
anfange. Hier im Forum wurden in ähnlichen Themen sowohl die speziellen 
AVR-USB Controller erwähnt, als auch ATMELs V-USB welches ja auf fast 
allen etwas perfomanteren ATMEL Microcrontrollern läuft. Zu beiden 
Varianten habe ich jedoch wenig Einsteigerfreundliches Material 
gefunden.

Kennt also jemand ein gutes Tutorial oder ein erschwingliches 
Test-Board, mit dem man sich in die Gefilde des Universal Serial Bus 
einarbeiten kann?

MfG

Lucas

PS.: Ich verfüge über weitreichende Programmierkenntnisse, bin jedoch 
ein Neuling in Sachen Microcontroller.
Lucas Mösch schrieb:
> erschwingliches
> Test-Board
Wenn es V-USB sein soll, dann tut es sicherlich ein USBasp für 3 Euro 
aus China. Wenn du einen USB-AVR nutzen willst, dann könnte ein Teensy 
was für dich sein.

> Kennt also jemand ein gutes Tutorial
Ich würde ein Buch über USB empfehlen. Hab mir zu diesem Zweck mal "USB 
2.0 - Handbuch für Entwickler" gekauft. Über V-USB kann man sich hier 
belesen: http://vusb.wikidot.com/.


Gruß Oliver
(Firma: Reusch Elektronik)
> Korrekt programmierte HID Devices sollten auch unter Mac OS und Linux
> ohne Probleme laufen.

Tut es (wohl) auch! Für die Host-Seite ist eben lediglich ein 
funktionsfähiges Beispiel für Windows dabei.

Übrigens: "V-USB" ist ein geniales Stück Software! Es verpasst jedem 
"gewöhnlichen" AVR gewissermaßen eine USB-Schnittstelle. Weil es auf 
Software basiert, ist eben nur "Low Speed" (1,5MBit/s) möglich. 
Allerdings reicht das bei vielen Applikationen.
Das Problem ist eher, dass V-USB (nach meiner Erfahrung) nur 
einigermaßen zuverlässig funktioniert, wenn der Controller mit 3,3 Volt 
versorgt wird. Des weiteren steht nicht viel Rechenpower für andere 
Aufgaben zur Verfügung.
Wenn es gut werden soll, ist daher einer Controller mit eingebauter 
USB-Engine (wie die USB-AVRs) in jedem Fall vor zu ziehen.
OP
Vielen Dank für die nützlichen Links und Erklärungen. Ich denke ich 
werde mich dann ersteinmal mit meinem kleinen ATMEGA16 auf das V-USB 
stürtzen und mich an den Beispielen versuchen und falls das in völliger 
Verzweiflung enden sollte - oder mehr Performance von Nöten ist - mir 
die ATMEL-USB Controller anschauen :)

MfG

Lucas

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 14 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.