Puerto paralelo
# Puerto paralelo

Un puerto paralelo es una interfaz entre un computador y un periférico, cuya principal característica es que los bits de datos viajan juntos, enviando un paquete de byte a la vez. Es decir, se implementa un cable o una vía física para cada bit de datos formando un bus. Mediante el puerto paralelo podemos controlar también periféricos como focos, motores entre otros dispositivos.

El cable paralelo es el conector físico entre el puerto paralelo y el dispositivo periférico. En un puerto paralelo habrá una serie de bits de control en vías aparte que irán en ambos sentidos por caminos distintos.

En contraposición al puerto paralelo está el puerto serie, que envía los datos bit a bit por el mismo hilo.

## Puerto paralelo Centronics

El puerto paralelo de las computadoras, de acuerdo a la norma Centronics, está compuesto por un bus de comunicación bidireccional de 8 bits de datos, además de un conjunto de líneas de protocolo. Las líneas de comunicación cuentan con un retenedor que mantiene el último valor que les fue escrito hasta que se escribe un nuevo dato, las características eléctricas son:

* Tensión de nivel alto: 3,3 o 5 V.
* Tensión de nivel bajo: 0 V.
* Intensidad de salida máxima: 2,6 mA.
* Intensidad de entrada máxima: 24 mA.

Los sistemas operativos basados en DOS y compatibles gestionan las interfaces de puerto paralelo con los nombres LPT1, LPT2 y así sucesivamente (LPT significa Line Print Terminal), mientras que los de tipo Unix los nombran como /dev/lp0, /dev/lp1 o /dev/parport0, /dev/parport1, y demás. Las direcciones base de los dos primeros puertos son:

* LPT1 = 0x378.
* LPT2 = 0x278

| Nombre del puerto | Interrupción # | Dirección de inicio E/S | Dirección final de E/S |
| - | - | - | - |
| LPT1 | IRQ 7 | 0x378 | 0x37f |
| LPT2 | IRQ 5 | 0x278 | 0x27f |
| LPT3 | IRQ 7 | 0x3bc | 0x3bf |

Para puertos de más de han recomendado a la dirección:

| Nombre del puerto | Interrupción # | Dirección de inicio E/S | Dirección final de E/S |
| - | - | - | - |
| LPT4 | IRQ ? | 0x27C | 0x27F |
| LPT5 | IRQ ? | 0x26C | 0x26F |
| LPT6 | IRQ ? | 0x268 | 0x26B |

La estructura consta de tres registros: de control, de estado y de datos.

* El registro de control es un bidireccional de 4 bits, con un bit de configuración que no tiene conexión al exterior, su dirección en el LPT1 es 0x37A.
* El registro de estado, se trata de un registro de entrada de información de 5 bits, su dirección en el LPT1 es 0x379.
* El registro de datos, se compone de 8 bits, es bidireccional. Su dirección en el LPT1 es 0x378.

### Contactos

Los pines del puerto paralelo con conector DB25 son:

| Pin No (DB25) | Pin No (36 pin) | Nombre de la señal | Dirección | Registro - bit | Invertidas |
| - | - | - | - | - | - |
| 1 | 1 | Strobe | E/S | Control-0 | Si |
| 2 | 2 | Data0 | Salida | Data-0 | No |
| 3 | 3 | Data1 | Salida | Data-1 | No |
| 4 | 4 | Data2 | Salida | Data-2 | No |
| 5 | 5 | Data3 | Salida | Data-3 | No |
| 6 | 6 | Data4 | Salida | Data-4 | No |
| 7 | 7 | Data5 | Salida | Data-5 | No |
| 8 | 8 | Data6 | Salida | Data-6 | No |
| 9 | 9 | Data7 | Salida | Data-7 | No |
| 10 | 10 | Ack | Entrada | Status-6 | No |
| 11 | 11 | Busy | Entrada | Status-7 | Si |
| 12 | 12 | Paper-Out | Entrada | Status-5 | No |
| 13 | 13 | Select | Entrada | Status-4 | No |
| 14 | 14 | Linefeed | E/S | Control-1 | Si |
| 15 | 15 | Error | Entrada | Status-3 | No |
| 16 | 16 | Reset | E/S | Control-2 | No |
| 17 | 17 | Select-Printer | E/S | Control-3 | Si |
| 18-25 | 18-25 | Tierra | - | - | - |

Las líneas invertidas toman valor verdadero cuando el nivel lógico es bajo. Si no están invertidas, entonces el nivel lógico alto es el valor verdadero.

El pin 25 en el conector DB25 podría no estar conectado a la tierra en computadoras modernas.

## Puerto paralelo IDE

No obstante existe otro puerto paralelo usado masivamente en los ordenadores: el puerto paralelo IDE, también llamado PATA (Parallel ATA), usado para la conexión de discos duros, unidades lectoras/grabadoras (CD-ROM, DVD), unidades magneto-ópticas, unidades ZIP y SuperDisk, entre la placa base del ordenador y el dispositivo.

## Puerto paralelo SCSI

Un tercer puerto paralelo, muy usado en los ordenadores Apple referencia para el uso en el computador y sirve como un puerto serial el hardware 1.5 para PC/Commodore Amiga.

