FT245R Datenrate zum PC zu langsam

OP #1775941
Lesenswert?
• ▲
▼
Hallo,

mein System:
Pc mit c# programm <-> ft245r <-> cpld

ich verwende den ftd2xx treiber und betreibe den ft245r im normalen
fifo-mode, also nicht bit-bang.

das cpld macht nichts anderes, als immer, wenn txe# vom ft245r low ist,
das wr signal kurz H zu pulsen, um den internen buffer des ft245r zu
beschreiben. alle timings sind eingehalten.
soweit so gut, nur wenn ich mit meinem c# programm den buffer des
treibers zyklisch abfrage, sind dort immer nur ca. 2kbyte daten pro
sekunde drinnen. also ist mein bottleneck der transfer vom ft245r zum
pc.
schaue ich mir wr und txe# mit dem logic-analyser an, so werden nach dem
start rasch ca. 250 byte in den ft245r reingeschrieben, aber dann nur so
ca. 2 byte pro 1 ms (usb - time-slot???) - und txe# ist meistens H, was 
ja bedeutet, dass die übertragung vom internen buffer des ft245r zum pc 
hin ein bottleneck ist.

Komischerweise habe ich in die andere richtung (pc --> ft245r --> cpld) 
keine probleme und erreiche, bei entsprechender einstellung des 
driver-buffers bis zu 1Mbyte/s.


Wer hat eine Idee?
Angehängte Dateien:
Gast #1776141
Lesenswert?
• ▲
▼
Ohne den relevanten Code Ausschnitt wird dir keiner helfen können.
Normalerweise sendet der FT245 sofort an den PC weiter wenn WR high ist.

PS: USB hat von Hause aus Latenz Zeiten von ich glaub 30 ms.
Gast #1776182
Lesenswert?
• ▲
▼
> Normalerweise sendet der FT245 sofort an den PC weiter wenn WR high ist.
Richtig, aber:

> wenn ich mit meinem c# programm den buffer des treibers zyklisch abfrage
Ich denke, du musst Ereignisbasierend arbeiten.

Ralf
OP #1777368
Lesenswert?
• ▲
▼
Ralf schrieb:

>
>> wenn ich mit meinem c# programm den buffer des treibers zyklisch abfrage
> Ich denke, du musst Ereignisbasierend arbeiten.
>
> Ralf

Hallo Ralf,
bitte was meinst du mit Ereignisbasierend?
ich polle den buffer des treibers alle 1sec. und dann sind dort nur 2000 
byte drinnen, die ich dann rauslese; polle ich alle 100ms, so bekomme 
ich 200 byte... (bei 64kb max. buffergrösse also kein problem)

lg
yum

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

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.