Algunas dudas sobre el envío de datos a través del puerto serie de VC
1. Para la pregunta 1, su pregunta 2 es la respuesta, use el tercer parámetro .cbInQue de la función ClearCommError para obtener la cantidad de datos no leídos en el búfer.
2. Físicamente hablando, EV_RXCHAR se activará cuando llegue cada byte, pero después de todo, solo hay un bit de bandera. Cuando llegan varios bytes rápidamente, el bit de bandera se escribirá repetidamente. la cantidad de veces que se activa EV_RXCHAR es diferente de la cantidad de bytes recibidos. Si la velocidad de transmisión (frecuencia) de la otra parte es lenta, puede usar la función ClearCommError para obtener cuántos datos no se han leído en el búfer y leerlos de inmediato en función de este número. Si la frecuencia es alta, solo puede usar el hilo de monitoreo para leer continuamente los datos en el búfer hasta que no queden datos.
3. Esta es una cuestión de sincronización y asincronía. Si utiliza el método sincrónico, la otra parte transmite 1, y si no lo recibe, no transmitirá el segundo. el método asincrónico es diferente. Independientemente de si la otra parte los recibe o no, los datos se transmitirán. El método de transmisión utilizado depende de la aplicación de su proyecto.
4. El chip de protocolo agrega el bit de inicio, el bit de parada y el bit de paridad según el formato de comunicación que establezca. Si utiliza el protocolo serie estándar para recibir datos. Cuando se recibe, estos indicadores se borrarán, es decir, los datos son transparentes en el extremo receptor y en el lado del software, pero estos indicadores existen en la línea y se pueden ver claramente con un osciloscopio.
5. Generalmente, se utilizan protocolos de software, es decir, se agrega un encabezado de sincronización, volumen de transmisión, etc. al principio, y el receptor comienza a recibir datos útiles después de detectar el encabezado de sincronización.
6. Además, si se requiere un protocolo de enlace, se deben configurar EV_CTS, EV_CTS, etc. Estos indicadores se usan específicamente para controlar si los datos comienzan a transferirse; por supuesto, esto será difícil de agregar, dependiendo de si se puede usar su interfaz.
----, no sé si entiendo la respuesta. Si necesita más detalles, agrégueme en QQ [19226004] e indique el problema del puerto serie. proyectos y podemos comunicarnos.