FT245 und Receive Buffer Timeout

Gast #3420965
Moin,
sagt mal: was hat es mit dem Receive Buffer Timeout auf sich?
Laut Datenblatt wird der Receive Buffer nach 16 ms (Standard) geleert.
Aber wonach denn? Wann startet der Timer ueberhaupt?
Sobald ich das erste Byte auslese?

Habe folgenden Testaufbau:
8x LED an den Datenleitungen
1x LED an RXF#
1x Taster an RD# gegen GND

Nun sende ich vom PC eine Zeichenkette an den FT245RL:
$ echo "Hallo Welt" > /dev/ttyUSB0

dann geht die RXF# LED an (so soll das sein) und zeigt mir an, dass da 
was im Puffer zur Abholung bereit liegt.
Ich druecke feierlich auf den Taster, halte ihn gedrueckt, und kann ein 
einwandfreies binaeres "H" an den Daten-LEDs ablesen (das funktioniert 
auch prima mit jedem anderen Zeichen, also die Kommunikation zwischen PC 
und FT245 funktioniert).
Dann lasse ich den Taster los, die Daten-LEDs erloeschen, die RXF# LED 
bleibt an (der Puffer ist also noch nicht leer).
Nun druecke ich den Taster erneut und erwarte ein "a", bekomme aber das 
letzte Zeichen, also ein "t".

Aber: "manchmal" bekomme ich zufaellig auch die anderen Zeichen der 
Zeichenkette. Dieses Verhalten kann ich aber im Moment nicht gezielt 
rekonstruieren.

Ich habe deswegen diesen ominoesen Timeout in Verdacht. Das widerspricht 
sich aber, weil ich ja manchmal auch andere Zeichen aus der Zeichenkette 
auslesen kann.

Hat da jemand eine Erklaerung im Zusammenhang mit dem Timeout?
Gast #3422536
Ich mag mich auch täuschen, aber ich glaube vor langer Zeit gelesen zu 
haben, dass der Timeout nicht im IC, sondern PC-seitig mittels Treiber 
festgelegt wird.
#3422568
> Aber: "manchmal" bekomme ich zufaellig auch die anderen Zeichen
> der Zeichenkette. Dieses Verhalten kann ich aber im Moment nicht
> gezielt rekonstruieren.

> 1x Taster an RD# gegen GND

Kann es sein, dass dein Taster ab und an mal prellt?
Gast #3425102
Karl Heinz schrieb:
> Kann es sein, dass dein Taster ab und an mal prellt?

Um das auszuschliessen habe ich den Taster mittlerweile durch eine 
astabile Kippstufe mit 1 Hz ersetzt. Die Daten werden jetzt automatisch 
aus dem Puffer an die Daten-LEDs rausgetaktet.

Zum testen habe ich mit $ cat lauflicht > /dev/ttyUSB0 eine Bytefolge
"01 02 04 08 10 20 40 80 (hex)" an den FT245 gesandt. Trotzdem hat 
dieser immer wieder das ein oder andere Byte verschluckt, teilweise nur 
jedes zweite Byte angezeigt

Jetzt kommt der Knüller: habe beim Umverdrahten den lt. Datenblatt 
geforderten 4,7µF Elko versehentlich von der Stromversorgung abgelötet 
und jetzt läuft der Mist. Warum? Kann ich mir nicht erklären! Jedenfalls 
wird das Lauflicht jetzt ohne Aussetzer abgespielt.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 12 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.