Forum: Mikrocontroller und Digitale Elektronik AT90USB als Erstaz für UART-Bridge ?


von Jakob (Gast)


Lesenswert?

Hallo zusammen,

ich kann mir der Verwendung eines Atmel AT90USB Controllers anstatt 
eines Atmega nicht eine UART-Bridge zum Anschluss an die serielle 
Schnittstelle (virtuelles Com-Port) sparen, oder ?

Danke,
Jakob

von Floh (Gast)


Lesenswert?

Jakob schrieb:
> ich kann mir der Verwendung eines Atmel AT90USB Controllers anstatt
> eines Atmega nicht eine UART-Bridge zum Anschluss an die serielle
> Schnittstelle (virtuelles Com-Port) sparen, oder ?

Warum sollte das nicht gehen? du brauchst nur die entsprechende Firmware 
auf dem Controller, z.B. teensy
(http://www.pjrc.com/teensy/index.html)

von Jakob (Gast)


Lesenswert?

Danke für die schnelle Antwort,
ich muss eigentlich nur ein paar Sensordaten an ein Terminalprogramm 
senden, und verwende bisher eben einen Atmega48, schreibe die Daten in 
den Uart, und ein CP2102 UART-USB-Bridge sendet es an den PC.

Würde es mit dem AT90USB also so funktionieren, dass ich die Daten 
genauso in den UART schreibe, und die Daten dann Rechner auf der 
seriellen Schnittstelle ankommen ?

Jakob

von Max (Gast)


Lesenswert?

http://www.fourwalledcubicle.com/LUFA.php

da ist in den bsp. sogar ein cdc-command-receiver dabei.....

von Jakob (Gast)


Lesenswert?

Was heißt cdc-command-receiver ?
Im Terminalprogramm wähle ich ja den COM-Port und somit mein Gerät aus 
(z.Bps. COM8).
Jetzt muss ich den AT90USB anweisen über die Software anweisen, dass er 
auf z.Bsp. COM 8 auf Kommando sendet ?

von Karlheinz (Gast)


Lesenswert?

Hallo,

Jakob schrieb:
> Was heißt cdc-command-receiver ?

Du hast das noch nicht ganz auf die Reihe gebracht!


Du programmierst deinen AT90USB als "USB-DEVICE" mit den besonderen 
Eigenschaften der CDC (Comunication Device Class).
Das hat bis hierher nichts mit dem PC zu tun.

Bei der ersten Anmeldung deines AT90USB-DEVICE am PC brauchst du jetzt 
(bei windows) ein *.inf-File und ein *.sys File. Das *.inf File musst du 
selber schreiben (oder irgendwo abschreiben) und für das *.sys File (dem 
eigentlichen Treiber) benützt du für die "CDC" usbser.sys (von 
Mikrosoft).

Dieser Treiber legt dir dann bei jeder Anmeldung des USB-CDC-DEVICE eine 
virtuelle serielle Schnittstelle (z.B. com8) im PC an die du dann wie 
eine normale serielle Schnittstelle benutzt.

Als Beispiel rate ich dir zu
http://www.pjrc.com/teensy/

Das ist auch alles in LUFA enthalten aber für einen Anfänger doch zu 
kompliziert.
Die Beispiele von Teensy (in der "code library") sind ausgereift und 
bestens erklärt.

Gruss Karlheinz

von Bad U. (bad_urban)


Lesenswert?

Im Betrieb ist das mit der virtuellen Schnittstelle eine feine Sache.
Aber bedenke, dass dazu schon der USB-Code auf dem uC laufen muss.
Für so Dinge wie Debug-Ausgaben beim Start brauchst Du dann trotzdem 
noch ne "normale" serielle Schnittstelle.

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.