¿Cuál es el número máximo de bytes que se pueden enviar a través de un puerto COM USB a serie de una vez?

1

Supongamos que alguien usa un hiperminal para enviar una cadena ASCII muy larga a un puerto COM. Este puerto COM se crea mediante el cable de puerto USB a serie FTDI. El cable utilizado es enlace .

¿Existe alguna limitación impuesta por el controlador UART para PC? Por ejemplo, Arduino UART tx buffer solo tiene 64 bytes.

¿Cuál es el número máximo de bytes que se pueden enviar a través de un puerto serie de PC de una sola vez?

    
pregunta user768421

3 respuestas

5

En USB de velocidad completa, el tamaño máximo de paquete es de 64 bytes.
En USB de alta velocidad, el tamaño máximo de paquete es de 512 bytes.

La mayoría de los convertidores USB / serie, incluido el suyo, utilizan la velocidad máxima.

Sin embargo, si está viendo la salida serial, el tamaño del paquete USB no importa, porque los paquetes USB pueden enviarse más rápido que la velocidad de la línea serial y se almacenan en búfer. Por ejemplo, si la PC envía 100 bytes, utilizará dos paquetes, pero lo que está viendo en el otro extremo, en la línea serie, es nuevamente un flujo continuo de 100 bytes.

Del mismo modo, si está enviando datos desde un Arduino, puede almacenar un nuevo byte de TX tan pronto como se envíe un byte anterior, por lo que el tamaño del búfer de TX realmente no importa. (Sin embargo, un tamaño de búfer más grande permite al búfer previo más datos, lo que permite una transmisión continua, incluso si el microcontrolador debe hacer otra cosa durante más tiempo).

Las PC, la mayoría de los microcontroladores y los convertidores USB / serie son lo suficientemente rápidos como para que el cuello de botella only sea la velocidad de la línea serial, por lo que nunca verá una brecha en los datos, independientemente de cómo Se transmiten muchos bytes.

    
respondido por el CL.
2

Hyperterminal es un programa de software específico de Windows, por lo que no creo que esto sea realmente un tema, también está en desuso, ya no se incluye con ninguna versión compatible de Microsoft Windows.

De todos modos, no hay limitación práctica. Configúrelo para hablar con un puerto COM y puede enviar un archivo de texto de casi cualquier tamaño (o un archivo binario a través de Xmodem y otros protocolos antiguos de los días santos de antaño). Si enviaste un archivo 2G a 9600 baudios, tomaría un mes o algo así. Nunca más.

    
respondido por el Spehro Pefhany
1

Tantos como los chips involucrados realmente pueden almacenar.

Retroceda 20 años: En aquel entonces, los módems se conectaban a una PC a través de un puerto COM. La "descarga" era básicamente un flujo de datos que solo estaba limitado por las tarifas telefónicas :-)

    
respondido por el Tom L.

Lea otras preguntas en las etiquetas