El modo de comando y el modo de datos se refieren a los dos modos en los que puede funcionar un módem de computadora. Estos modos se definen en el conjunto de comandos Hayes , que es el estándar de facto para todos los módems. Estos modos existen porque solo hay un canal de comunicación entre el módem y la computadora, que debe llevar tanto los comandos de la computadora al módem como los datos que el módem está preparado para transmitir a la parte remota a través de la línea telefónica.
Cuando un módem está en modo de comando , cualquier carácter que se le envíe se interpreta como un comando que el módem debe ejecutar, según el conjunto de comandos Hayes . Un comando está precedido por las letras 'AT', que significan 'Atención'. Por ejemplo, si un módem recibe 'ATDT5551212' mientras está en modo de comando, lo interpreta como una instrucción para marcar los números 5551212 en el teléfono, utilizando la marcación por tonos . Durante una operación en modo de comando, el módem puede enviar respuestas a la computadora indicando el resultado del comando. Por ejemplo, el módem puede responder con la palabra "BUSY" en respuesta al comando ATDT, si escucha una señal de ocupado después de marcar y está configurado para escuchar señales de ocupado. Cualquier comunicación en modo de comando (en ambas direcciones) finaliza con un retorno de carro .
Cuando un módem está en modo de datos , todos los caracteres que se envían al módem se transmiten a la parte remota. [1] El módem entra en modo de datos inmediatamente después de realizar una conexión. Por ejemplo, si ATDT5551212 dio como resultado una llamada telefónica que fue respondida por otro módem de computadora, el módem informaría la palabra "CONECTAR" y luego cambiaría al modo de datos. Todos los demás caracteres recibidos a través del enlace serial se consideran provenientes de la parte remota y todos los caracteres enviados se transmiten a la parte remota.
Cuando un módem con capacidad de voz está en modo de "datos de voz", cualquier dato enviado al módem se interpreta como datos de audio que se reproducirán a través de la línea telefónica, en lugar de bytes de caracteres que se transmitirán digitalmente a la otra parte.
Cambiar entre modos
Los módems siempre comienzan en modo comando cuando se encienden. Estas son las formas en que un módem puede cambiar al modo de datos:
- Después de una conexión de marcación exitosa en respuesta a un comando de marcación "ATD" en el que el módem llega a otro módem.
- Después de contestar el teléfono con el comando de respuesta "ATA", si hay otro módem en el otro extremo.
- Después de responder el teléfono automáticamente por algún motivo preconfigurado (como respuesta automática) y conectarse a otro módem. (Casi todos los módems admiten la respuesta automática cuando se les da el comando "ATS0=1").
- Después de recibir el comando "ATO" (son tres letras AT-Oh, no AT-cero) después de ser puesto nuevamente en el modo de comando con una secuencia de escape (ver abajo).
- En respuesta a comandos de marcación o conexión similares para comunicaciones de fax o voz.
Los módems vuelven al modo de comando desde el modo de datos por las siguientes razones:
- La conexión se interrumpió (por ejemplo, la otra parte colgó).
- La computadora emitió un comando de escape, que generalmente consiste en una pausa de 1 segundo, luego los tres caracteres "+++" y luego otra pausa de 1 segundo. La conexión continúa, pero el módem puede aceptar comandos, como "ATH" para colgar. La computadora puede emitir el comando "ATO" para regresar al modo de datos.
- La computadora le indicó al módem que finalizara la llamada configurando el pin de Terminal de Datos Listo (DTR) en estado "apagado".
El pin DTR es el que normalmente utilizan las computadoras para invocar la terminación de una llamada de módem en la actualidad. La secuencia de escape +++ rara vez se utiliza e incluso puede desactivarse para evitar un mal funcionamiento en caso de que estos caracteres sean parte legítima del flujo de datos (ignorando las pausas de 1 segundo).
Uso práctico contemporáneo
En la actualidad, la mayoría de los módems están configurados con los caracteres "&C1&D2" en la cadena de inicialización o se comportan de esta manera de forma predeterminada. Esto provoca el siguiente comportamiento:
- El módem utiliza el pin de detección de portadora de datos (DCD) para indicar si está conectado a un host. La computadora generalmente puede leer el pin DCD en cualquier momento y siempre saber si el módem está en modo de comando o de datos. DCD alto significa modo de datos y bajo significa modo de comando. DCD es una señal enviada desde el módem a la computadora. (Tenga en cuenta que DCD también permanece alto si está en modo de comando después de una secuencia de escape +++, pero en la práctica, el software lo usa muy raramente, si es que lo usa, por lo que realmente no es un problema).
- El módem interpreta el pin Data Terminal Ready (DTR) como una señal de la computadora para saber cuándo desea finalizar una llamada. DTR es una señal de la computadora al módem. La computadora mantiene DTR alto en todo momento hasta que desea finalizar una llamada, momento en el que la computadora reduce DTR durante un segundo o dos. La computadora también mantiene DTR bajo cuando no se están ejecutando programas que desean utilizar el módem; esto evita que el módem responda llamadas debido a la respuesta automática o que haga algo inesperado o no deseado. La computadora puede asumir con seguridad que después de que DTR se haya reducido durante un par de segundos, el módem estará en modo de comando.
Mensajes de escape de enlace de datos (DLE)
En las comunicaciones de datos por acceso telefónico normales, los módems entran en modo de datos solo una vez: comienzan cuando se conecta la sesión y terminan cuando se desconecta. Sin embargo, cuando se utilizan módems para comunicaciones de fax y voz (audio), cambian rápidamente entre los modos de comando y datos varias veces durante una llamada. Esto se debe a que la función del módem cambia con más frecuencia: en lugar de simplemente pasar bytes del punto A al punto B, se trata de negociar parámetros y mensajes con una máquina de fax o de cambiar entre los modos de grabación, pausa y reproducción de audio.
En los modos de fax y datos de voz, a veces ocurren eventos que el módem desea enviar a la computadora sin importar si está en modo de comando o de datos. Un ejemplo de un evento de este tipo es cuando una persona que llama presiona una tecla de marcación por tonos en modo de voz. Otros mensajes fuera de banda comunes son las notificaciones del módem de que se perdieron datos porque la computadora está enviando datos demasiado lento o demasiado rápido, o que el módem escucha un tono de marcado inesperado en la línea (lo que significa que la persona que llama probablemente colgó), o que el auricular de la extensión fue descolgado o colgado.
Este tipo de evento se señala con un mensaje DLE , que es un mensaje de un solo carácter precedido por un código de escape de enlace de datos. DLE es un carácter enviado desde el módem a la computadora cuya definición no está relacionada con el modo de comando o de datos, y que utiliza un código ASCII específico (0x10) que nunca aparece en ningún comando AT o respuesta, de modo que se puede aislar del flujo de comando/respuesta por ese mérito únicamente. En estos modos, siempre que se envía un DLE (0x10), el carácter que lo sigue tiene un significado especial que no es de comando ni de datos. Por ejemplo, un DLE seguido del número 2 significa que la persona que llama presionó el número 2 en el teclado de su teléfono. Esto podría suceder tanto en el modo de comando como en el de datos siempre que la línea telefónica esté en uso por el módem y haya alguien en el otro extremo de la línea.
El carácter DLE puede aparecer en datos de fax o de audio. Para evitar la interpretación errónea de un byte de datos 0x10 como un DLE, se utiliza el "relleno de bits". El relleno es un esquema de codificación común para módems y se utiliza para escapar caracteres en secuencias. En este caso, el relleno significa que dos caracteres DLE seguidos se interpretan como un byte literal con valor 0x10.
El DLE también se utiliza de forma ligera en la comunicación entre el ordenador y el módem. Un evento DLE específico señala el final de una página de fax o el final de un archivo de audio. Ese evento devuelve el módem al modo de comando. A diferencia del modo de datos de acceso telefónico estándar, abandonar DTR no es una forma adecuada de reanudar el modo de comando, ya que no se desea que se cuelgue y un código de escape con pausas obligatorias tampoco es adecuado. Debido a esto, los bytes literales 0x10 en los datos también se duplican desde el ordenador al módem.
El DLE nunca se utiliza en los modos de datos estándar de módem a módem, como el que se utiliza para el acceso telefónico a Internet, al menos no por el propio módem. En estos modos, el DLE se transmite por la línea como cualquier otro carácter. El DLE (y los mensajes con escape DLE) solo los utiliza un módem para aplicaciones de fax y voz, cuando se lo coloca específicamente en un modo de fax o voz.
Véase también
Referencias
- ^ "2 Modo de comando y modo de datos" Microchip . Consultado el 15 de noviembre de 2023.