Kampis Elektroecke

AT90USB1287 – USB

Einige Mikrocontroller, wie der hier verwendete AT90USB1287, verfügen über ein eingebautes USB-Interface, mit dessen Hilfe der Mikrocontroller als USB-Device oder als USB-Host fungieren kann. Dies ermöglicht es dem Anwender den Mikrocontroller per USB z. B. mit einem Computer oder einen USB-Stick zu verbinden.

In diesem Teil des AVR-Tutorials zeige ich, wie ein USB 2.0 Stack aufgebaut ist und auf einem AT90USB1287 Mikrocontroller implementiert werden kann. Auf Grund der Komplexität vom USB werde ich das Tutorial in mehrere Teile unterteilen und in jedem Teil einen spezifischen Ausschnitt des USB-Stacks erörtern.

Für ein tiefer gehendes Verständnis des USB-Protokolls sind die folgenden Dokumente hilfreich:

Und zum Debuggen, bzw. Analysieren der Kommunikation helfen diese Tools:

Das komplette Projekt ist in meinem GitHub-Repository zu finden.