Introduccion
Existen dos metodos, de transmistir un dato hacia un periferico basicamente ( Serie / Paralelo).
El envio de datos en forma paralela, es el que se usa en una impresora, basicamente, y actualmente tiene 5 modos
Ordenador – Periférico :Compatibility Mode : “Centronics” en modo standard.
Periférico – Ordenador : Byte Mode : 8 bits al mismo tiempo usando líneas de datos, algunas veces puede funcionar como un puerto bi-direccional.
Bi-direccional
EPP : Puerto Paralelo Ampliado, usado principalmente por periféricos como: CD-ROM, cintas, discos duros, adaptadores de redes, etc. excluyendo las impresoras.
ECP : Puerto con Capacidad Extendida, usado principalmente por scanners e impresoras de nueva generación
Hardware
Primero vamos a ver su Hardware Respectivo:
Donde se diferencian claramente, 3 tipos de Letras, C, S, D. Cada una de estas se refieren al pin respectivo del registro que usan:
C: Hace Referencia al Registro de Control
S: Registro de Estado
D: Registro de Datos
Tabla general del puerto paralelo
DB25
|
Señal
|
Registro
|
Tipo
|
Activo
|
Sentido
|
1
|
Control 0
|
C0 –
|
Inout
|
Bajo
|
Invertido
|
2
|
Dato 0
|
D0
|
Out
|
Alto
|
Directo
|
3
|
Dato 1
|
D1
|
Out
|
Alto
|
Directo
|
4
|
Dato 2
|
D2
|
Out
|
Alto
|
Directo
|
5
|
Dato 3
|
D3
|
Out
|
Alto
|
Directo
|
6
|
Dato 4
|
D4
|
Out
|
Alto
|
Directo
|
7
|
Dato 5
|
D5
|
Out
|
Alto
|
Directo
|
8
|
Dato 6
|
D6
|
Out
|
Alto
|
Directo
|
9
|
Dato 7
|
D7
|
Out
|
Alto
|
Directo
|
10
|
Estado 6
|
S6
|
In
|
Alto
|
Directo
|
11
|
Estado 7
|
S7-
|
In
|
Bajo
|
Invertido
|
12
|
Estado 5
|
S5
|
In
|
Alto
|
Directo
|
13
|
Estado 4
|
S4
|
In
|
Alto
|
Directo
|
14
|
Control 1
|
C1-
|
Inout
|
Bajo
|
Invertido
|
15
|
Estado 3
|
S3
|
In
|
Alto
|
Directo
|
16
|
Control 2
|
C2
|
Inout
|
Alto
|
Directo
|
17
|
Control 3
|
C3-
|
Inout
|
Bajo
|
Invertido
|
18-25
|
Tierra
|
LOS REGISTROS
Para usar este puerto, se debe tener en cuenta la direccion Base del puerto, que se encuentran en la Bios en las direcciones
0000:0408 | Dirección base para LPT1 |
0000:040A | Dirección base para LPT2, generalment 378H |
0000:040C | Dirección base para LPT3 |
0000:040E | Dirección base para LPT4 |
Ahora teniendo esta direccion podemos ir a los demas registros siguiendo el siguiente orden:
Registro Datos | Base |
Registro Estado | Base + 1 |
Registro Control | Base + 2 |
REGISTRO De DATOS
Usado para enviar y recibir datos de 8 Bits, segun este configurado, el 5to bit del Registro de control, o la Bios (Esto se configura en el Setup)
Para el puerto paralelo, casi siempre es 378H (LPT2)
REGISTRO de ESTADO
~S7 | S6 | S5 | S4 | S3 |
Tiene el Ultimo Bit negado, y solo recibe 5 Bits … en el LPT2 su direccion es 379H. Solo basta saber que por aqui siempre se pueden recibir datos
sus bits tambien sirven para que cuando haya comunicacion con una impresora, sirvan para indicar si el puerto esta ocupado o no. Para este caso se usa:
S3 | Error (FAULT) |
S4 | SEL |
S5 | Papel Vacio |
S6 | Acuse de Recibo (ACKNOWLEDGE) |
~S7 | BUSSY (Ocupado) |
REGISTRO DE CONTROL
~C3 | C2 | ~C1 | ~C0 |
Al igual que el Registro de Estado, sirve para establecer comunicación con la impresora, pero además de eso, también nos sirve, para indicar si queremos que la impresora sea Bi-direccional. Para el LPT2 su dirección es 37AH
Pin
|
Nombre
|
Bit
|
~C0
|
Strobe |
Bit 0
|
~C1
|
Nueva línea automática |
Bit 1
|
C2
|
Inicializa impresora |
Bit 2
|
~C3
|
Selecciona impresora |
Bit 3
|
Permite IRQ através de la línea acknowledge |
Bit 4
|
|
Permite puerto Bidireccional |
Bit 5
|