Forum: Mikrocontroller und Digitale Elektronik Einfaches IO-Beispiel für AT90USB1287 mit LUFA


von Jens E. (jeggie)


Lesenswert?

Hallo,

ich beschäftige mich nun seit einiger Zeit mit diesem Controller.
Habe schon einige Beispiele verschiedener Quellen ausprobiert, wobei ich 
das LUFA-Projekt am interessantesten finde.

Allerdings setzen alle Beispiele auf einem hohen Level an und sind auf 
Grund starker Verschachtelung (Objektorientiert) schwer zu durchschauen.
Zudem sind fast alle Beispiele der HID-Klasse oder der als Wandler nach 
RS232.

Was ich bauen möchte ist ein einfaches IO-Modul mit digitalen 
Ein-/Ausgängen und analogen Ein-/Ausgängen (bzw. PWM).

Ich habe hierzu ein recht vielversprechendes Beispiel namens 
TestAndMeasurement im LUFA-Ordner gefunden. Dies scheint jedoch noch 
nicht ganz fertig zu sein und entsprechende Treiberbeispiele für den 
Host sind keine Enthalten.

Hat sich Jemand schonmal mit dem Thema beschäftigt, ohne dabei eine 
Geräteklasse zu verwenden?

Anm.: Ich habe mir ein recht aufschlussreiches Buch zum Thema USB 
ausgeliehen (Messen, Steuernund Regeln mit USB). Allerdings stammt das 
noch aus Windows 98-Zeiten und ist, was Treiber und PC-Anwendungen 
betrifft, entsprechend veraltet.

Gruß
Jens

von Fabian O. (xfr)


Lesenswert?

Was soll es denn am Ende können? Willst Du wirklich einen eigenen 
Windows-Treiber für das Gerät schreiben? Wenn ja, weshalb?

Es ist viel einfacher, per USB eine virtuelle serielle Schnittstelle 
anzubieten. Dazu gibt es in der LUFA fertige Beispiele und man braucht 
keinen Treiber. Du musst Dir nur ein Protokoll zum Lesen und Schreiben 
der Ein- und Ausgänge ausdenken (textbasiert oder binär). Die 
PC-Anwendung öffnet einfach nur den COM-Port und liest/schreibt die 
Daten. Über USB muss man dabei fast nichts wissen.

von Jens E. (jeggie)


Lesenswert?

Hallo,
Danke für die Antwort.
Etwas "besonderes" soll es nicht können. Es ist ein einfaches IO-Modul.

Was den Wandler nach COM betrifft:
-Horizonterweiterung, denn den die Wandlermethode kenne ich vom Arduino 
zu genüge. Das wird irgendwann langweilig.

-USB könnte ein potentielles Thema meiner Abschlussarbeit werden. Da das 
zu meinem Studiengang aber fachfremd ist, kann Erfahrung mit USB nicht 
schaden.

Gruß
Jens

von Karlheinz (Gast)


Lesenswert?

Hallo,

Jens E. schrieb:
> Was den Wandler nach COM betrifft ...
> Das wird irgendwann langweilig.

Ich empfehle dir zur Abwechslung die Beispiel-Programme von "Teensy", 
z.B.
http://www.pjrc.com/teensy/rawhid.html
die bestehen meist nur aus 2 Files (USB bezogen) und sind gut 
dokumentiert und damit leicht zu verstehen.
Auch Anweisungen (bzw. Beispielcode) für den PC fehlen nicht.

Der Code dazu stammt vielfach aus LUFA oder hat dort Eingang gefunden!
(läuft auch auf dem AT90USB1287)

Gruss ...

von jeggie (Gast)


Lesenswert?

Hallo  Karlheinz,

werde mir die Codes morgen mal zu Gemüte führen.
Aber so wie ich das sehe basieren alle Beispiele auf der MIDI- oder 
HID-Klasse. HID scheint eh besonders beliebt zu sein.


Gruß
Jens

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.