Bastler schrieb:
> Ich würde nun gern bestimmen welche reale Datenrate
> wirklich übertragen wird.
Das hängt in erster Linie von dir und deiner Anwendung ab. Im
USB-Bereich wird grundsätzlich paketorientiert gearbeitet, häufig (aber
nicht immer) ist die Paketgröße 64 Bytes. Wenn du also volle Kanne Daten
sendest, so daß der Fifo im FTDI-Chip immer so einigermaßen gut gefüllt
ist, dann erreichst du eben die Datenrate, die aus deiner Baudrate
resultiert. Wenn du hingegen Lücken läßt und dabei der Fifo im FTDI-Chip
leer läuft, dann gibt's Einbrüche in der realen Übertragung - aber das
sollte dich eigentlich nicht scheren, denn das USB-interne Tempo ist
allemal größer als die üblichen Baudraten.
Ärgerlicher wird es, wenn jemand sein System bidirektional mit Warten
organisiert, also wenn dein uC erstmal ein Byte lesen will, dann ein
Byte als Antwort sendet, daraufhin ein nächstes Byte lesen will und so
weiter. Dann macht die USB-Verbindung weithin nix, bei nächster
Gelegenheit (nach ner Millisekunde oder noch später) wird nur ein
lumpiges Byte im (meist) 64 Byte großen Block übertragen und während
dieser Zeit wartet sich das Programm im PC die Beine in den Bauch. Wenn
es dann endlich die Antwort hat, sendet es wieder nur 1 Byte, wieder
unausgenutzter Block, diesmal Warten auf Seite des uC ... usw.
Da macht es keinen Unterschied mehr, ob man seriell mit 4800 Baud
verkehrt oder mit 56K Baud. Also: solch einen Warte-Hin-Warte-Her
Betrieb vermeiden und Datenströme im uC puffern.
W.S.