FTDI FT2232 UART Verzögerung

Gast #1187958
Lesenswert?

Hallo!

Ich habe einen µC der über UART eine Anbindung an den FT2232 hat. Am PC 
verwende ich den D2xx Treiber und nicht den Virtual Comport Treiber. Der 
µC fungiert als loopback, d.h. der µC sendet sobald er ein Zeichen 
empfangen hat dieses sofort wieder an den FT2232 zurück.
Dies funktioniert fehlerfrei, jedoch mit einer sehr hohen Verzögerung. 
So vergehen ca. 300 ms zwischen Senden und Empfangen am PC.
Baudrate habe ich auf 19200 gesetzt, 8 Bits, 1 Stopbit, Parity None.
Latencytimer auf 2 ms und allgemeine Timeouts auf 500 ms. Daten lese ich 
vom FTDI, sobald der FTDI Treiber ein 
Eventhandle(FT_SetEventNotification) setzt.

Danke!
Gast #1188311
Lesenswert?

Hi,
Welche FIFOs meinst du, die Hardware FIFOs am FT2232 oder die 
Empfangspuffer im Treiber? Letzere sollten durch FT_SetUSBParameters 
beeinflussbar sein. Für die Hardwarefifos kenne ich nichts. Allerdings 
habe ich den Latencytimer auf 2 ms gesetzt. Dadurch sollte der FT2232 
auch kurze Pakete nach zumindest 2 ms zum PC schicken.

Lg
Gast #1188403
Lesenswert?

Die µC Seite würde ich einmal ausschließen, denn diese macht nichts 
anderes als RX Flag zu pollen und das empfangene Byte sofort wieder in 
den uart Puffer zu schreiben.
Am PC habe ich per FT_SetEventnotification ein EventHandle registriert 
und ein eigener Thread wartet bis das EventHandle im signaled state ist, 
prüft danach wie viele Bytes gelesen werden können und ließt diese ein.
Das hat bei mir auf einem anderen Board problemlos funktioniert - 
allerdings im FIFO-Modus und nicht im UART Modus des FTDIs.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren