Hmmm,
irgendwie kommen wir nicht auf einen grünen Zweig.
Also versuch ich es ander zu erklären. Es gibt mehrere Möglichkeiten der Kommunikation zwischen PC und AVR:

1) [ PC <-> COM-Port (RS232)] <->MAX232(Spannungs-Pegelwandler)<-> [USART (auch RS232) <-> AVR]

Der PC besitzt einen COM-Port mit dem er im RS232 Standard mit anderen Geräten kommunizieren kann. Diesen Port kannst du (über einen MAX232) direkt mit dem AVR verbinden. Die meisten AVRs besitzen einen sog. USART (das ist das Gegenstück zum COM-Port am PC) mit dem der AVR die Daten vom PC empfangen kann. Die Verbindung geht in beide Richtungen.

2) [PC<->USB-HOST] <-> [USB nach RS232 Wandler (FTDI oder AVR-CDC)<->virtueller COM-Port] <-> [USART<->AVR]

Der PC bestizt eine USB-Schnittstelle, die von einem sog. USB-Host Controller gesteuert wird. (nur zur Info... nicht weiter interesannt)
An der USB-Schnittstelle kannst du einen USB nach RS232 Wandler (z.B. einen FTDI-Chip) anschließen, der dann einen virtuellen COM-Port zur verfügung stellt. (Virtuell bedeutet, daß der COM-Port nicht physikalisch im PC ist) An diesem externen COM-Port kannst du nun wie bei der ersten Möglichkeit den AVR anschliessen.

3) [PC<->USB-Host]<->[GPIO<->AVR]
Diese Möglichkeit scheidet für dich aus, da du hierbei die OBDEV-Firmware ändern müsstest. Du kannst nämlich den AVR direkt, über die General Purpose IOs (also die normalen IO-Pins am AVR) an den USB-Bus hängen und die Software mit dem USB-Host reden lassen. Der Datenaustausch erfolgt dann über sog. Deskriptoren. Alle Projekte bei OBDEV nutzen diese Möglichkeit... einige bieten aber fertige Brücken zwischen USB und einer anderen Standardschnittstelle an (halt RS232 beim AVR-CDC).


Ich hoffe du konntest das jetzt etwas besser verstehen.

Gruß,
SIGINT