captura datos sin procesar en el puerto COM

10

Tengo un dispositivo de transmisión Bluetooth y mi PC (Windows 7) está conectada y configurada como si estuviera conectada a través de un puerto serie RS232 (COM4). ¿Cómo puedo capturar los datos sin procesar transmitidos por el dispositivo Bluetooth o, de manera equivalente, los datos sin procesar recibidos en COM4?

    
pregunta user11395

6 respuestas

9

Puede utilizar un programa de terminal estándar para capturar los datos en diferentes formatos. Sugiero usar Terminal de Bray , ¡es realmente fácil y tiene muchas opciones!

¿O desea capturar e interpretar los datos en algún tipo de aplicación propia?

    
respondido por el Evert
2

La mejor solución que he encontrado, aunque un poco burda, es Tera Term enlace .

Bray's no juega bien con Windows 8. Si bien es imposible saber qué es exactamente lo que está haciendo sin la fuente, parece que se está haciendo una suposición acerca de la ubicación de una configuración de registro.

portmon tampoco me funcionó en Windows 8.

    
respondido por el jkschneider
2

Mi emulador de terminal favorito personal para la depuración es RealTerm que tiene una buena variedad de opciones de visualización para sistemas integrados. Tanto RS-232 como TCP / IP funcionan bien con Windows 7 x64 e inferior (no lo he intentado con Win 8, pero no tengo ninguna razón para pensar que no funcionaría). Algunas características que me parecen especialmente útiles son:

  • Vista de datos ASCII / HEX
  • Los archivos de captura pueden incluir marcas de tiempo
  • Hay una forma fácil de enviar secuencias de datos binarios
  • Los pines de control de flujo del hardware pueden ser fácilmente monitoreados / cambiados

También hay muchas otras opciones para I2C, SPI, Dallas 1-wire y GPIB. Personalmente no he usado esas funciones, pero hay un buen resumen en la página de SourceForge arriba. Aquí hay una captura de pantalla de la vista principal de la pestaña de visualización:

    
respondido por el PeterJ
1

También recomendaría bray, si no estás seguro de la velocidad en baudios, abre el administrador de hardware, navega a los puertos COM y selecciona las propiedades, pero no siempre son precisos.

    
respondido por el s3c
1

Hay portmon : una herramienta sysinternals que actúa como un enlace de datos para los puertos COM.

    
respondido por el Axeman
1

Dependiendo de sus requisitos exactos, puede ser útil usar un microcontrolador que pueda capturar y marcar la fecha y hora y luego reenviarla a la PC. Los UART que se encuentran históricamente en las PC típicas solo han podido registrar información precisa de tiempo o capturar datos de 9 bits haciendo que el procesador tome cada byte a medida que llega, sin almacenamiento en búfer; Los sistemas operativos y controladores posteriores generalmente no están equipados para hacer eso, y los chips UART a USB no tienen esperanzas en ese sentido. Si su PC puede recibir datos al doble de la velocidad de datos deseada, puede hacer que un microcontrolador reciba bytes de datos y, por cada byte, envíe dos bytes. El primer byte tendría el MSB establecido, informaría el MSB (o dos MSB's si 9 bits) de los datos entrantes en el (los) siguiente (s) bit (s), y utilizaría los 5 (o 4) bits inferiores para informar la cantidad de tiempo (0). -30 o 0-14) desde la mitad del bit de parada del byte anterior (medido en unidades de, por ejemplo, un bit de tiempo). El segundo byte tendría el MSB limpio y contendría los 7 bits de datos restantes. Cuando no se están transmitiendo datos, los caracteres de estimulación FF se enviarían cada 30 (o 14) tiempos de bit. El software que recibe estos informes, por lo tanto, podría reconstruir de manera muy precisa (dentro de un tiempo de bit) la sincronización exacta de los datos entrantes. Si la velocidad de datos que alimenta al PC es cuatro veces mayor que la velocidad de datos que se está monitoreando, se podría usar este esquema general para multiplexar dos canales de recepción en un puerto de PC (use un bit del byte del encabezado para identificar si contenía datos para el primero o el segundo). Puerto). Si bien el tiempo de sincronización de las cosas con una precisión de un bit puede parecer excesivo, hay ocasiones en que puede ser útil, especialmente cuando se monitorean los dos lados de un enlace de comunicaciones (por ejemplo, para juzgar cuánto tarda un dispositivo en responder a los datos enviados por el otro).

    
respondido por el supercat

Lea otras preguntas en las etiquetas