Cómo comunicarse entre el microcontrolador 8051 y la PC

2

Estoy trabajando en un proyecto mío en el que obtengo datos de varios sensores en un microcontrolador 8051.

Estoy construyendo un simulador de automóvil en el que tengo varios componentes del automóvil, como el volante, el freno, el acelerador y las palancas de embrague y algunos otros componentes. Tengo algunos sensores conectados a cada uno de estos componentes.

Los datos de cada sensor no excederán más de un byte. En total tengo 8 sensores, lo que hace un total de 8 bytes de datos y los datos deben transmitirse al menos 100 veces en un segundo.

Ahora, tengo que transmitir continuamente los datos provenientes de estos sensores a la PC a través de un microcontrolador donde se procesarán aún más. ¿Hay alguna forma en que pueda comunicar estos datos a la PC en paralelo ya que tengo datos provenientes de una serie de sensores?

    
pregunta Rehan Abbasi

1 respuesta

3

Será esencial conocer el tamaño de los datos leídos de cada sensor, cuántos sensores y la velocidad de repetición que necesita para obtener los datos en la PC. Sin esos datos será difícil recomendar una solución exacta.

Dicho esto, puede ser razonable sugerirle que configure las líneas TXD y RXD de su puerto UART 8051 para que hablen con un encabezado de 1x6 que pueda emparejar a uno de estos cables :

EstosepuedeconectaralpuertoUSBdesuPC.Usandoel controlador de puerto de comunicación virtual adecuado desde el sitio web de FTDI , la solución puede transferir fácilmente datos en serie de su 8051 al Aplicación en el PC. La aplicación para PC cree que simplemente está hablando con un puerto COM.

Estos cables adaptadores en serie pueden transferir fácilmente datos en serie a velocidades de 230,4 K baudios. Usando un marco serial estándar 8N1, esta velocidad de transmisión se traduce en un poco más de 23000 bytes por segundo de velocidad de transferencia sin procesar. Si tuviera 12 sensores, cada uno con dos bytes de datos y quisiera actualizar los datos a la PC a 100 veces por segundo, esto equivaldría a una tasa de datos de aplicación de 12 * 2 * 100 = 2400 bytes por segundo. Como puede ver, habría un montón de ancho de banda restante en el canal del puerto de comunicación virtual para envolver un protocolo alrededor de los datos de su aplicación y enviarlo a la PC.

    
respondido por el Michael Karas

Lea otras preguntas en las etiquetas