señales de puerto serie (DB9)

3

Casi cada vez que uso un puerto serie para cualquier cosa, solo uso 3 pines del conector habitual de 9 pines (DB9): Tx, Rx y GND. Y cuando conecto mis proyectos de microcontroladores a estos puertos, simplemente cruzo las señales Tx y Rx en el cable, acoplo las GND y funciona.

Mirando las descripciones de los pines parece que los otros 6 pines se usan para algo como control de flujo y finalización. Detección de presencia de puntos. ¿Qué tipo de dispositivos requieren que uses estos pines en la práctica en estos días? ¿Por qué hay tantas señales requeridas (parece una exageración), cuál es el caso de uso de todas ellas a la vez?

Podría ser que estoy buscando una lección de historia aquí.

    
pregunta vicatcu

2 respuestas

3

La mayoría de las señales extravagantes provienen del control del módem del teléfono externo. Esto es cuando una computadora tuvo que hablar con una caja externa que a su vez estaba conectada a la línea telefónica. Piense que la mayoría de las otras señales no solo transfieren datos, sino que controlan un teléfono con interfaz de computadora.

Acerca de las únicas señales más allá de RX y TX que probablemente encuentre hoy son RTS y CTS. Estos son para control de flujo, y aún pueden ser útiles en la actualidad. Sin embargo, la gran mayoría de los dispositivos actuales que todavía usan RS-232 usan solo las líneas básicas de RX y TX.

Algunos microcontroladores tienen UART que opcionalmente pueden usar RTS y CTS, porque el control de flujo fuera de banda puede ser una cosa útil. Tengo un proyecto en marcha ahora mismo, donde tengo dos PIC en la misma placa que necesitan enviar datos entre ellos, y conecté RX, TX, RTS y CTS. Uno de los PIC implementa este control de flujo en hardware, por lo que es particularmente fácil. Por otro lado, tuve que hacerlo en firmware, ya que UART no tiene esa capacidad de hardware.

    
respondido por el Olin Lathrop
2

La utilidad de las otras señales se hace evidente cuando piensa que RS-232 es la principal forma de conectar computadoras en red y, en su mayoría, a través de módems. A diferencia del protocolo físico de redes comunes de hoy en día, Ethernet, los datos no están enmarcados, por lo que cualquier comunicación fuera de banda debe ocurrir en otro cable, con interfaces eléctricas simples que pueden ser enviadas y recibidas por las interfaces eléctricas simples del día.

Muchas de las señales vienen en pares que difieren solo en la dirección.

RXD (recibir datos) / TXD (transmitir datos)

Obvio.

RTS (solicitud de envío) / CTS (claro para enviar), DTR (listo para terminal de datos) / DSR (conjunto de datos listo)

Control de flujo de hardware, para evitar desbordamientos de búfer. Cada uno de estos implementa una manera de afirmar "Tengo algo que enviar (RTS)" y para que el otro extremo responda con "Estoy listo para recibirlo (CTS)", con DTR / DSR haciendo lo mismo en la otra dirección. Consulte ¿Cuál es la diferencia entre DTR / ¿Control de flujo DSR y RTS / CTS? en Desbordamiento de pila.

O, simplemente abusado por cualquier propósito que se considere conveniente. La interoperabilidad no era super, en el pasado. Todos tenían una caja con LED para indicar qué líneas se afirmaban para poder averiguar qué estaba haciendo su hardware, y otra caja con puentes o interruptores móviles para que pudieran cambiar las líneas y tener dos cosas para hablar.

En estos días, muchos equipos son lo suficientemente rápidos como para que no haya posibilidad de que se produzca un desbordamiento del búfer, por lo que puede que no sea necesario el control de flujo.

CD (detección de portadora)

El CD es esencialmente el DTE (módem) que afirma que todo lo que esté conectado a (línea telefónica) está conectado físicamente, descolgado, listo para funcionar, etc. O nuevamente, solo se abusa de él para lo que sea conveniente.

RI (indicador de anillo)

Se afirma cuando suena la línea telefónica.

    
respondido por el Phil Frost

Lea otras preguntas en las etiquetas