Circuito de búfer RS-232

Quería olfatear la comunicación entre dos dispositivos RS232. Este enlace presenta una solución simple, pero quiero asegurarme de que mi 'sniffer' no cargue el enlace de comunicación.

En ese sentido, me preguntaba si podría usar un MAX-232 como un búfer de 'bucle':

Entrada RS232 --> Salida TTL --> Entrada TTL --> Salida RS232

El MAX-232 será alimentado por un 5v externo. ¿Es esta una forma infalible de olfatear sin cargar la línea? ¿El MAX232 incluso actúa como un búfer en esta configuración? Si no. ¿Hay circuitos integrados de búfer RS232 económicos disponibles? Toda la gama 74xx de circuitos integrados de búfer parece funcionar solo en niveles TTL.

Mi enlace de comunicación es solo medio dúplex.

ACTUALIZACIÓN: Creo que no fui claro con mi descripción. Por favor vea la imagen:texto alternativo

Mis dos dispositivos ya están en niveles RS232. Simplemente quería leer los datos usando un puerto COM de la PC, pero pensé que un MAX-232 en el medio (el búfer de bucle del que estaba hablando) podría servir como búfer. Pero, de nuevo, incluso el puerto COM de la PC en sí podría tener un MAX-232 dentro...

PD: no he indicado los condensadores, etc. para el max232 en la figura anterior.

Respuestas (5)

Por cierto, he tenido éxito con el circuito minimalista de dos diodos al que te vinculaste. La única diferencia es que usé el pin TX del dispositivo 'sniffer' como una fuente útil de -12V para usar a través de un menú desplegable de 47K para asegurarme de que el propio RX del sniffer no flotara cuando ninguno de los dispositivos espiados estaba transmitiendo.

A menos que esté conduciendo decenas de pies de cable, o esté funcionando a velocidades más rápidas como 115,2 kbps, el diodo y la resistencia no deberían afectar demasiado al circuito.

Si realmente desea almacenar en búfer las señales a TTL y viceversa, existen, por supuesto, los chips MAX e incluso chips de tipo controlador de línea/receptor de línea antiguos simples como el controlador cuádruple 1488 y el receptor cuádruple 1489 que harían el trabajo.

Si entiendo bien, aquí está su circuito:

Entrada RS232 --> Salida [Sniffer circuit]TTL --> Entrada TTL --> Salida RS232

en otras palabras:

[dispositivo1] <--> MAX232 <--> [circuito rastreador] <--> MAX232 <--> [dispositivo2]

Eso me parece bien. El hecho de que cada lado del circuito esté hablando directamente con un MAX232 debería brindarle mucho "aislamiento". Es posible que deba cruzar las líneas (o simplemente usar una conexión de módem nulo en un lado) si está hablando de CPE-CPE o de computadora a computadora.

Aparte de eso, no veo ningún problema.

En realidad, "RS232 in -->TTL out-->TTL in-->Rs232 out" están todos en el mismo chip MAX-232 como se muestra en la figura.

Hmm, circuito interesante. Es posible que desee utilizar un MAX232 real como un búfer entre las líneas que está leyendo y su configuración de dos diodos. Tiene una resistencia de entrada de 5Kohmios, lo que significa que suponiendo que los receptores tengan la misma, verá 2,5KOhms de resistencia en el bus. Quizás un seguidor de voltaje con una resistencia de entrada más alta podría estar en orden: es posible romper los puertos serie al intentar cosas tontas (lo he hecho). Intenta probar algo que no te importe destruir primero.

Probé la configuración que se muestra en mi figura (con el max232 conectado) y sin él (directamente a los puertos de comunicación de mi PC). Ambos funcionan bien. Ahora, ¿realmente se necesita un MAX-232 en el medio? ¿Proporciona una acción amortiguadora?
No creo que necesite el MAX-232: la entrada al puerto COM de su PC probablemente sea bastante similar a la del chip MAX-232, por lo que la carga sería la misma.

Asumiendo que sus dos dispositivos están hablando TTL entre sí, una buena manera de 'aislar' podría ser algo como el siguiente circuito ascii:

         Tx --------------x------------------------------- Rx
                          |              
Device1  Rx --------------------x------------------------- Tx  Device2
                          |     |                          
         Gnd -------------------------x------------------ Gnd
                          |     |     |    
                          |     |     |
                         Rx1   Rx2   Gnd

                            Sniffer (say an XMEGA with 3+ UARTS)

                         Tx1
                          |
                          x-----TX_IN-[MAX232]-TX_OUT----- Rx Computer Terminal

Con algún firmware creativo, algo como esta configuración podría espiar la comunicación full-duplex entre dos dispositivos e informar la conversación al usuario de una manera "agradable". Lo siento si esto no es exactamente lo que estabas preguntando, pero tuve que aprovechar la oportunidad del arte ascii :).

Los dispositivos ya están en rs232. No quiero poner una MCU en el medio; solo quería mantenerlo simple :)

Puede evitar toda la 'electrónica' por completo si puede usar dos puertos serie para rastrear. Cada uno de los puertos sniffer lee la línea TX de un extremo de la conexión. Esto también le brinda pines de entrada de estado adicionales para leer todas las salidas de estado en las comunicaciones monitoreadas.

  Tx --------------x------------------------------- Rx
                   |              
  Rx --------------|-----x------------------------- Tx
                   |     |                          
                   |     |         
                   |     |     
                   |     x------------ PC COM 1 Rx
                   |
                   x-------------------PC COM 2 Rx
Estamos usando este tipo de rastreo RS323 durante más de 15 años sin ningún problema.
@Tim, bueno, si miras mi figura, eso es exactamente lo que estoy haciendo, pero con un máximo de 232 en el medio (que no es necesario, como descubrí y como señalaron otros).