Forum: Mikrocontroller und Digitale Elektronik FTDI FT232RL Übertragungsfehler


von P. P. (phil82)


Lesenswert?

Hallo Zusammen,

ich habe ein kleines Programm geschrieben das Infrarot Signale empfängt, 
decodiert und diese über UART an den PC weiterschickt.
Das Programm ist soweit fertig und funktioniert.
Zum Test ist das ganze bis jetzt über einen MAX232 zum PC geschickt 
worden.
Da die neueren PC´s leider nicht mehr alle über eine serielle 
Schnittstelle verfügen soll USB benutzt werden. Dazu habe ich mir das 
UM232R Modul von FTDI bestellt.
Seit dem dieses Modul angeschlossen ist kommt es sporadisch zu 
Übertragungsfehlern die ich mir nicht erklären kann.
Ca. fünf mal ist die Übertragung ok und dann kommen ein oder zwei 
Übertragungen die nicht zu gebrauchen sind. Danach ist erstmal alles 
wieder ok.

Getestet habe ich bis jetzt mit einem ATTINY45 und Software UART und 
einem ATMEGA88 mit Hardware UART. Die Baudrate ist auf 9600 8N1 
eingestellt.

Vielleicht hat ja jemand eine Idee dazu.

Danke und Gruß
Phil

von Gast (Gast)


Lesenswert?

Da zum Aufbau nichts steht rate ich mal: Quarz verwenden.

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Der FT232R benötigt keinen Quarz.

von Gast (Gast)


Lesenswert?

Der mega und tiny auch nicht?

von Michael H* (Gast)


Lesenswert?

spannungsversorgung per usb? ordentlich entstört?

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

>Der mega und tiny auch nicht?

Der FT232RL kann den internen Takt nach außen leiten, extra für kleine 
Controller. Und der FT232 kann auch eine stabile 3.3V-Spannung mit 
einigen 10mA bereitstellen. Muß man halt anschleßen, daß es 
funktioniert.

von Christian R. (supachris)


Lesenswert?

Mit Girder? Hatte ich da auch, mit selbst genauten RC5-Empfänger. Dachte 
erst es liegt an meiner Firmware, aber Girder war schuld. Ein bisschen 
Abhilfe schaffte das herunter setzen der Puffer im FTDI Treiber, aber 
richtig gut gehts nur mit EventGhost. Wenn das auzuschließen ist, könnte 
wirklich ein Baudratenproblem vorliegen. Dass der FT232R den Takt 
ausgeben kann bedeutet ja nicht, dass der synchron zu den 
Baudraten-Takten ist, dein Atmel müsste schon am besten einen 
baudratenquarz haben.

von Falk B. (falk)


Lesenswert?

@Christian R. (supachris)

>wirklich ein Baudratenproblem vorliegen. Dass der FT232R den Takt
>ausgeben kann bedeutet ja nicht, dass der synchron zu den
>Baudraten-Takten ist,

Zu was soll er denn sonst synchron sein? Denkst du, die bauen aus langer 
Weile noch ein paar Oszillatoren in den FTDI?
Kaum. Der ausgegebene Takt ist direkt vom 48 MHz Oszillator abgeleitet, 
und damit ist die Übertragung zwischen AVR ud FDTI wasserdicht, selbst 
wen der Takt weglaufen würde.

MFG
Falk

von Christian R. (supachris)


Lesenswert?

Ja, war vielleicht falsch formuliert. Wenn beide auf einem ganzzahligen 
Teiler der 6/12/24MHz als Baudrate laufen, dann geht das sicher 
wasserdicht. Wenn aber der FT232 meinetwegen die 9600 Baud mit einem 
anderen Fehler erzeugt als der Atmel da dran, dann kann´s schon 
passieren, dass da was nicht zusammen passt. Denke ich aber wird in der 
Praxis nicht auftreten.

von P. P. (phil82)


Lesenswert?

Hallo Zusammen,

erstmal danke für die Ideen.

Habe jetzt noch ein wenig getestet und dem Mega88 einen Quarz verpasst.
Das hat keine Besserung gebracht.
Der Tip von Christian den Puffer im Treiber herunter zu setzen hat 
deutlich etwas gebracht. Habe die kleinst möglichen Werte eingestellt.
Jetzt kommt auf ca. 50 Übertragungen noch ein oder zwei Fehler.
Eventghost geht auch prima.

Das nächste Problem ist, dass der Empfänger auch unter Linux ordentlich 
laufen soll. Erkannt wird er aber die Funktionalität ist wie zuvor unter 
Windows eingeschränkt.

Hat jemand mit dem Linux Treiber schon Erfahrungen gemacht?
Wäre ja schön wenn man die Einstellung auch machen könnte.

Danke und Gruß
Phil

von Michael H* (Gast)


Lesenswert?

vermutlich synchronisiert er sich dadurch öfters.
meine erneute vermutung dazu: deine spannungsversorgung ist grottig.

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.