Est un débit de 115 200 ou plus élevé possible?

Lors de l'exécution de certains tests avec un FT232R USBtoRS232 Puce, qui devrait être capable de gérer des vitesses jusqu'à 3 Mbaud, j'ai le problème que mon débit réel n'est que d'environ 38 kbaud ou 3,8 KO/s.

J'ai cherché sur le web, mais je ne pouvais pas trouver toutes les données comparables, de prouver ou de réfuter cette limitation.

Alors que je suis à la recherche plus loin dans la présente, je voudrais savoir, si quelqu'un ici a données comparables.

J'ai testé avec mon propre code et avec cet outil ici:

http://www.aggsoft.com/com-port-stress-test.htm

Des paramètres serait de 115 200, 8N1, et 64 octets de données par paquets.

Je me serais attendu à de tels résultats:

À 115200 baud -> effectivement 11,520 byte/s ou 11,52 KB/s

À 921600 baud -> 92,16 KB/s

J'ai besoin de confirmer une vitesse minimale de 11,2 KB/s, une meilleure vitesse d'environ 15 à 60 KO/s.

Basé sur la feuille de données, ce ne devrait pas être axé sur le problème de la réalité, je suis coincé à 3,8 KB/s - du moins pour le moment.


Oh mon dieu, trouvé une assez bonne idée de la - mon taux de transfert dépend fortement de la taille des paquets. Ainsi, alors que l'aide de 64 octets des paquets, je me retrouve avec 3,8 KB/s, en utilisant 180 octets des paquets, elle a un peu des moyennes autour de 11,26 KO/s et la lumière principale est allé, quand j'ai vérifié la vitesse de 1 byte packets -> autour de 64 octets/s!

L'ajout de maths à elle -> 11,52 KB/s divisé par 180 est égal à 64 octets/s. Donc, fondamentalement, la vitesse s'adapte à la taille en octets. Est-ce exact? Et pourquoi est-ce?

  • La façon dont le pilote USB pour cette puce met octets dans des paquets USB est un solide détail d'implémentation. Poste à electronics.stackexchange.com pour trouver des utilisateurs qui ont utilisé cette puce avant.
  • Dans un port série, il n'existe pas de "paquets", vient de flux d'octets. La différence que vous voyez, à cause du temps perdu à cause de la surcharge dans les appels d'API à votre pilote de série, pas la vitesse du port lui-même. Si vous faites des appels avec de petites quantités de données, la charge est plus grande. Si vous faites un appel depuis qui offre un énorme tampon, puis le numéro de série du matériel est toujours plein et maximise le débit
  • Vous êtes en assimilant le débit en bauds avec le débit, mais il est presque impossible d'atteindre les 100% d'utilisation du canal de données. Le raccordement d'un " champ d'application de la fil. Vous pouvez réellement mesurer le débit en bauds par la largeur de la bits. Vous ne verrez pas de "ralentissement", mais voir les morts ou les périodes d'inactivité entre char images. En augmentant le temps mort entre les images est ce que vous appelez "vitesse lente", mais il a réduit le débit.
  • ouais, j'ai utilisé le terme de "paquets" un peu trompeur - ce que j'ai essentiellement ement, par la présente, sont les appels à la fonction qui envoie mes données. Je suis en train de travailler sur l'amélioration de mon installation et d'ajuster mon programme pour envoyer des gros blocs de données. merci pour les bons conseils 😉
  • poster sur de l'électronique.stackexchange? de SOI qui est tristement célèbre pour ridiculiser ces questions. Je ne recommanderais pas de n'importe qui sans un EE degré de poser des questions là.
InformationsquelleAutor Jook | 2012-12-11