expansor UART (5 puertos a 11 puertos)

2

Tengo un tablero que me gustaría diseñar y hay 11 dispositivos a los que solo se puede hablar mediante UART . Estoy restringido a una gama de productos de microchip uC chip y he encontrado uno con 5 puertos UART. He ideado una solución basada en puentes en la que el usuario, al realizar la conexión a través de puentes a los 5 puertos disponibles, puede elegir 5 de los 11 dispositivos. He estado buscando un chip que tome UART, SPI o I2C y me proporcione algunos puertos UART adicionales, pero me he quedado corto. ¿Alguien puede sugerir una solución o un producto que pueda haber encontrado?

No es crítico que los 11 dispositivos puedan conectarse a la unidad de control (que sería bueno), pero es importante que estos dispositivos estén en la placa para un producto modular. Sin embargo, deseo que el producto sea más fácil de usar ya que la solución basada en puentes es un poco complicada a primera vista o eso me han dicho.

EDIT

Está bien, lo siento, no estoy explicando el problema correctamente. Con este método, usted limita las opciones del usuario. Digamos que vinculas el puerto a al dispositivo 1 y 2 y el puerto b a los dispositivos 3 y 4 y así sucesivamente ...

¿Pero qué pasa si el usuario desea usar el dispositivo uno y dos? Entonces el producto está limitando al usuario pesadamente. Con 5 opciones de puerto y 11 opciones para dispositivos, el coeficiente binomial produce 462 combinaciones para que el usuario elija. Eso es una exageración, no estoy buscando ese nivel. Pero con la solución basada en puente, el puerto a puede conectarse a 9 de los dispositivos, mientras que el puerto b se puede conectar a 7 de los dispositivos, el puerto c puede conecte a 8, el puerto d puede conectarse a 7 y el puerto e puede conectarse a 9. El número de conmutadores mux necesarios para hacer esto estaría por encima del límite.

¿Hay otra solución para dar al usuario la opción de usar (cerca de) cualquier combinación de dispositivos?

He pensado en usar dos uC con 5 puertos UART cada uno para conectarse a 10 de los dispositivos y luego usar una solución mucho más pequeña basada en puentes para el último dispositivo, pero esta solución es demasiado complicada para la producción y es costosa.

¿Hay chips o conceptos que expandirán el control de UART a 11 dispositivos?

    
pregunta Gareth T.

4 respuestas

1

Utilice algunos circuitos integrados de puente UART-SPI, como:

Puede tener tantos UART como pines GPIO de repuesto para usar como líneas de Chip-Select (o usar un demux o decodificador y puede tener órdenes de magnitud más), limitado solo por la velocidad de transmisión de UART frente a la velocidad máxima puedes ejecutar tu SPI.

    
respondido por el brhans
2

Puede usar circuitos integrados de conmutador analógico (multiplexores analógicos) para reemplazar los puentes manuales.

Si tiene 5 puertos UART, puede multiplexar 1 de esos puertos a 8 puertos UART multiplexados. Debe utilizar conmutadores de 8 canales, como DG4051E .

    
respondido por el Chupacabras
0

conduzca un registro de desplazamiento SIPO (por ejemplo, 74hc595) desde 2 pines GPIO conecte la entrada ~ OE a la salida UART

utilizando el reloj GPIO en un patrón que representa el dispositivo con el que desea hablar, luego use el UART para enviar

si hay un pull up en su lugar, el puerto con un bit cero hará eco en la salida de UART.

para el extremo de recepción, use an y gate / gates para combinar la señal del dispositivo UARTS.

    
respondido por el Jasen
-1

Creo que está utilizando el protocolo o la topología incorrectos para su caso. Yo sugeriría usar transceptores RS-485 y construir una topología de bus. Si tiene 11 dispositivos posibles, puede usar 4 líneas para habilitar uno de ellos.

Las advertencias que veo para esta opción son:

  • Comunicación half-duplex (sin Rx / Tx simultánea)
  • Puede interactuar solo con un dispositivo a la vez (topología de bus)
  • Tu uC será como un maestro. Debe habilitar un dispositivo y comenzar la comunicación con él. (los transceptores están configurados para escribir o leer desde el bus)

No vi ningún detalle en sus preguntas acerca de cómo estas limitaciones pueden afectar su sistema o si vale la pena. Espero que esto pueda ayudar.

    
respondido por el gustavovelascoh

Lea otras preguntas en las etiquetas