240 likes | 457 Views
El puerto de impresora. Arquitectura de Computadoras II. EL PUERTO PARALELO DE LA IBM PC. ITSLP. M.I. Carlos E. Canto Quintal. El puerto de impresora. Arquitectura de Computadoras II. Mapa de puertos de Entrada y Salida en la IBM PC. FFFFh.
E N D
El puerto de impresora Arquitectura de Computadoras II EL PUERTO PARALELO DE LA IBM PC ITSLP M.I. Carlos E. Canto Quintal
El puerto de impresora Arquitectura de Computadoras II Mapa de puertos de Entrada y Salida en la IBM PC FFFFh La IBM PC utiliza las primeras 1024 direcciones del espacio de puertos para el sistema . Estas direcciones están entre 0000 y 03FFh 64512 Direcciones no usadas por la PC Disponibles en los slots de expansión 3FFh 512 Puertos usados por la PC 1F1h 512 000 Usados en la lógica de la tarjeta madre ITSLP M.I. Carlos E. Canto Quintal
Puerto (hex) Asignación 000-00F Controlador DMA 010-01F Controlador DMA (PS/2) 020-02F Controlador maestro programable de interrupciones (PIC) 030-03F PIC esclavo 040-05F Temporizador programable de intervalos (PIT) 060-06F Controlador del teclado 070-071 Reloj en tiempo real 080-083 Registro de página DMA 090-097 Seleccionador programable de opciones (PS/2) 0A0-0AF PIC #2 0C0-0CF DMAC #2 0E0-0EF reservado 0F0-0FF Coprocesador matemático, controlador de disco PCJr 100-10F Seleccionador programable de opciones (PS/2) 110-16F LIBRE 170-17F Disco duro 1 (AT) 180-1EF LIBRE 1F0-1FF Disco duro 0 (AT) 200-20F Adaptador de juegos (Joystick) 210-217 Puertos de tarjetas de expansión 220-26F LIBRE 278-27F Puerto paralelo 3 280-2A1 LIBRE 2A2-2A3 Reloj El puerto de impresora Arquitectura de Computadoras II Mapa de puertos de Entrada/Salida de una IBM PC ITSLP M.I. Carlos E. Canto Quintal
Puerto (hex) Asignación 2B0-2DF EGA/Video 2E2-2E3 Adaptador de adquisición de datos (AT) 2E8-2EF Puerto serie COM4 2F0-2F7 Reservado 2F8-2FF Puerto serie COM2 300-31F Adaptador de prototipos, periscopio para depurar hardware 320-32F LIBRE 330-33F Reservado para XT/370 340-35F LIBRE 360-36F Red (network) 370-377 Controlador de disco flexible 378-37F Puerto paralelo 2 380-38F Adaptador SDLC 390-39F Adaptador de Cluster 3A0-3AF reservado 3B0-3BF Adaptador monocromo 3BC-3BF Puerto paralelo 1 3C0-3CF EGA/VGA 3D0-3DF Adaptador Gráfico en Color (CGA) 3E0-3EF Puerto serie COM3 3F0-3F7 Controlador de disco flexible 3F8-3FF Puerto serie COM1 El puerto de impresora Arquitectura de Computadoras II Mapa de puertos de Entrada/Salida de una IBM PC ITSLP M.I. Carlos E. Canto Quintal
El puerto de impresora Arquitectura de Computadoras II El puerto de la impresora • El puerto paralelo tiene una estructura muy simple; consta de tres registros: • de Datos. • de Control • de Estado • Todas las señales que intervienen en el puerto tienen asociado un bit en uno de esos registros, de acuerdo con las funciones asignadas a cada línea en particular. ITSLP M.I. Carlos E. Canto Quintal
El puerto de impresora Arquitectura de Computadoras II El puerto de la impresora Distribución de las terminales del puerto de la impresora en el conector estándar DB25-hembra ITSLP M.I. Carlos E. Canto Quintal
STROBE ACKNLG SLCT IN INITIAL AUTOFEED El puerto de impresora Arquitectura de Computadoras II El puerto de la impresora Distribución de las terminales del puerto de la impresora en el conector estándar DB25-hembra Puerto De la PC Conector DB25H Impresora Datos BUSY SEL PE ERROR ITSLP M.I. Carlos E. Canto Quintal
El puerto de impresora Arquitectura de Computadoras II El puerto de la impresora SECUENCIA DE SEÑALES DE CONTROL Y DE STATUS PARA TRANMITIR DATOS A LA IMPRESORA DATO STROBE BUSY ACKNLG ITSLP M.I. Carlos E. Canto Quintal
El puerto de impresora Arquitectura de Computadoras II Configuración del puerto paralelo estándar ITSLP M.I. Carlos E. Canto Quintal
PIN# D0 2 D1 3 D2 4 D3 5 D4 6 D5 7 D6 8 D7 9 CONECTOR DB25-H El puerto de impresora Arquitectura de Computadoras II El Registro de datos Es de tipo latch de 8 bits, que puede ser leído y escrito desde el procesador. Es el registro donde el procesador, en operaciones de salida (OUT), pone el dato que se quiere enviar a la impresora y su dirección coincide con la dirección base del puerto paralelo ( 0x 378 en LPT 1 ). ITSLP M.I. Carlos E. Canto Quintal
El puerto de impresora Arquitectura de Computadoras II Registro de datos ITSLP M.I. Carlos E. Canto Quintal
El puerto de impresora Arquitectura de Computadoras II El Registro de Estado (Status) El registro de estado indica la situación actual de la impresora conectada al puerto, en especial la ocurrencia de posibles errores, de acuerdo con los niveles de tensión que tengan las líneas ACK, BSY, PAP y OF/ON , lo que permite controlar el comportamiento de la impresora. Se trata de un registro de entrada (Lectura) de información, su dirección se obtiene sumando 1 a la dirección base del puerto (0x379 en LPT1). S7 BUSY 11 ACK S6 10 PE S5 12 S4 13 SEL S3 15 ERR S2 S1 S0 CONECTOR DB25-H Con las interrupciones habilitadas, una transición en el pin 10 (ACK) dispara la interrupción ITSLP M.I. Carlos E. Canto Quintal
El puerto de impresora Arquitectura de Computadoras II Registro de estado ITSLP M.I. Carlos E. Canto Quintal
C3 C2 C1 C0 El puerto de impresora Arquitectura de Computadoras II Registro de Control permite inicializar el puerto y controlar la transferencia. 4 líneas bidireccionales Permite puerto bidireccional SELECT IN 17 INIT 16 AUTOLF 14 Permite IRQ a través de ACK 1 STROBE ITSLP M.I. Carlos E. Canto Quintal
El puerto de impresora Arquitectura de Computadoras II Registro de control ITSLP M.I. Carlos E. Canto Quintal
El puerto de impresora Arquitectura de Computadoras II Direcciones de los registros • La dirección del registro de salida de los puertos 0, 1 y 2, denominadas dirección-base del adaptador, están contenidas respectivamente en las direcciones 00408, 0040A y 0040C de la memoria de datos de la ROM BIOS. • Estas direcciones de base son inicializadas a cero si no existe el adaptador correspondiente. las direcciones e interrupción usadas por cada puerto, aunque esta asignación no es siempre consistente, y debería ser investigada. ITSLP M.I. Carlos E. Canto Quintal
El puerto de impresora Arquitectura de Computadoras II Variables del BIOS para el puerto paralelo ITSLP M.I. Carlos E. Canto Quintal
El puerto de impresora Arquitectura de Computadoras II Servicios BIOS de puerto paralelo • Los servicios BIOS relacionados con el puerto paralelo, denominados servicios de impresora, se gestionan mediante el vector de interrupción 23 (17h); este servicio tiene 3 subservicios numerados del 0 al 2, que se solicitan a través del registro AH, mientras que el número de puerto debe indicarse en el registro DX. Subservicio 0: Envía un byte a la impresora Subservicio 1: Inicializar el puerto paralelo Subservicio 2: Leer el registro de estado del puerto ITSLP M.I. Carlos E. Canto Quintal
El puerto de impresora Arquitectura de Computadoras II Puerto paralelo estándar • Los diseñadores dela PC no pensaron en la posibilidad de utilizar los puertos paralelo para recibir datos (no existe un subservicio BIOS para leer en el puerto paralelo); eran solo de salida. Este puerto original es denominado SPP ("Standard Parallel Port"), y su modo de operación modo compatible. • Aunque originalmente no estaban preparados para recibir datos, mediante ciertos artificios se consiguió que los puertos SPP también pudieran recibir datos, un nibble (4 bits) cada vez. Este tipo de operación, 8 bits de salida y 4 de entrada se denomina modo nibble. • Nota: Los puertos actuales de características mejoradas tienen también los modos compatible y nibble para compatibildad con el software anterior. ITSLP M.I. Carlos E. Canto Quintal
El puerto de impresora Arquitectura de Computadoras II Usando el Debug para determinar la dirección base del puerto (s) de impresora presente(s) en el sistema • Para trabajar con el puerto paralelo necesitamos en primer lugar conocer la dirección base asignada por el BIOS, podemos utilizar el Debug , en donde tecleamos sin dejar espacios en blanco D040:08L8 y presionamos la tecla entrar, entonces nos indica en una serie de números la(s) dirección(es) para el (los) puerto(s) paralelo(s) disponibles en nuestro sistema. Dirección base del puerto de impresora presente en la PC:0378h ITSLP M.I. Carlos E. Canto Quintal
El puerto de impresora Arquitectura de Computadoras II Acceso restringido a puertos Problema: Los sistemas operativos Windows 2000 y XP no permiten que las aplicaciones accesen directamente el puerto paralero, i.e. instrucciones OUT, IN Solución: Afortunadamente es posible bajar de Internet un driver que permite programar el puerto paralelo como sigue: 1. Consulte Driver, baje y descomprima el archivo ZIP 2. Copie el archivo userport.sys al directorio C:\WINDOWS\SYSTEM32\DRIVERS 3. Ejecute el programa userport.exe (acepte los defaults) 4. Ejecute sus programas de ensamblador ITSLP M.I. Carlos E. Canto Quintal
El puerto de impresora Arquitectura de Computadoras II ITSLP M.I. Carlos E. Canto Quintal
El puerto de impresora Arquitectura de Computadoras II ITSLP M.I. Carlos E. Canto Quintal