Forum: Mikrocontroller und Digitale Elektronik früher RS232 --- nun USB ??


von Daniel (Gast)


Lesenswert?

Hallo zusammen,

lang ists her, als wir einen Datenlogger für guten Freund gebaut haben.
Ein Mega8 liest div. Sensoren aus und gibt die Daten seriell an einen
Laptop zur Darstellung.
An diesem Beispiel würden wir uns gerne mit USB vertraut machen.
Ich frage mal ganz vorsichtig nach dem groben Vorgehen:
Daten werden seriell (aus UART des uC) an z.B den FDTI gegebn ??
Dieser gibt sie dann an den Rechner weiter ??
Wird der FDTI irgenwdie programmiert ??
Bei RS232 kann ich Byte für Byte "raussenden" ohne mit dem PC
"reden" zu müssen. Wie geht das bei USB ??
Habt ihr Links zu ähnlichen Projekten ??
Zu heiß die Materie, oder meint ihr man kann sich da einarbeiten ??
Schon klar, das Annehmen der Daten wird deutlich aufwändiger als bei
Verwendung von RS232.....ist jedoch auch nicht mein Part.
Daniel

von Tom (Gast)


Lesenswert?

Der FTDI Chip ist nichts anderes als ein USB-RS232 Konverter, wenn ein
Anwendungsprogramm mit der seriellen Schnittstelle klar kommt, dann
wird das auch mit dem Konverter klappen.

Tom

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Wenn Du einen FT232 oder ähnlichen Baustein verwendest, ändert sich
weder bei der Programmierung des Microcontrollers noch der des
auswertenden PCs irgendetwas.

Beide "sehen" nach wie vor eine serielle Schnittstelle.

Dafür muss nur der entsprechende Treiber auf dem PC installiert werden,
und es gibt im Timingverhalten gewisse Unterschiede, die mit der
Datenübertragungsstruktur von USB zu tun haben, aber bei den üblichen
seriellen Anwendungen selten stören.
Probleme gibt es bei sehr knappen Timings und der Übertragung sehr
geringer Datenmengen; soll beispielsweise der µC binnen 1 msec auf ein
empfangenes Datenbyte reagieren und binnen einer weiteren msec ein
Datenbyte an den PC zurücksenden, so wird das nicht klappen.

Der FT232 (oder ähnlich) wird anstelle der V24-Pegelwandler (max232
o.ä.) mit der UART des Microcontrollers verbunden; wird die neueste
Ausführung (FT232R) verwendet, so ist keine weitere Beschaltung des
FT232 erforderlich.

Auf der PC-Seite kann es sein, daß die durch den FT232 hinzugefügte
serielle Schnittstelle eine Schnittstellennummer erhält, die größer ist
als 4 - die PC-Software sollte schon in der Lage sein, damit
klarzukommen. Ist die Schnittstellennummer größer als 9, dann muss beim
Aufruf von CreateFile eine andere Syntax verwendet werden,
("\\.\COM10" statt "COM2") aber auch das ist seit sehr langer
Zeit in der entsprechenden Programmierdokumentation (Win32-API)
beschrieben.

von Daniel (Gast)


Lesenswert?

Aha, vielen Dank !!
Hört sich ja schon recht easy an.

Habe ich das richtig verstanden:
uC ---> Daten seriell an FTDI
FTD0I ----> Daten per USB an Treiber auf PC
Treiber -----> Daten an virtuellen Comport
Comport  ----> an Endanwendung
????

Gibt es dann für die gängigen OS jeweils den passenden Treiber zum FTDI
??

Daniel

von Montero (Gast)


Lesenswert?

Ja Treiber sind für eigentlich alle Betriebsysteme erhältlich.

http://www.ftdichip.com/FTDrivers.htm

von Black Friday (Gast)


Angehängte Dateien:

Lesenswert?

Ich verwende gerne den CP2102 von Silabs. Für den gibt es ein
Treiber-Construction-Tool und man kommt mit sehr wenigen Bauteilen
aus.
Im Anhang eine Testplatine, zusammen mit einem MAX3232. Zusammen bilden
sie einen kompletten RS232 - USB Umsetzer.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Den wesentlichen Vorteil des CP2102 -die geringe externe Beschaltung-
hat der FT232R jetzt auch, und obendrein ist der FT232R in
lötfreundlicheren Ausführungen zu bekommen, wo die Beinchen zwar ein
recht enges Rastermaß haben, aber wenigstens noch Beinchen sind.

Nicht jeder von uns lötet so wie "Black Friday", und Fehlersuche bei
solchen Lötstellen stelle ich mir ... spaßig vor.

Davon abgesehen ist es letzlich schnurz, ob FT232, CP2102 oder
Prolific-Sonstwas; alle kommen mit Treibern, die dem Betriebssystem
weitere serielle Schnittstellen verschaffen.

von Daniel (Gast)


Lesenswert?

Na suaber, dann werde ich das mal probieren.
Ohne diesen "virtuellen" Comport wird es wohl deutlich aufwändiger.
oder ?? Ich meine halt nicht den FTDI nutzen, sondern etwas
"Eigenes"
Daniel

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

O ja. Zwar gibt es sogar Lösungen, die ohne spezielle USB-Hardware
auskommen ("Igor"), aber die erfordern auf PC-Seite auch
entsprechende Treiber, verhalten sich dann entsprechend nicht wie
serielle Schnittstellen und sind entsprechend aufwendiger zu
programmieren.

Auch wenn dedizierte USB-Hardware (USB Device Controller oder ein µC
mit integriertem USB Device Controller) eingesetzt wird, sieht das
nicht anders aus. Zwar gibt es die Möglichkeit, einen der
Standard-USB-Treiber des Betriebssystems zu nutzen, in dem eine der
entsprechenden Standardgeräteklassen (HID, MSD etc.) implementiert
wird, aber auch das ist bedeutend mehr Aufwand.

von struberg (Gast)


Lesenswert?

warum verwendest du nicht einfach einen USB to RS232 converter um 6 EUR?

von René K. (king)


Lesenswert?

> Den wesentlichen Vorteil des CP2102 -die geringe externe
> Beschaltung- hat der FT232R jetzt auch,

Und der CP2102 funktioniert, im Gegensatz zum RL. Bei dem, was ich hier
so lese, scheint auch jeder andere Chip besser zu funktionieren als der
FTDI.

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.