Ok, tengo algunos de los IC AT89S52 y AT89C4051. Ambos tienen solo UART, pero mi proyecto requiere dos porque el mismo dispositivo controlará un módulo de radio que requiere un UART para la interfaz y también se comunicará con la PC a través del puerto serie. Como último recurso, usaría el puerto paralelo para comunicarme con la PC, pero el cable del puerto paralelo será demasiado voluminoso y mi proyecto debe estar a varios metros de la PC.
He investigado y encontrado IC's con UART duales, pero eso puede ser una pérdida de tiempo, ya que tengo que ordenarlos en ebay (china) y esperar más de 6 semanas para que aprendan nuevos comandos 8051 para interactuar con ellos. Prefiero hacer las cosas más fácil y más rápido que 5 semanas.
La única otra idea en la que pensé es usar algún tipo de multiplexor / demultiplexor IC conectado al puerto UART para que se duplique en 2 puertos (espero).
Planeo hacer que toda la acción de UART sea semidúplex y en intervalos de tiempo. Con eso quiero decir, en un período de tiempo, el micro envía datos a través de UART al módulo de radio, luego, en otro período de tiempo, el micro recibe datos del módulo de radio, luego, en otro período de tiempo, el micro envía datos a la PC y luego en la final marco de tiempo, el micro recibe datos de la PC.
¿Es esto tan simple como el siguiente ?:
-
conectar el pin de micro transmisión (salida de datos) a una entrada de un multiplexor y cada salida al pin de transmisión de UART de cada dispositivo (donde los datos son aceptados)
-
conectando el pin de micro recepción (entrada de datos) a la salida de un demultiplexor y cada entrada al pin de recepción de UART de cada dispositivo y
-
conectar la línea de dirección del demultiplexor / multiplexor a un pin de gpio para que pueda seleccionar un UART.
o necesito agregar resistencias también? y si uso partes de cmos como 4051, ¿eso afectaría el rendimiento si decidiera hacer que todos los dispositivos UART funcionen a 115200bps?