Informática
Modem
EL
MODEM
INTRODUCCION.
La computadora consiste en un dispositivo digital que funciona al encender y apagar interruptores electrónicos. Las líneas telefónicas, de lo contrario, son dispositivos analógicos que envían señales como una corriente continua. El módem tiene que unir el espacio entre estos dos tipos de dispositivos. Debe enviar los datos digitales de la computadora a través de líneas telefónicas analógicas. Logra esto modulando los datos digitales para convertirlos en una señal analógica; es decir, el módem varía la frecuencia de la señal digital para formar una señal analógica continua. Y cuando el módem recibe señales analógicas a través de la línea telefónica, hace el opuesto: demodula, o quita las frecuencias variadas de, la onda analógica para convertirlas en impulsos digitales. De estas dos funciones, MODulación y DEModulación, surgió el nombre del módem.
Como veremos las características más importantes de un modem son su velocidad y su tasa de error; ambas directamente relacionadas con la naturaleza del medio por donde transmite la información, la línea telefonica, expuesta en numerosas ocasiones a un elevado ruido e interferencias.
-
CARACTERÍSTICAS GENERALES.
TECNICAS DE MODULACION.
La modulación transforma la señal digital binaria en analógica. La demodulación transforma la señal analógica en digital binaria.
El mensaje de datos (bits), codificado según un alfabto (ASCII, EBCD) que pasa del ETTD al ETCD debe ser trascodificado por este último para acomodarse a la línea de comunicación. A cada símbolo (estados de la señal que representa la información binaria) que se envía por la línea se le llama nivel. Estos no tienen porqué corresponderse uno a uno con cada bit, ni tampoco la decodificación de un símbolo depende sólo de su valor. Pueden asociarse varios bits y decodificarse cada símbolo en función del precedente. Al enviar los bytes, se suele empezar por los bits de mayor peso.
El ETCD emisor recibe el mensaje de datos del ETTD, lo aleatoriza, modula, mientras que el ETCD receptor lo demodula y decodifica.
Los modelos de codificación más usados son los siguientes:
-
NRZ: Al 0 y al 1 se les asignan los valores de -a y +a respectivamente (por ejemplo -5v y +5v)
-
Bifase o Bifase Diferencial: Al 0 y al 1 se les asignan un par de valores +a-a y -a+a; en la codificación diferencial esta asignación se realiza dependiendo del valor previo (si es 0 será ai-1-ai; si es 1 será -ai-1+ai).
-
Miller: A partir de un código bifase, suprime una de cada dos transiciones.
-
Bipolar de orden 1: Asigna al 0 un 0, y el 1 puede ser -1 ó +1 dependiendo de su valor anterior.
-
Bipolar de orden 2: Los bits pares e impares se codifican por separado de acuerdo al principio bipolar de orden 1.
-
Bipolar de alta densidad: Es un código bipolar que ante secuencias largas de 0´s, envía secuencias de relleno (+1, -1, etc). Son de orden n, donde n es el número de símbolo que reemplaza.
-
De Valencia n: Es una señal con n valores de tensión, donde cada valor representa uno o más bits. Si es bivalente (V1, V2) cada tensión representa un bit. Si es cuadrivalente (V1, V2, V3 y V4) cada tensión representa dos bits.
La señal digital se caracteriza por el periodo de bit (T) y por el tiempo entre dos transiciones eléctricas (t). La velocidad de la señal en Bits por segundo (bps) es el inverso de T (1/T), y la velocidad en baudios es el inverso de t (1/t). En una trascodificación bivalente t=T, en una bifase t=T/2 y en una cuadrivalente t=2T. La transcodificación digital pretende enviar el número máximo de bits por estado; compactar la banda de frecuencias de la señal; y facilitar la sincronización, detección de errores, etc.
Como hemos visto, la señal analógica es manipulable en tres variables; la amplitud, la frecuencia y la fase. Cuando enviamos información digital binaria (0 y 1), existirá una correspondencia entre ésta y los valores de la señal analógica. Hay varios modos de transmitir información, actuando sobre los parámetros de la señal analógica.
Modulación en amplitud (ASK): Es el método más usado, por ejemplo, en la radio de A.M. (mod. En amplitud). Se utiliza en los modems en combinación con otros de modulación.
Modulación en frecuencia (FSK): En este caso, al 0 y al 1 se les asignan unas frecuencias específicas y distintas. Es utilizada por modems de 300 a 4000 baudios.
Modulación en Fase (PSK): Distintas diferencias de fase (ángulos), representan los valores de 0 y 1. Este sistema es utilizado por los modems de velocidad de 1200 bps. En este caso, la información es de dos en dos bits, asignándole a cada combinación (00, 01, 10, 11) una diferencia de fase deerminada.
Además de estos modos individuales, se pueden combinar los mismos y aumentar de esta forma el número de bits transmitidos por segundo. En el caso de los modems de 2400 bps, se utiliza de forma combinada con modulación de amplitud y fase, siendo capaz de enviar grupos de 4 bits (0000, 1110, 1111, 0011, etc) en cada estado de la señal modulada (símbolo).
Para aumentar la cantidad de información transmitida por la línea de comunicación se puede:
-
Aumentar los estados (valencia) de la señal, de forma que cada estado represente un mayor número de bits. Conlleva el problema de reconocimiento de los estados. La capacidad de una línea está limitada por la relación señal a ruido. En las líneas telefónicas suelen utilizarse 16 estados (4 bits por estado).
-
Aumentar el ancho de banda de modulación (estados/segundo), que está limitado por el ancho de banda de la línea. Una línea por lo general permite soportar como velocidad máxima el doble de su ancho de banda.
SINCRONO - ASINCRONO.
Los sistemas síncronos y asíncronos pueden ser tanto serie como paralelo. La mayoría de los modems, por utilizar la línea telefónica conmutada, emplean un sistema asíncrono de comunicación. En estos sistemas cada dato se envía secuencialmente, precedido por un bit de arranque y después los bits de datos, control de paridad (errores) y finalizando con un bit de stop. El bit de arranque tiene por misión activar en el equipo receptor la lectura de los datos enviados. El bit de stop deja al receptor en un estado de espera. Además del sistema asíncrono está el sistema síncrono, cuya diferencia del anterior radica en que tanto el ordenador emisor como el receptor quedan sincronizados, es decir, sus ciclos de lectura/escritura de datos (bits) son coincidentes. Además los bits son transmitidos en grupos llamados tramas.
Por ejemplo, en un sistema síncrono, donde cada bit se corresponde con un ciclo de reloj, se llama frecuencia de bit al inverso del periodo de la señal de reloj. De esta forma, en una transmisión de serie síncrona, el tiempo de un bit incluido en un caracter es múltiplo entero del periodo de la señal. La sincronización a nivel de bit se realiza reconstituyendo la base de tiempos de la señal a partir de las transiciones (1-0,0-1). A nivel de caracter se utilizan códigos especiales. Para que las transiciones sean frecuentes, el mensaje de datos a enviar se aleatoriza y en recepción se aplica el mismo algoritmo aleatorio para recuperarlo.
En las transmisiones asíncronas cada `palabra' enviada o recibida está constituida por:
-
Bit de arranque (Start).
-
El dato (byte); de 5 a 8 bits
-
Bit de paridad; se utiliza para el control de errores.
-
1 ó 2 bits de stop.
Hay que tener presente que dentro de la palabra, los bits se transmiten de forma síncrona. La sincronización entre emisor y receptor es fundamental para que estos puedan intercambiar información. Esta se produce tanto a nivel de los bits (por coincidencia de la frecuencia nominal de los relojes de emisor y receptor) como a nivel de los caracteres (diferenciar un caracter de otro por la secuencia Start-Stop). De no producirse la sincronización, el receptor obtendría de la señal recibida datos distintos de los realmente enviados.
SIMPLEX, HALF Y FULL DUPLEX.
En el modo Simplex, la comunicación sólo tiene lugar en una dirección, el receptor solo recibe. En el modo half-duplex la comunicación es secuencial, es decir, cuando un ordenador envía el otro solo recibe (como una conversación humana). El modo full-duplex implica una comunicación simultánea, ambos transmiten y ambos reciben
PROTECCION CONTRA ERRORES.
En toda transmisión pueden aparecer errores. Se determina la tasa de error por la relación entre el número de bits erróneos y los bits totales. Lo mismo que con los bits puede hacerse para caracteres y bloques. Se denomina error residual al número de bits erróneos no corregidos en relación al total de bits enviados. Las señales emitidas suelen sufrir dos tipos de deformación; atenuación ( en reducción de amplitud); y desfase, siendo ésta última la que más afecta a la transmisión. Otros factores que afectan a la señal son: ruido blanco, impulsivo, ecos, diafonías,...Las distorsiones físicas de la señal las trata el ETCD y los problemas a nivel de bit los trata el ETTD.
A los datos enviados se les asocian bits de control (se le añade redundancia de mensaje). Estos se pueden calcular para cada bloque de datos, o en función de bloques precedentes (recurrentes). Como ejemplos de procedimientos de control de errores se pueden citar:
-
Control de paridad por caracter. Consiste en hacer el número de 1´s que aparecen en el dato (byte) par o impar. Puede fijarse la paridad a un valor de 1 (Mark) ó 0 (Space).
-
Control de paridad por Matriz de caracteres: Se determina la paridad de filas y columnas, y se envían los bits de control por filas. Permite tanto la detección como la corrección de errores.
-
Codigos lineales: El conjunto de todos los bloques de datos posibles y sus respectivos bits de control, forman las palabras del código corrector. Cada palabra de n bits se compone de k bits de datos y n-k bits de control (se llaman códigos k,n). Cada palabra de un código lineal se determina multiplicando el vector de datos por una matriz generatriz. El decodificador determina si la palabra recibida pertenece al código o no (caso de un error).
-
Códigos Cíclicos: Son códigos lineales en los que cualquier permutación de un vector pertenece al código. Los elementos del vector se consideran como coeficientes de un polinomio. La codificación/decodificación se realiza gracias a registros de desplazamiento (multiplicación o división del vector de información con el generador). Un polinomio generador CRC-16 (X16+X15+X2+1) puede detectar errores en grupos de 16 bits, disminuyendo la tasa de error.
-
Códigos Polinómicos: Es un código lineal donde cada palabra del código múltiplo de un polinomio generador. Los bits de control pueden obtener del resto de dividir los bits de información por el polinomio generador.
-
Retransmisión con paro y espera (ARQ-ACK): Tras el envío de cada bloque el receptor envía una señal de acuse de recibido correctamente, si los datos llegan dañados, el receptor no transmite nada y al emisor le vence un temporizador reenviando los datos.
-
Retransmisión Contínua (ARQ-NAK): En sistemas full-duplex, se envían continuamente bloques hasta que se reciba un acuse negativo. Entonces se detiene el envío, se reenvía el bloque fallido y se continúa la transmisión a partir de él. Cada bloque ha de estar numerado y deben ser almacenado por el receptor.
-
Retransmisión Selectiva: En sistemas full-duplex, es similar al anterior pero en el caso de error, solo se reenvía el bloque fallido. Después, continúa la transmisión donde se dejó.
-
Entrelazado: Se crea una matriz antes del envío con las palabras del código. Reconstituyendo dicha matriz en la recepción, permite detectar y corregir errores.
Los modems suelen incluir ecualizadores (filtros) para reducir la interferencia entre símbolos (interferencia debida al efecto de otros símbolos adyacentes sobre el que se está recibiendo). Los ecualizadores adaptativos modifican su funcionamiento, de acuerdo a las condiciones de la línea de transmisión. Es fundamental un adecuado muestreo de la señal recibida.
PROCEDIMIENTO DE ENLACE.
Una vez establecido el circuito de datos entre los ETCD, el intercambio de información entre los ETTD se gestiona a nivel del Enlace. Los ETTD además deben controlar sus respectivos periféricos (discos, impresoras, pantallas, etc).
El enlace se define tanto a nivel físico (conexión con el circuito de datos), como lógico (gestión de la transmisión de información). Además, actúa de interface entre la transmisión y el tratamiento de los datos. Por su configuración podemos establecer distintos tipos de enlace:
-
Punto a punto: conecta dos ETTD.
-
Multipunto: un mismo enlace es utilizado para conectar varios ETTD (secundarios) con un ETTD (primario). Puede ser centralizado (la estación central decide con quién comunicar) o no centralizado (se va cediendo el control por un orden preestablecido a las estaciones secundarias y se llaman hub polling).
-
De Bucle: es un enlace multipunto en el que cada extremo del mismo se conecta al ETTD central.
El intercambio de información del enlace puede ser unidireccional, bidireccional alternativo y bidireccional simultáneo.
Las funciones que desempeña un enlace son:
-
Estructuración de los Datos: En una transmisión asíncrona, los bits se organizan en caracteres. En las síncronas lo hacen en tramas.
-
Delimitar e identificar los datos: La delimitación de un bloque puede realizarse por caracteres de control o por secuencias especiales de bits. Los bloques suelen numerarse para identificarlos.
-
Conocer origen y destino de la información: Caso de enlaces multipunto es necesario conocer a que estación van o de qué estación vienen los datos. Para ello cada estación es identificada por una dirección.
-
Control del enlace: gestiona la transferencia de información; utiliza códigos de control o secuencias binarias específicas debiéndose cumplir el principio de transparencia. Se debe supervisar el enlace, detectar los errores, conocer el estado de la conexión, etc.
-
Protección contra errores: Detecta y/o corrige los errores que aparezcan.
-
Recuperación: Se encarga de recuperar fallos, tanto de los datos como de la comunicación (corte de conexión,etc..).
-
Interface con los medios de Transmisión: El enlace debe: adecuarse al medio (equipos y canal) y a la velocidad de transmisión, sincronizar emisor y receptor (en modems síncronos la señal de reloj la proporciona el ETTD; también se utilizan códigos de sincronismo a nivel de bloque). Debe gestionar la conexión entre ETTD y ETCD (por ejemplo, V.24, V.28, V.10, V.25, RS-232, X.21, etc).
-
Interface con el tratamiento de los Datos: El enlace debe adecuar los datos a la aplicación en curso.
En una comunicación se establece el enlace; se inicializa, se transfiere la información de forma transparente, y al final se libera.
Cada estación (ETTD) puede estar en dos estados:
-
Estado permanente: Se fija desde el inicio de la comunicación y puede ser de primario/comando (dirige la comunicación; se encarga de la gestión del enlace, envía las órdenes; etc) o secundario/tributario (recibe y ejecuta las órdenes, envía respuestas al primario; etc).
-
Estado transitorio: es el que puede tener cada estación durante un periodo de tiempo ilimitado. En todo envío, la estación que envía es la maestra y la que recibe la esclava. Si una estación no hace nada está en estado neutro.
PROCEDIMIENTO DE ENLACE BASADOS EN CARACTERES
La información se envía como caracteres, y el control del enlace se realiza con caracteres de control del código. Se utilizan ciertos artificios para conseguir la transparencia. El alfabeto más utilizado es el ASCII. Se aplica tanto en sistemas síncronos como asíncronos, y en enlaces punto a punto o multipunto centralizado. En la transmisión asíncrona se utiliza paridad par, en la síncrona impar. En un procedimiento BSC los caracteres de control son:
-
SOH Indica el comienzo de un mensaje de información.
-
STX Comienzo de texto; también señala el final de un encabezamiento.
-
ETX Fin de un texto.
-
EOT Fin de transmisión.
-
ENQ Pide una respuesta a una estación remota; puede utilizarse también para pedir la identificación de una estación.
-
ACK Respuesta afirmativa de un receptor a un emisor.
-
DLE Cambia el significado de los caracteres que le siguen.
-
NAK respuesta negativa de un receptor a un emisor.
-
SYN Sincroniza emisor y receptor en transmisiones síncronas.
-
ETB Fin de bloque de datos.
Un mensaje de información se estructura como:
-
SOH cabecera.
-
STX bloque de texto ETB
-
STX bloque de texto ETB
...........
-
STX bloque de texto ETX.
La cabecera no la utiliza el enlace, pudiéndose utilizar para numerar los bloques e indicar su contenido, etc. Puede tener cualquier longitud e incluso no estar ausente. La protección contra errores puede realizarse por paridad longitudinal y transversal, por la norma V.41 (código cíclico), etc. Se pueden añadir al comienzo códigos SYN para la sincronización de caracteres.
Para el control del enlace se utilizan los caracteres EOT, ACK, NAK y ENQ junto a secuencias de dirección (caracteres que identifican a cada estación, e incluso pueden añadir ciertos datos sobre ellas). Entre las funciones de control destacan:
-
Invitación a emitir: La estación de comando envía `EOT prefijo ENQ'.
-
Invitación a recibir: La estación de comando envía `prefijo ENQ'. Si una estación puede enviar y recibir debe tener dos direcciones distintas, una para cada función. La estación receptora puede aceptar la invitación con ACK, rechazarla con NAK, o no responder.
-
Petición de Recepción: Cuando una estación quiere emitir envía un ENQ, la otra responderá como en el caso de una invitación a recibir.
-
Petición de respuesta: Con ENQ se pide una respuesta o que se repita la respuesta dada.
-
Fin de Trasmisión: Con EOT, si es un enlace punto a punto sin estación de comando, el enlace queda en estado neutro.
-
Liberalización del enlace: Sobre red conmutada se utiliza DLE EOT.
-
Sincronizar caracteres: Con SYN se sincronizan; este código puede enviarse antes o durante la conexión.
-
Procedimientos de recuperación: Determinan el límite de intentos para recuperar un error. Se puede repetir un bloque o una petición de respuesta n-veces, y si no hay solución se corta la conexión.
-
Extensión de las funciones de control con DLE: Permite hacer el código transparente. Para ello, se precede los códigos de control con el caracter DLE, incluso él mismo.
-
Modo conversacional: En una transferencia de bloques de información entre estaciones, se responde a los bloques con el envío de otro bloque en vez de con un código ACK. El bloque sirve de confirmación y de información para la estación fuente.
PROCEDIMIENTOS DE ENLACE BASADOS EN BITS
Tanto la información como los códigos de control son secuencias binarias desligándose de un alfabeto concreto. Tiene la ventaja de adecuarse a los distintos requerimientos de un enlace. Entre los procedimientos basados en bits, el más extendido es el HDLC (High Data Link Control), utilizado en sistemas síncronos. Puede trabajar en Full Duplex, es transparente, combina la información de servicio y los datos, etc. Se define por:
-
Estructura de trama: Cada trama se compone de:
-
Delimitador de trama (secuencia binaria que marca el inicio y final de la trama).
-
Dirección de la estación de destino (8 bits).
-
Un campo de comando (contiene los comandos de la estación primaria, y las respuestas de la secundaria, 8 ó 16 bits).
-
La información (contiene los bits de datos; si hay más de 5 bits de 1´s seguidos, se añade un 0 para evitar confusiones con el delimitador de trama)
-
El control de trama (código polinómico para la detección de errores, 16 bits).
Los bits se transmiten empezando por el de menor peso, aunque para la información no hay norma fija. El campo de control se transmite empezando por el de mayor peso. Entre las tramas se envían delimitadores como relleno.
-
Gestión del Enlace: Se utiliza el campo de comandos, de acuerdo a una organización preestablecida, para indicar si se está transmitiendo información, comandos de supervisión del enlace, o comandos extendidos de supervisión. Este campo puede tener 8 ó 16 bits.
En él se indica el número de la trama y el número de la última trama recibida correctamente. Se definen cuatro funciones de comando (listo para recibir, petición de envío/reenvío de una trama y posteriores, estación no preparada, y envío/reenvío de una sola trama).
Cada estación tiene contador para las tramas enviadas y recibidas. Estos ponen a 0 bajo ciertas condiciones (contadores NS y NR). Se pueden crear hasta 32 funciones de supervisión extendida, por ejemplo:
-
Modo autónomo (las estaciones secundarias pueden enviar en cualquier momento).
-
Modo normal (las estaciones secundarias solo emiten si se lo pide la primaria. Se utiliza un bit del comando para indicar cuando empieza y cuando termina la transferencia de la estación secundaria).
-
Liberación del enlace.
-
Respuesta afirmativa de la estación secundaria a la primaria.
-
Rechazar un comando recibido, etc.
-
LENGUAJE DEL MODEM Y REGISTROS.
SEÑALES Y PROTOCOLOS.
Para que dos equipos puedan comunicarse es necesario establecer ciertas reglas. Resulta evidente este hecho si analizamos una comunicación entre seres humanos. Cuando uno habla, el otro escucha o debiera escuchar; cuando se va a ceder la palabra se suele realizar pausas y gestos que advierten a nuestro interlocutor de tal hecho. De igual forma, tanto el ordenador-modem, como ambos modems, deben seguir unas reglas para realizar su intercambio de datos sin riesgo de interferencias. Para la comunicación entre ordenador (ETTD) y modem (ETCD) propio se utiliza la norma RS-232C ó V.28 equiparable a la V.24, cuyas señales pasamos a detallar:
-
Pin 1 Tierra(101)
-
Pin 2 Transmisión de Datos(TD ó 103). Significa el envío de datos del ordenador al modem.
-
Pin 3 Recepción de Datos (RD ó 104). Significa que el ordenador está recibiendo datos del modem.
-
Pin 4 Petición de envío (RTS ó 105). El ordenador pregunta al modem si está en condiciones de enviar datos. En la fase de inicialización del modem esta señal hace que el modem emita una portadora y si recibe contestación, se establece la conexión tras la sincronización (de bit), ecualización, etc...
-
Pin 5 Listo para Envío (CTS ó 106). El modem le indica al ordenador que está listo para recibir datos de éste y enviarlos. El tiempo desde el cierre del circuito RTS hasta el cierre del CTS se llama tiempo de inversión y depende del tipo de modem.
-
Pin 6 Modem listo (DSR ó 107). El modem le indica al ordenador que está listo para trabajar y que está conectado a la línea.
-
Pin 7 Tierra (102).
-
Pin 8 Detección de Portadora (DCD ó 109). El modem indica al ordenador que está recibiendo portadora.
-
Pin 15 Reloj de emisión (TC ó 114)
-
Pin 17 Reloj de Recepción (RC ó 115)
-
Pin 20 Ordenador listo (DTR ó 108.2). El ordenador le indica al modem que está listo para trabajar.
-
Pin 22 Indicador de Llamada (RI ó 125). Indica que se ha recibido una llamada por la línea.
En modems síncronos se utilizan dos señales: una, para el reloj de emisión (114) que procede del terminal o del modem; otra, para el reloj de recepción (115).
Las señales de este interface tienen el inconveniente de requerir un circuito físico cada una. Frente a esta situación, la recomendación X.21 multiplexa las señales de control sobre menos circuitos (circuitos conmutados).
Para establecer una conexión se suceden varios procesos:
-
Establecer el circuito de datos.
-
Inicialización (emisión/recepción de portadora, sincronización de relojes y adaptación de ecualizadores automáticos).
-
La transferencia de datos.
-
Liberación del circuito, siempre que no sea permanente.
El proceso de recepción de una llamada se puede resumir, a nivel del circuito de datos, en:
-
Activación del circuito RI (125).
-
Conexión del modem a la línea (108.1).
-
Emisión de portadora y activar la DSR (107).
-
Tras la respuesta del otro modem se activa la DCD (109). Para terminar la conexión se abre la DTR (108.2) y la DCD (109).
Para la sicronización entre ambos modems se utiliza un conjunto de códigos bajo la denominación de Handshake. Los tres más significativos son:
-
ENQ (pregunta) / ACK (reconocimiento). Cuando un modem envía una secuencia de datos, al final de ésta envía un código ENQ, de forma que no se enviará otra secuencia hasta que el modem receptor le conteste con un código ACK.
-
XON/XOFF. Cuando el buffer(memoria) del modem receptor está saturado de datos envía un código XOFF al modem emisor con objeto de detener el envío. Una vez que el buffer esté en condiciones de almacenar nuevamente, enviará un código XON que activará de nuevo al emisor.
-
CTS/RTS.Explicada anteriormente. Se suele utilizar solo en modems de alta velocidad.
COMANDOS AT.
En el campo de los modems se ha ido imponiendo una norma en cuanto al lenguaje de control de estas unidades. Este lenguaje es el AT o Hayes, conjunto de comandos u órdenes que se encargan de realizar las diversas funciones del modem: ajuste de parámetros de la comunicación, control de la línea de conexión, llamadas, tests, etc. Estos comandos los podemos agrupar en dos conjuntos: Comandos de Comunicación y Comandos de Control.
Los primeros se encargan de ajustar los parámetros de trabajo del modem. Los segundos cumplen diversas funciones, tales como: test (autocomprobación), lectura escritura de registros, sistemas de información del estado del modem, etc...
COMANDOS DE COMUNICACIÓN.
ATA Escribiendo este comando, el modem queda en espera de una llamada telefónica, comportándose como un receptor (autoanswer).
ATB 0 o 1 Este comando permite seleccionar dos modos de trabajo del modem; de acuerdo con las normas Bell ó ITU-T. Si es 0 se usan las velocidades de B0 a 300-1200bps de las normas V.21 y V.22. Con B1 se utilizarán las normas Bell 103 o Bell 212A.
ATE 0 o 1 Seleccciona Eco local activado (1) o desactivado (0). Cuando el ordenador local (nuestro) envía un dato remoto, éste puede o no verse en nuestra pantalla. Si tenemos activado el eco local, veremos en pantalla los caracteres por duplicado.
ATF 0 o 1 Selecciona el modo Half (0) o el modo Full (1) Dúplex.
ATH 0 o 1 Conecta (1) o desconecta (0) la línea telefónica desde el modem.
ATM 0 o 3 Controla el altavoz del modem. Puede dejar el altavoz siempre apagado (0), encenderlo hasta que se ha establecido la conexión (1), dejarlo permanentemente encendido (2) o dejarlo encendido solo después de la llamada, hasta que se establezca la conexión (3).
ATO 0 o 1 Durante la conexión telefónica con otro modem se puede, temporalmente, dejar interrumpida la conexión (no cortada). Para ello, se utiliza la secuencia de escape, consistente en la pulsación de la tecla `+' tres veces. Para recuperar la línea se utiliza el comando ATO. Con ATO 1 se pasa al modo on-line y fuerza al ecualizador a adaptarse a la línea.
AT&L 0 o1 Este comando permite conexiones a través de la línea telefónica o a través de líneas especiales. El valor 1 es para líneas especiales, el local llama con ATX1&L1D y el remoto responde con AT&L1A.
AT&C 0 o 1 Controla la señal DCD. Con 0 permanece activada permanentemente. Con 1 refleja el estado real de la señal. En los modos síncronos siempre es 1.
ATD Este comando es el encargado de realizar las llamadas telefónicas. Puede hacer uso de una serie de sibcomandos:
W: No empieza a marcar hasta haber recibido la señal de tono.
@: El parámetro `@' permite marcar un teléfono, esperar hasta S7 segundos, para, tras establecerse la llamada, detectar 5 segundos continuados de silencio tras los cuales se ejecuta el siguiente parámetro de marcaje, y retornar NO ANSWER caso de no cumplirse la condición precedente.
,. :Hace una pausa al marcar. Si aparece tras la D (ATD,) no se considera la señal de tono de línea.
!. :Corta la línea durante la llamada 0.5 segundos.
;. :Después de llamar retorna al modo de comandos. Los comandos pueden añadirse a la misma línea de órdenes o teclearse después.
/. :Introduce una pausa de 1/8 seg.
P. :Llama utilizando pulsos.
T. :Llama utilizando tonos.
R. :Llama y queda en modo autoanswer. Se ignora cualquier comando que aparezca, en la misma línea, detrás de éste.
S=n.: Llama a un número de teléfono almacenado en la RAM del modem con &Zn (n=0 a 3).
AT&P 0 o 1 Cuando se utiliza el modo de llamada por pulsos, se puede seleccionar el sistema Británico (1) o el Europeo (0), cuyos ratios son 33%/67% y 39%/61% respectiv.
ATU 0,1 o 2 Adapta las características receptoras-emisoras del modem al estado de la línea. Permite tres estados: media calidad (0), muy mala calidad (1) y mala (2).
ATL 0 a 3 Determina el nivel de volumen del altavoz, bajo (0,1), medio (2) y alto (3)
ATY 0 o 1 Si el modem recibe una señal de break, inicia una secuencia para cortar la comunicación. Esta señal puede estar activada o desactivada.
ATZn Limpia el buffer del modem y restaura los valores originales grabados en la RAM no volátil. Conviene esperar medio segundo antes de introducir otro comando. Con ATZ0, además de reset, se carga el profile 0 y se realiza un test local. Con ATZ1 se carga el profile1.
AT&D 0 a 3 Analiza el estado de la señal DTR (señal para saber si el ordenador está listo para trabajar con el modem). Puede: ignorarse el estado (0); cuando la señal pase de on a off dejar el modem en modo comandos (1); cuando cambie la señal, inhabilitar el autoanswer, colgar el teléfono y pasar al modo de comandos (2); o por último, al cambiar la señal, cortar la conexión y hacer un reset del modem (3). Con el modo 1 será necesario un comando ATH para cortar la conexión. En este modo, la señal DTR cumple la misma función que la secuencia de escape. En los modos síncronos se ignora este comando.
AT&S 0 o 1 Analiza el estado de la señal DSR, pudiendo dejarla activada permanentemente (0) o hacerla compatible con la norma RS-232 (1).
AT&G 0 a 2 Especifica el uso o no de la señal de tono en el modo de pulsos. Puede ser de 550Hz (1), de 1800Hz (2) o no ser utilizada (0).
AT&X 0 a 2 Determina la procedencia de la señal de clock para modos síncronos. Puede ser: que la dé el modem a través del pin EIA 15 (0); que le modem obtenga una señal externa de reloj a través del pin EIA 24 pasándola al pin EIA 15 (1); o que se obtenga la señal recibida (3).
COMANDOS DE CONTROL.
A/ Repite el último comando introducido en el modem.
ATI 0 a 3 Proporciona el número de versión (0), el valor de control de la ROM del modem (1), una comprobación interna (2), o la versión del software (3). Actúa a modo de autotest.
ATQ 0 o 1 Los códigos que genera el modem como resultado de sus operaciones son (0) o no (1) enviados al ordenador.
ATSn? Lee el registro Sn del modem. El valor de n dependerá del número de registros que tenga el modem.
ATSn=m Asigna al registro Sn el valor de m.
ATV 0 o1 Los códigos generados por el modem como resultado de sus operaciones, cuando son enviados al ordenador, pueden serlo en forma de letra (1) o como números (0). Las cadenas/valores retornados por un modem 2400 son:
V1 | V0 | Modo Xn |
OK | 0 | n=0 a 4 |
CONNECT | 1 | n=0 A 4 |
RING | 2 | n=0 A 4 |
NO CARRIER | 3 | n=0 A 4 |
ERROR | 4 | n=0 A 4 |
CONNECT 1200 | 5 | n=1 A 4 |
NO DIALTONE | 6 | n=2 A 4 |
BUSY | 7 | n=3 A 4 |
NO ANSWER | 8 | n=0 A 4 |
CONNECT 2400 | 10 | n=1 A 4 |
ATX 0 a 4 Selecciona los tipos de respuesta que el modem transmite al ordenador, desde un simple CONNECT (0) a códigos más complejos como CONNECT 1200, BUSY, NO CARRIER, etc. Con 0,1 ó 3 permite llamar sin esperar señal de tono (se marca el teléfono tras el tiempo indicado en el registro S6; Blind Dial). En los modos 2 y 4 la marcación no se inicia hasta detectar señal de tono.
AT&F Transmite la configuración de ajustes que el modem tiene en su ROM a los registros operativos necesarios.
AT&Zn=m Graba los números de teléfono de la RAM no volátil del modem (n=0 a 3). El teléfono es el valor de m. Puede tener hasta 36 caracteres.
AT&Wn Graba la configuración existente en la RAM no volátil del modem. Con n (0 ó 1) se indica en que profile hay que grabarla.
AT&J 0 o 1 Permite seeccionar el tipo de conector a utilizar con la línea telefónica. Puede ser un jack RJ-11 (0) o un RJ-12 (1).
AT&T 0 a n Le permite al modem entrar en modo de test, que puede ser local digital, local, remoto digital, etc. Con AT&T0 se finalizan los test.
AT&Mn Establece el modo asíncrono (0) o el modo síncrono (1 a 3). En el modo asíncrono el modem acepta comandos Hayes y retorna su eco y la respuesta. Los modos síncronos se utilizan en modems externos. Se inicializa el modem pasando la señal DTR de off a on. En estos modos conviene configurar el modem como `Dumb' (no acepta comandos ni da respuestas; los bytes pasan de forma transparente).
Si n=1: soporta terminales sincronas y asíncronas a través del puerto RS-232. Tras realizar la marcación del teléfono se espera el tiempo indicado en el registro S25 para comprobar el estado de la señal DTR. Si está activa, se establece la conexión y se retorna al modo de comandos asíncrono. Cuando se recibe una llamada, la señal DTR debe activarse en el tiempo límite S25 para aceptarla. Una conexión se corta al desactivarse la DTR o no detectarse la portadora durante el tiempo S10. En este modo no se reconoce la secuencia de escape. Si durante la llamada pulsamos una tecla, retornamos al modo asíncrono de comandos.
Si n=2: soporta terminales síncronos. Al activarse la señal DTR se llama al teléfono almacenado en la RAM del modem con &Z (ignora el parámetro `;') y se pasa a modo de datos síncrono. Si la DTR está desactivada, el modem está en modo de comandos asíncrono pero no retorna respuestas (hay que habilitar el eco y las respuestas con ATE0Q1). Al recibirse una llamada se contabilizan los RING en S1 y se comparan con S0. Si S0 es igual a S1 y la señal DTR está en on se acepta a llamada. Si DTR pasa a off se rechaza. Pasados 8 segundos desde el último RING recibido el modem está preparado para iniciar una llamada. La conexión se termina como en &M1.
Si n=3: Se realiza una llamada manual a través del Jack Phone del modem, estableciéndosa la conexión si se activa la señal DTR antes de recibirse la portadora. En este momento es necesario inhabilitar el eco y las respuestas (ATE0Q1). Se acepta una llamada como en &M2 y se corta como en &M1. En &M2 y &M3 con líneas dedicadas (&L1) el terminal fuente tiene S0=0 y el destino S0 mayor que 0.
AT&V Muestra la configuración activa del modem, los ficheros de configuración grabados en la RAM (profiles) y los teléfonos almacenados con &Z.
AT&Yn El comando &Yn (n=0 ó 1) especfica de qué profile se tomarán los datos para cargar los registros del modem.
EJEMPLOS: Usaremos los siguientes símbolos:
^. Indica DTR on
v Indica DTR off
: Representa la tecla Enter/return
-
Indica una pausa de tiempo.
Secuencias de Inicialización:
ATQ0E0H0M0V1S0=0S2=255X4:
:"ATZ: """AT&F&D2&C1E0S0=1H0M0X4V1:
ATQ0E0S0=3H0M0X1V1:
Modem BUSY (ocupado)
v"^.""ATM0H1:v
v"^.""ATM0H1:
Comando de llamada
ATM2DT, 123,,4567
ATM3DPW 123,45,67
ATDP 1234567;
ATM2DP 1234567 R
ATX4DP 1234567 @ 1234567 W 987
Cortar la Conexión
^."""+++"""ATH0:v
"""+++"""ATMOHO:
REGISTROS (HAYES):
Al igual que con los comandos en los registros existen unos específicos del modem y otros comunes, entre los comunes podemos ver:
S0 Número de llamadas que el modem espera antes de responder al teléfono. Si su valor es cero, el modem nunca responderá a las llamadas. Al recibirse una llamada aparecerá en pantalla la palabra RING. Entre dos RING podemos ejecutar un comando ATA para establecer una conexión.
S1 Contabilizador de llamadas recibidas. Cuando el modem está en modo de Comandos y recibe una llamada, el registro S1 almacena los RING recibidos. Tras 8 segundos sin recibirse un RING S1 se pone a 0.
S2 Código del carater que se utilizará para activar la secuencia de escape. Suele ser un +.
S3 Código del carácter de fin de línea. Suele ser un 13 (Enter).
S4 Código del carácter de avance de línea.
S5 Código del carácter borrado con retroceso (backspace).
S6 El registro S6 se establece cuanto tiempo, en segundos (1 a 255), esperará el modem antes de marcar un teléfono en los modos X0, X1 ó X3 (Blind Dial). Por defecto es 2 seg.
S7 Tiempo de espera para recibir portadora (seg). El registro S7 retorna el mensaje NO CARRIER y corta la conexión si, pasado el tiempo límite en él indicado, no se ha recibido la portadora (señal del otro modem). Si en este tiempo se recibe, se retorna el mensaje de CONNECT.
S8 Tiempo asignado a la pausa del Hayes.
S9 Tiempo de respuesta a la detección de la portadora, para activar la DCD (décimas de segundo). El registro S9 nos permite controlar el tiempo que debe estar activada la señal de portadora para reconocer su existencia. Conviene aumentar este valor en líneas ruidosas para detectarla con mayor fiabilidad.
S10 Tiempo máximo de pérdida de portadora para cortar la línea. Aumentando su valor permite al remoto cortar temporalmente la conexión sin que nuestro modem inicie la secuencia de desconexión. Si es 255, se asume que siempre hay portadora. Este tiempo debe ser mayor que el del registro 9.
S11 Con el registro S11 se especifica la duración y espaciado entre tonos de marcaje. La duración de cada tono es igual al espacio que lo separa del tono precedente y del posterior. Suele ser 75 nseg (6.6 dígitos por seg). A mayor valor, más lenta es la marcación.
S12 Determina el guard time; este es el tiempo mínimo que precede y sigue a un código de escape (+++) sin que se hayan trasnmitido o recibido datos (S12 x 20 miliseg). El registro S12 también indica el tiempo límite máximo entre dos caracteres de escape (+) consecutivos. El propósito de este registro es evitar salir del modo on-line por una secuencia coincidente con los caracteres de escape. Si S12 es 0, no será posible pasar al modo de comandos.
S14 El registro S14 informa de la configuración del modem:
bit 0: no utilizado
bit 1: Si es 0 eco local inhabilitado, si es 1 está habilitado (E1).
bit2: Si es 0, los códigos resultantes de los comandos del modem están habilitados (Q0). Si es 1, inhabilitados.
bit 3: Si es 0, las respuestas del modem serán numéricas (V0). Si es 1, serán verbales (V1). Debe estar en ambos casos, activado Q0.
bit 4 : Si es 0, está activado el modo Smart (el modem acepta comandos y retorna respuestas). Si es 1, lo está el transparente).
bit 5 :Si es 0, se marca por tonos, si es 1 por pulsos.
bit 6 : no utilizado
bit 7: Si es 0, está activado el modo de respuesta del modem, si es 1, el modem está preparado para realizar una llamada.
S18 Contiene la duración de los tests.
S21 El registro S21 nos proporciona la siguiente información:
bit 0: Si es 0, se utiliza un jack RJ-11 (&J0). Si es 1, un RJ-12 (&J1).
bit 1: no utilizado
bit 2: Si es 0, la señal CTS responde a los cambios de la señal RTS (&R0). Si es 1, la CTS permanece activada en modo datos, independientemente de la señal RTS (&R1).
bits ¾: Determinan como controlan la señal DTR. Puede ser:
0 0 &D0
1 0 &D1
0 1 &D2
1 1 &D3
bit 5: Si es 0, la señal DCD estará siempre activada (&C0). Si es 1, reflejará el estado de la conexión (&C1).
bit 6: Si es 0, la señal DSR queda activada permanentemente (&S0). Si es 1, depende del estado de la conexión (&S1).
bit 7: Si es 0, está activado el comando Y0. Si es 1, lo está el Y1. En este último caso, si el modem recibe una señal de break durante 1.6 seg o más, corta la conexión. Normalmente los modems, antes de cortar la conexión por un comando H o bajando la DTR (si está habilitado &D2), envían una señal de break.
S22 El registro S22 nos informa de:
bit 0/1: Controlan el volumen del altavoz del modem. Pueden ser:
0 0 nivel bajo (L0)
1 0 nivel bajo (L1)
0 1 nivel medio (L2)
1 1 nivel alto (L3)
bit 2/3: Control del altavoz. Pueden ser
-
0 inhabilitado (M0)
-
0 habil. hasta conex (M1)
-
1 siempre activado (M2)
-
1 habil. hasta conex. pero no durante el marcaje.(M3)
bit 4/5/6: Determinan el comportamiento y respuestas del modem. Pueden ser:
0 0 0 modo X0 de trabajo
0 0 1 modo X1 de trabajo
1 0 1 modo X2 de trabajo
0 1 1 modo X3 de trabajo
1 1 1 modo X4 de trabajo
bit 7: Establece el ratio de marcaje para pulsos. Es o para el sistema Americano (&P0) y 1 para el británico(&P1).
S23 El registro S23 informa de:
bit 0: Si es 0, se ignoran las peticiones de test remoto digital (&T5). Si es 1, se aceptan (&T4)
bit 1/2/3 : Especifican la velocidad de trabajo del modem. Pueden ser:
0 0 0 110 Bps
1 0 0 300 Bps
0 1 0 1200 Bps
1 1 0 2400 Bps
0 0 1 4800 Bps
1 0 1 9600 Bps
0 1 1 19200 Bps
bit 4/5 : Determinan la paridad. pueden ser:
0 0 par (even)
1 0 paridad a 0 (space)
0 1 impar (odd)
1 1 paridad a 1 (mark)
bit 6/7: determinan el tono de referencia. Pueden ser:
-
0 inhabilitado (&G0)normal
-
0 tono de 550 Hz (&G1)
-
1 tono de 1800 Hz (&G2)
-
1 reservado
S25 Tiempo mínimo para que el modem considere que la señal DTR ha cambiado. En los modos síncronos contiene el tiempo que, tras marcar el teléfono, se espera antes de comprobar el estado de la señal (0 a 255 seg).
S26 Tiempo de respuesta de la señal CTS ante la RTS.
S27 El registro S27 informa de:
bit 0/1/3 : especifican el modo de operación del modem. Pueden ser:
0 0 0 trabajo asíncrono (&M0, &Q0)
1 0 0 trabajo síncrono tras la llamada (&M1, &Q1).
0 1 0 soporte síncrono del terminal (&M2, &Q2).
1 1 0 Llamada manual síncrona (&M3, &Q3).
0 0 1 No utilizado.
1 0 1 Control de errores asíncrono (&Q5).
0 1 1 Modo asíncrono con buffer (&Q6).
1 1 1 no utilizado.
En cualquiera de los modos síncronos (&M1, &M2 ó &M3) la señal DCD refleja su estado real, independientemente del comando &C. Además, en modo síncrono y estado on-line, no se reconoce la secuencia de escape (+++).
bit 2: Tipo de línea. Si es conmutada será 0 (&L0). Si es dedicada es 1 (&L1). En líneas dedicadas. para establecer una conexión, se teclea en uno de los modems: AT&L1A, y en otro ATX1&L1D.
bit 4/5: Control del reloj en modo síncrono. Pueden ser:
0 0 el modem proporciona la señal de reloj de trxón. al pin EIA 15 (&X0).
1 0 El modem acepta una señal de sincronización externa (&X1)
0 1 El modem depende de una señal de reloj recibida (&X2).
bit 6: Si es 0 se trabaja en el modo V.22/V.22.bis (B0). Si es 1 en el modo Bell 212A (B1).
bit 7:no utilizado.
Cuando se asigna un valor a los registros S2, S3, S4 ó S5, si este valor es superior a 127, queda inhabilitada la función que cada uno de ellos representa. En el caso del registro S2, no será posible acceder al modo de comandos del modem desde su estado on-line, y sería por lo tanto necesario apagar la unidad o cortar la conexión para acceder a él. Con el registro S3 se impediría enviar comandos al modem (quedaría en el buffer del modem sin ser procesados). Con los registros S4 y S5 se dejarían de usar los códigos de avance de línea y borrado con retroceso, respectivamente.
Anteriormente hemos indicado dos comandos AT (ATSn? y ATSn=m) cuyo objetivo es leer y modificar, en aquellos que sea posible, los registros del modem. En algunos modems, al teclear ATSn, situamos un puntero en el registro indicado de forma que, con solo AT? leemos tal registro y con AT=m le asignamos un nuevo valor. Los caracteres `AT' los utiliza el modem para adecuarse a la velocidad y formato de línea del terminal.
Cuando escribimos los comandos AT se pueden ir concatenando sin necesidar de escribir para cada uno de ellos el prefijo AT. De esta forma, por ejemplo, cuando en un programa se pide una secuencia de inicialización del modem, se pueden incluir conjuntamente en una sola línea y, con o sin espacios entre ellos, todos los comandos que consideramos necesarios para la función que vaya a desempeñar el equipo.
Debemos tener presente que tecleando AT (ENTER) se borra el buffer de comandos del modem. Este tiene capacidad para 40 caracteres. De cualquier cadena de comandos no se pasan al buffer los espacios y los caracteres AT iniciales. Si tecleamos un comando sin su parámetro se interpretará como `0' (por ejemplo ATH es ATH0).
Es frecuente que en aquellos casos en los que el modem no se vaya a utilizar para responder llamadas externas, se haga que el registro S0 tomo el valor de 0, inhabilitando la modalidad de autoanswer. Con esto prevenimos que si el modem queda permanentemente conectado a la línea telefónica y llaman, este responda y descuelgue.
-
PASOS PARA EL ESTABLECIMIENTO DE UNA CONEXIÓN.
Vamos a describir brevemente los procesos que acontecen al establecer una comunicación a través del modem:
Detección del tono de línea: El modem dispone de un detector del tono de línea. Este se activa si dicho tono (energía recibida por el modem) perdura más de un segundo. De no ser así, sea porque ha pasado un segundo sin detectar nada o no se ha mantenido activado ese tiempo el tono, se envía al ordenador el mensaje de NO DIALTONE.
Marcación del teléfono: Si no se indica el modo de llamada (pulsos o tonos), primero se intenta con tonos y si el detector de tono sigue activado, se pasa a llamar por pulsos. En el periodo de tiempo entre cada dígito del teléfono, el IDP (interdigit pause), se continúa atendiendo al detector de tono. Si en algún IDP el detector se activa, la llamada se termina y se retorna un mensaje de BUSY. Una vez terminada la marcación, se vuelve a atender al detector de tono para comprobar sa hay conexión. En este caso pueden suceder varias cosas.
-
Rings de espera. Se detectan y contabilizan los rings que se reciban, y se comparan con el registro S0 del modem. Si se excede del valor allí contenido se retorna el mensaje de NO ANSWER.
-
Si hay respuesta, se activa un detector de voz/señal; la detección de la respuesta de otro modem se realiza a través del filtro de banda alta (al menos debe estar activo 2 segundos).
-
Si se reciben más de 7 rings en menos de 5 segundos se retorna el mensaje de BUSY.
-
Si el detector de tono fluctúa en un periodo de 2 segundos, se retorna un mensaje de VOICE. El mensaje de NO ANSWER puede obtenerse si se produce un intervalo de silencio después de la llamada.
Establecer el enlace. Implica una secuencia de procesos que dependen de que se esté llamando o se reciba la llamada. Si se está llamando serán:
-
fijar la recepción de datos a 1
-
seleccionar el modo de baja velocidad
-
activar 0.6 seg. el tono de llamada y esperar señal de línea.
-
desactivar señal de tono
-
seleccionar modo de alta velocidad
-
esperar a recibir unos, depués transmitir unos y activar la transmisión.
-
analizar los datos recibidos para comprobar que hay conexión. Si ésta no se consigue en el tiempo límite fijado en el registro S7 se da el mensaje de NO CARRIER; en caso contrario, se dejan de enviar unos, se activa la señal de conexión, se desbloquea la recepción da datos y se da el mensaje de CONNECT. La velocidad del puerto se ajusta a la velocidad del modem remoto.
Si se está recibiendo una llamada la secuencia será:
-
selección del modo respuesta
-
desactivar el scrambler
-
seleccionar el modo de baja velocidad y activar el tono de respuesta durante 3.3 seg.
-
esperar portadora; si no se recibe activar el transmisor, el modo de alta velocidad y el tono a 1800 Hz.
-
esperar el tiempo indicado en S7; si no hay conexión da el mensaje de NO CARRIER; si la hay indica CONNECT, se activa el transmisor, el detector de portadora y la señal de conexión
INDICE
1 INTRODUCCION.
26
EL MODEM
43
Descargar
Enviado por: | Manolo Oliver |
Idioma: | castellano |
País: | España |