Comunicación entre diferentes tasas de baudios [cerrado]

0

En primer lugar, soy totalmente nuevo en casi todo esto.

Tengo dos tableros que quiero poder comunicar. Ambos están utilizando una conexión serie half-duplex, pero uno está fijo a 4800bps y el otro a 57600bps.

He investigado y, a mi entender, necesitaré algo con 2 UART para convertir más o menos la señal de una a otra. Eso es sobre donde mi entendimiento ha chocado contra una pared. No estoy seguro de qué chip funcionaría, cómo configurar el chip o si hay otras opciones más simples. ¡Solo necesito un poco de orientación de alguien con algo de experiencia!

    
pregunta AmpMunkey

1 respuesta

3

Como señaló @ IgnacioVazquez-Abrams, la diferencia de velocidad es potencialmente un problema real. Los requisitos de transferencia de datos pueden tomar una variedad de formas. Para sus propósitos, veamos algunas posibilidades:

1 - Un grupo de paquetes pequeños e intermitentes en ambas direcciones

En este caso, cualquier dispositivo pequeño con 2 UART y suficiente RAM para amortiguar la transferencia típica más grande será suficiente.

2 - Grandes cantidades de datos provenientes del dispositivo más lento con acuses de recibo u otros paquetes pequeños devueltos por el dispositivo más rápido

También en este caso, cualquier dispositivo pequeño con 2 UART y suficiente RAM para amortiguar la transferencia típica más grande desde el dispositivo más rápido será suficiente.

3 - Grandes cantidades de datos provenientes del dispositivo más rápido con acuses de recibo de otros paquetes pequeños que devuelve la unidad más lenta

En este caso, recomiendo investigar para encontrar una solución diferente. Si bien es posible crear buffers de RAM cada vez más grandes para datos en serie, eventualmente, inevitablemente, habrá un problema.

Tenga en cuenta que uso el término "paquetes" aquí muy libremente. No es necesario que los datos se ajusten a nada como paquetes de red Ethernet o datos similares altamente estructurados. Pero la mayoría de las transferencias de datos, en mi experiencia, más allá de la entrada del teclado, se ajustan a uno de estos 3 modelos.

Hay un factor adicional - apretón de manos. Cualquiera de los dispositivos, o ambos, pueden manejar los datos entrantes a la velocidad definida por completo. Pero uno o ambos pueden requerir que se implemente un protocolo de enlace para que funcione de manera confiable. Esa comunicación puede ser de hardware (CTS, RTS u otros pines) o software (por ejemplo, XON / XOFF). Si no puede configurar las velocidades de bits, es poco probable que pueda configurar el protocolo de enlace y debe admitir lo que necesite cada dispositivo. Nuevamente, un dispositivo pequeño con 2 UART también puede manejar diferentes métodos de negociación, pero debe configurarse correctamente para hacerlo.

También me sorprende un poco que tenga dos dispositivos que AMBOS tengan velocidades de bits fijas. La mayoría de los dispositivos con los que he trabajado durante los últimos 30 años han tenido velocidades de bits configurables. Incluso si un dispositivo está arreglado debido a otras restricciones (por ejemplo, está capturando datos que ya se están enviando a otro sistema), por lo general no se aplica a AMBAS partes de un proyecto.

    
respondido por el manassehkatz

Lea otras preguntas en las etiquetas