Forum: Mikrocontroller und Digitale Elektronik AVR-CDC Terminal


von Trunes P. (trunes)


Lesenswert?

Hallo,

Ich habe mir folgendes USB-Device nachgebaut:
http://www.recursion.jp/avrcdc/
(mit AT-Mega8)

Mein PC erkennt das USB-Device und erstellt im Geräte-Manager einen
virtuellen Com-eintrag.

Wie kann ich nun jedoch mit dem Controller kommunizieren?

-> Geschieht dies mit der Funktion:
uchar usbFunctionWrite( uchar *data, uchar len )

Wenn ja wo muss ich diese einbinden?

MFG Trunes

von Sigint 112 (sigint)


Lesenswert?

Hallo Trunes,
   du hast dir die Antwort doch schon selbst gegeben: Es wird ein 
virtueller COM-Port erstellt, ueber den du mit dem Device reden kannst. 
Es handelt sich hier um ein "Communication Device Class" Geraet bei dem 
du dich nicht um den USB-Teil (von der PC-Seite aus) nicht kuemmern 
must.

Gruss,
  SIGINT

von Trunes P. (trunes)


Lesenswert?

Hallo,

Wenn ich jedoch den Hyperterminal öffne und tasten drücke bekomme ich
vom µC keine meldung...
Der Cursor des Hyperterminals bleibt auf der selben stelle stehen!
Meiner Meinung nach müsste ich dann aber vom µC Daten empfangen oder 
verstehe ich das falsch?

von holger (Gast)


Lesenswert?

>Meiner Meinung nach müsste ich dann aber vom µC Daten empfangen oder
>verstehe ich das falsch?

Ja. Verbinde mal RxD und TxD dann kriegst du vieleicht ein Echo.

von Trunes P. (trunes)


Angehängte Dateien:

Lesenswert?

Hallo,

Wie sollte ich RXD und TXD verbinden?
Die Pins RXD und TXD am µC?
Verwende folgende Schaltung:

von holger (Gast)


Lesenswert?

>Wie sollte ich RXD und TXD verbinden?

Mit ner Mullbinde. Mein Gott! Mit Draht?

>Die Pins RXD und TXD am µC?

Wo denn sonst?

von Trunes P. (trunes)


Lesenswert?

Das funktioniert leider nicht...
Ich verbinde PIN2 mit PIN3 empfange leider nichts...

Laut http://www.recursion.jp/avrcdc/
>You can control port bits by sending simple text commands via terminal >software 
or from your own program.
sollte es ohne verbinden von RXD mit TXD funktionieren!

von Hugga Bugga (Gast)


Lesenswert?

Du kannst mit dem tiny45 nicht kommunizieren, der wandelt nur USB in 
RS232 um, wie ein Handykabel

von holger (Gast)


Lesenswert?

>sollte es ohne verbinden von RXD mit TXD funktionieren!

Ja, da ist doch eine Tabelle mit den Kommandos auf der Seite.

Willst du von PINB lesen sendest du

PINB ?

und drückst die Enter Taste.

von Trunes P. (trunes)


Lesenswert?

>Ja, da ist doch eine Tabelle mit den Kommandos auf der Seite.

>Willst du von PINB lesen sendest du

>PINB ?

>und drückst die Enter Taste.

Das versuche ich gerade, leider werden mir weder Zeichen angezeigt noch 
bekomme ich einen Status zurückgeliefert...

von Sven1277 (Gast)


Lesenswert?

Hallo,
hatte das gleiche Problem !

Habe RXD und TXD an meinen ATMEGA16 angeschlossen (UART). Das
Programm sollte jede Sekunde "Hallo" senden.

Mit HyperTerminal konnte ich auch connecten. Doch leider habe ich
nix gesehen.
Mit meinem anderen Converter (Seriall+MAX232) ging es aber.

Hatte das Problem einfach nicht gefunden und auch nix im Internet.

Irgendwann habe ich mir die alte Schaltung angesehen vom 27.01.2008 auf
der Internetseite von http://www.recursion.jp/avrcdc/.

Eigendlich wollte ich die alte Firmware probieren und nur Prüfen ob die 
Schaltung vom 25.08.2008 gleich ist.

Und da ist mir aufgefallen das auf der alten Schaltung RxD, TxD und GND 
als Ausgang gezeichnet ist.
Aber auf der neuen Schaltung nur RxD und TxD.
Nun hab ich einfach mal einen  Draht von avr-cdc-GND zum ATMEGA16-GND 
gehalten.

Und jetzt gehts :)

Also noch zusätzlich GND (minus) muss angeschlossen werden. Naja ist ja 
auch irgendwie klarr. LOL

Ich hoffe ich konnte helfen :)

von Sigint 112 (sigint)


Lesenswert?

@Trunes: Du hast dir also das CDC-IO gebastelt und nicht das AVR-CDC...
soweit, so gut. Dann oeffne mal den virtuellen COM_Port mit Hyperterm 
und tippe das "@" Zeichen ein und dann die Eingabetaste (Enter)... wenn 
dann "cdc-io" angezeigt wird funktioniert die Schaltung. Wenn nichts 
angezeigt wird hast du irgendwas falsch gemacht.

von Trunes P. (trunes)


Lesenswert?

@ Sven1277
>Und da ist mir aufgefallen das auf der alten Schaltung RxD, TxD und GND
>als Ausgang gezeichnet ist.
Verstehe ich leider nicht...
Der Pin GND des Kontrollers muss IMMER mit GND verbunden sein ?!?

@ Sigint 112
Wenn ich dies versuche bekomme ich leider keine Meldung...

MFG Trunes

von Metulski (Gast)


Lesenswert?

Hallo,

wurde der Fehler gefunden? Ich verzweifel auch schon an dem CDC IO. Bei 
mir wird nicht einmal der virtuelle Com Port eingerichtet??? Beim 
Einstecken erscheint zwar unbekanntes USB Device entdeckt aber den 
Treiber kann ich nicht manuell installieren, da meint mein WinXP es kann 
nicht fortfahren "Fortsetzung nicht möglich ... alter Treiber wird 
beibehalten". Im Geratemanager habe ich dann im USB Controller immer ein 
unbekanntes Gerät??

Falls das schon jemand gelöst hat bitte meldet euch mal!

Dankeschön!

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.