El hardware del puerto paralelo

El puerto paralelo de una típica PC utiliza un conector hembra de tipo D de 25 pines (DB-25 S), éste es el caso más común, sin embargo es conveniente mencionar los tres tipos de conectores definidos por el estándar IEEE 1284, el primero, llamado 1284 tipo A es un conector hembra de 25 pines de tipo D, es decir, el mencionado al principio.

El segundo conector se llama 1284 tipo B que es un conector de 36 pines de tipo centronics y lo encontramos en la mayoría de las impresoras; el tercero se denomina 1284 tipo C, se trata de un conector similar al 1284 tipo B pero más pequeño, además se dice que tiene mejores propiedades eléctricas y mecánicas, éste conector es el recomendado para nuevos diseños. La siguiente tabla describe la función de cada pin del conector 1284 tipo A:

Pin E/S Polaridad Activa Descripción
1 Salida 0 Strobe
2-9 Salida -

Línea de Datos(bit 0/pin 2, bit 7/pin9)

10 Entrada 0 Línea acknowledge(activa cuando el sistema remoto toma datos)
11 Entrada 0 Línea busy(si está activa, el sistema remoto no acepta datos)
12 Entrada 1 Línea Falta de papel(si está activa, falta papel en la impresora)
13 Entrada 1 Línea Select(si está activa, la impresora se ha seleccionado)
14 Salida 0 Línea Autofeed(si está activa, la impresora inserta una nuevalínea por cada retorno de carro)
15 Entrada 0 Línea Error(si está activa, hay un error en la impresora)
16 Salida 0 Línea Init(Si se mantiene activa por al menos 50micro-segundos, ésta señalautoinicializa la impresora)
17 Salida 0 Línea Select input(Cuando está inactiva, obliga a laimpresora a salir de línea)
18-25 - - Tierra eléctrica

Configuración del puerto paralelo estándar

 

Observe que el puerto paralelo tiene 12 líneas de salida (8 líneas de datos, strobe, autofeed, init, y select input) y 5 de entrada (acknowledge, busy, falta de papel, select y error). El estándar IEEE 1284 define cinco modos de operación:

  1. Modo compatible
  2. Modo nibble
  3. Modo byte
  4. Modo EPP, puerto paralelo ampliado
  5. Modo ECP, puerto de capacidad extendida 

El objetivo del estándar es diseñar nuevos dispositivos que sean totalmente compatibles con el puerto paralelo estándar (SPP) definido originalmente por la IBM (en éste artículo trataré solamente el modo compatible). Hay tres direcciones de E/S asociadas con un puerto paralelo de la PC, éstas direcciones pertenecen al registro de datos, el registro de estado y el registro de control. El registro de datos es un puerto de lectura-escritura de ocho bits. Leer el registro de datos (en la modalidad unidireccional) retorna el último valor escrito en el registro de datos. Los registros de control y estado proveen la interface a las otras líneas de E/S. La distribución de las diferentes señales para cada uno de los tres registros de un puerto paralelo esta dada en las siguientes tablas:

Se puede observar una serie de números de dos dígitos (ocho en total), se trata del volcado de memoria que empieza en la dirección 40:0008h. Los primeros seis pares de números representan las direcciones base para los puertos paralelo instalados, en la imagen de arriba se aprecia que el único puerto paralelo de mi máquina está en la dirección 0x378h (78 03). Los números están invertidos porque Intel almacena tal información en un formato de "byte de bajo orden - byte de alto orden". Una vez que obtenemos la información deseada cerramos el programa Debug.exe simplemente tecleando la letra q y presionando la tecla entrar. Para cerrar la ventana de Símbolo de MS-DOS tecleamos la palabra exit y presionamos la tecla entrar.