Actualmente estoy trabajando en un pequeño proyecto de ingeniería inversa, donde quiero comprender la comunicación entre el software de control y un módem/DCE a través del puerto serie (RS232C).
EDITAR : tanto el software de control como el módem son de principios de los 90, el software solo se ejecuta en MS DOS. Mi computadora portátil, que se supone que debe hacer el trabajo de comprender la comunicación, se ejecuta en Windows 10 y se conectará a través de un adaptador de serie a USB. ( fin de la parte editada )
Para este propósito, ya construí un pequeño dispositivo de escucha que en su mayoría funciona bien. Se parece a esto:
Dibujé el diagrama del circuito pero obtuve los 'planos' de http://airborn.com.au/serial/rs232.html , sin embargo, no se proporciona ninguna descripción o explicación allí. Acabo de construirlo y tuve suerte. Desafortunadamente, no soy tan bueno en electrónica como en la parte de software de mi proyecto. Primero tengo algunas preguntas simples que espero que alguien pueda responder:
Ahora para la pregunta no tan simple (creo). No espero respuestas, tal vez algunos consejos o pistas:
El software realiza una secuencia de inicialización para ver si el módem funciona y está conectado. Esta inicialización falla si inicio la PC de control y el módem mientras estoy conectado a través de mi dispositivo . Solo puedo obtener una inicialización exitosa y acceder al menú principal real del software si desconecto uno de los cables que van a mi computadora de escucha ( ya sea el que tiene el diodo o el que tiene la resistencia). Sin embargo, si lo vuelvo a conectar después de la inicialización , todo funciona bien , puedo escuchar de nuevo en ambos sentidos y la comunicación entre el software de control y el módem no se ve obstaculizada en absoluto.
¡Gracias de antemano!
La combinación de resistencia y diodo podría reemplazarse con dos diodos, pero luego necesitaría una resistencia adicional que llevara la salida a un voltaje negativo.
Los diodos solo pueden extraer la señal positiva, no negativa. RS232 opera entre al menos +5V y -5v (puede ser hasta +/-15v)
Al usar la resistencia en lugar de un diodo, es posible robar el suministro negativo de la otra entrada; la resistencia también actúa como la ruta de la señal cuando esa entrada está activa.
La resistencia no es crítica: debe ser mucho más baja que la resistencia de entrada del receptor al que está conectado, pero no debe ser tan baja que descargue la señal que está monitoreando.
Unos pocos kilohmios son apropiados: usé 4,7 k cuando se me ocurrió un circuito idéntico hace 20 años para permitir que dos terminales se conectaran a la entrada de la consola de un sistema de correo de voz.
kevin
Creo que la interacción que ve entre sus puertos durante la inicialización puede deberse a que la implementación RS232 Rx está lejos de ser moderna (si está en un equipo de la era MSDOS).
Para las implementaciones modernas de RS232 Rx, en realidad no necesita tener ningún voltaje negativo en la entrada del receptor para la operación.
Para la gran mayoría de los receptores actuales, así es como se ve un receptor RS232:
RIN2 es la señal +/9 V RS232 y ROUT2 es TTL fuera del UART.
Aquí están las características de la entrada del receptor:
Tenga en cuenta aquí que la entrada nunca necesitaría ir más allá de 0,2 V para un funcionamiento correcto. De hecho, la mayoría de los receptores funcionan bien simplemente con una señal TTL como entrada.
Basado en lo anterior, le sugiero que reemplace su resistencia con otro diodo. Esto proporciona un OR alámbrico de las dos señales RS232 (por lo que seguirán chocando si la señal es dúplex completo), pero nunca van por debajo de cero en la entrada de señal a la entrada RS232 de la PC del monitor.
simular este circuito : esquema creado con CircuitLab
Eugenio Sh.
tobitobitobi
Eugenio Sh.
tobitobitobi