Forum: Mikrocontroller und Digitale Elektronik AVR USB HID - Informationen gesucht!


von Lucas M. (usche)


Lesenswert?

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.

von Oliver J. (skriptkiddy)


Lesenswert?

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

von Rainer R. (Firma: Reusch Elektronik) (reusch)


Lesenswert?

Ohne hier viel Eigenwerbung machen zu wollen:
http://produkte.reworld.eu
Auf dieser Seite findest Du ein paar USB-AVR-Module (AVR-Controller mit 
integrierter USB-Schnittstelle). Für die Module U2DIL, U4DIL und U6DIL 
gibt es Beispiel-Quelltexte für USB-HID und Windows.

Gruß Rainer

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Und hier sind jede Menge Beispielprojekte für V-USB:
http://www.obdev.at/products/vusb/projects-de.html

Rainer Reusch schrieb:
> USB-HID und Windows

Korrekt programmierte HID Devices sollten auch unter Mac OS und Linux 
ohne Probleme laufen.

von Rainer R. (Firma: Reusch Elektronik) (reusch)


Lesenswert?

> 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.

von Oliver J. (skriptkiddy)


Lesenswert?

Rainer Reusch schrieb:
> Wenn es gut werden soll, ist daher einer Controller mit eingebauter
> USB-Engine (wie die USB-AVRs) in jedem Fall vor zu ziehen.

Für kleinere Bastelprojekte, wie das vom TO beschriebene, reicht doch 
V-USB mehr als aus.

PS. Bei mir lief V-USB immer zuverlässig.

Gruß Oliver

von Lucas M. (usche)


Lesenswert?

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

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.