En lo sistemas empotrados (también en routers, switches...) es muy común no tener tarjeta gráfica, o puertos PS/2 para el teclado y el ratón, con lo que, si tenemos que reconfigurar algo, ¿cómo lo hacemos si no disponemos de pantalla o teclado?

La respuesta pasa por unos sencillos pasos que nos permitirán dejar disponible el acceso por el puerto serie a la consola, habilitándonos para tocar la configuración cuando aparentemente todo esté perdido.

Empecemos respondiendo unas cuántas preguntas para conocer más profundamente el estándar RS-232 (el habitual -aunque mal llamado- estándar del puerto serie DE-9) y así poder configurar y controlar más al detalle estas comunicaciones.

  • ¿Qué es el puerto serie?

Es una interfaz física, de 9 o 25 pines dispuestos en dos hileras, por la que se manda información bit a bit (de ahí el nombre de "serie"). Es una interfaz heredada y obsoleta en los equipos de electrónica de consumo y está empezando a desaparecer en los equipos portátiles (hay excepciones, como la gama Tecra de Toshiba, aunque acabará desapareciendo en favor del USB). No obstante, sigue siendo muy útil en electrónica industrial, robótica y otras aplicaciones diversas, como en la programación de routers y switches.

  • ¿Cómo se manda la información?

A través de los pines TD (Transmission Data) y RD (Receive Data) -también conocidos como Tx y Rx respectivamente. Los valores de tensión (que serán interpretados como 1s, 0s o banderas de control o control flags) deben estar entre -3 y -15 V para "entender" un 1 (OFF en caso de ser una bandera), y entre +3 y +15 V para "entender" un 0 (ON en caso de ser una bandera). Podemos ver estas señales en la siguiente imagen por gentileza de wikipedia:

  • ¿Que son los bits de start, stop y paridad?

Son unos bits que se utilizan como banderas de control, para indicar el inicio de un dato (bit de start), el fin del mismo (bit de stop) y para detectar errores. Como se observa en la figura anterior, el bit de start provoca un cambio en la línea (línea en reposo significa menos de -3 V), mientras que el bit de stop devuelve la línea al reposo.

  • ¿Qué es la paridad par e impar?

Por paridad par se entiende que el número de 1s de la palabra será rellenado con el bit de paridad para que el conjunto (palabra + bit de paridad) sume un número de 1s par. La paridad impar es su dual, es decir, el bit de paridad tomará el valor adecuado para que el conjunto conforme un número impar de 1s. Veamos algunos ejemplos:

Dato (8 bits) Bit de paridad (par) Bit de paridad (impar) Conjunto final (par) Conjunto final (impar)
00000000 0 1 000000000 000000001
01010101 0 1 010101010 010101011
11100000 1 0 111000001 111000000
  • ¿Qué son los baudios?

El baudio (baud) es una unidad de medida, usada en telecomunicaciones, que representa la cantidad de veces que cambia el estado de una señal en un periodo de tiempo.

Es importante resaltar que no se debe confundir la velocidad en baudios (baud rate) con la velocidad en bits por segundo (bit rate), ya que cada evento de señalización (símbolo) transmitido puede transportar uno o más bits. Sólo cuando cada evento de señalización (símbolo) transporta un solo bit coinciden la velocidad de transmisión de datos en baudios y en bits por segundo.

En el estándar RS-232C, como sólo hay dos símbolos (señal binaria, ceros y unos, voltajes positivos y negativos), la tasa en bits y en baudios coinciden, definiéndose las siguientes velocidades estandarizadas (se señalan en negrita las más extendidas): 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200.

  • ¿Qué significa comunicación símplex, half-dúplex o full-dúplex?

Sencillamente, indican la capacidad del canal de transmitir en un único sentido (símplex), en ambos sentidos con petición y conmutación (half-dúplex) o en ambos sentidos con disponibilidad total (full-dúplex).

Para entenderlo, podemos hacer una analogía con la circulación de vehículos. Una vía símplex es una calle normal, de un único carril y de un único sentido; Una vía half-dúplex es una calle de un único carril donde hay un agente de tráfico habilitando el paso en una o en otra dirección en función de la congestión de tráfico; Una vía full-dúplex es una avenida, donde se puede circular en ambas direcciones a la vez.

  • ¿Qué es el control de flujo?

El control de flujo se ejecuta a través de las señales CTS (Clear To Send) y RTS (Request To Send). Se puede hacer un control de flujo por software o por hardware, siendo preferible, siempre que sea posible en la UART (o USART), el segundo, aunque éste (el control de flujo) sólo tiene sentido cuando la comunicación es half-dúplex.

  • ¿Qué es un cable de módem nulo -null modem cable-?

Un cable de módem nulo, o cable de módem cruzado, es aquél que tiene cruzadas las líneas de Rx con Tx, para posibilitar la comunicación entre dos DTE (Data Terminal Equipment), los cuales no están habilitados para una comunicación directa (están preparados para conectarse a un DCE, Data Communications Equipment). No se encuentra estandarizado, con lo que pueden existir múltiples formas de conexión y ensamblado del mismo, pero una cosa si está clara: Deben tener sus dos extremos hembra (female), como puede observarse en la imagen.

Cable de módem nulo

  • ¿Cuál es el pinado de un conector DE-9 y de un null modem?

Como una imagen vale mas que mil palabras, vamos allá con dos que hablan por si mismas:

Pinout null-modem

Pinout de un cable de módem nulo

Fuente: http://orkanet.com/production/cabling/null_modem_cable_db9f_to_db9f_ar.htm

Pinout DE-9

Pinout de un DE-9 en un DTE

Fuente: http://www.noktaendustriyel.com/eng/pratx0x1.html