EL PUERTO PARALELO DE LA IBM PC

Document Sample
EL PUERTO PARALELO DE LA IBM PC Powered By Docstoc
					Arquitectura de Computadoras II     El puerto de impresora




          EL PUERTO PARALELO DE LA IBM PC




 ITSLP                                M.I. Carlos E. Canto Quintal
Arquitectura de Computadoras II                                               El puerto de impresora

                       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
     1F1h
                                       Puertos usados por la PC
                512
     000
                                                Usados en la lógica de
                                                   la tarjeta madre

 ITSLP                                                                          M.I. Carlos E. Canto Quintal
Arquitectura de Computadoras II                                                  El puerto de impresora

      Puerto
                Asignación
                                                                          Mapa de puertos de
      (hex)
      000-00F   Controlador DMA
                                                                          Entrada/Salida de
      010-01F   Controlador DMA (PS/2)
                                                                             una IBM PC
      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

 ITSLP                                                                             M.I. Carlos E. Canto Quintal
Arquitectura de Computadoras II                                                    El puerto de impresora

      Puerto
                Asignación
                                                                            Mapa de puertos de
      (hex)
      2B0-2DF   EGA/Video
                                                                            Entrada/Salida de
      2E2-2E3   Adaptador de adquisición de datos (AT)                         una IBM PC
      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


 ITSLP                                                                               M.I. Carlos E. Canto Quintal
Arquitectura de Computadoras II                      El puerto de impresora




                         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
Arquitectura de Computadoras II                      El puerto de impresora




                         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
Arquitectura de Computadoras II                                     El puerto de impresora




                         El puerto de la impresora
  Distribución de las terminales del puerto de la impresora en el
  conector estándar DB25-hembra

                                              Datos
                                             STROBE
                                              BUSY
                                   Puerto     ACKNLG
                                    De la
                                     PC       SLCT IN   Impresora
                                  Conector
                                              SEL
                                   DB25H
                                              INITIAL
                                               PE
                                              ERROR

                                             AUTOFEED



 ITSLP                                                                M.I. Carlos E. Canto Quintal
Arquitectura de Computadoras II                      El puerto de impresora




                         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
Arquitectura de Computadoras II                                    El puerto de impresora



                                      Configuración del puerto
                                         paralelo estándar
     Patita           E/S         Polaridad activa         Descripción
         1           Salida              0           Strobe
     2~9             Salida              -           Líneas de datos
      10            Entrada              0           Línea acknowledge
      11            Entrada              0           Línea busy
      12            Entrada              1           Línea Falta de papel
                                                     (




      13            Entrada              1           Línea Select
      14             Salida              0           Línea Autofeed

      15            Entrada              0           Línea Error

      16             Salida              0           Línea Init
      17             Salida              0           Línea Select input
    18 ~ 25            -                 -           Tierra eléctrica
 ITSLP                                                                  M.I. Carlos E. Canto Quintal
Arquitectura de Computadoras II                        El puerto de impresora



                    El Registro de datos
                        PIN#
                                  Es de tipo latch de 8 bits, que
         D0               2       puede ser leído y escrito desde
         D1               3       el procesador.
         D2               4
                                  Es el registro donde el
         D3               5

         D4
                                  procesador, en operaciones de
                          6

         D5               7
                                  salida (OUT), pone el dato que
         D6               8
                                  se quiere enviar a la impresora
         D7               9       y su dirección coincide con la
                                  dirección base del puerto
                    CONECTOR
                     DB25-H
                                  paralelo ( 0x 378 en LPT 1 ).


 ITSLP                                                   M.I. Carlos E. Canto Quintal
Arquitectura de Computadoras II                          El puerto de impresora



                        Registro de datos
                                   Lectura/Esc
     Dirección          Nombre                   Bit #      Propiedades
                                       ritura
      Base + 0         Puerto de    Escritura    Bit 7          Dato 7
                          datos                  Bit 6          Dato 6
                                                 Bit 5          Dato 5
                                                 Bit 4          Dato 4
                                                 Bit 3          Dato 3
                                                 Bit 2          Dato 2
                                                 Bit 1          Dato 1
                                                 Bit 0          Dato 0




 ITSLP                                                     M.I. Carlos E. Canto Quintal
Arquitectura de Computadoras II                                  El puerto de impresora



         El Registro de Estado (Status)
    El registro de estado indica la
    situación actual de la impresora
    conectada al puerto, en especial la          S7                   11      BUSY
    ocurrencia de posibles errores, de           S6                   10      ACK
    acuerdo con los niveles de tensión           S5                  12       PE
    que tengan las líneas ACK, BSY,
                                                 S4                  13       SEL
    PAP y OF/ON , lo que permite
    controlar el comportamiento de la            S3                  15       ERR
    impresora.                                   S2

    Se trata de un registro de entrada           S1
    (Lectura) de información, su                 S0
    dirección se obtiene sumando 1 a la
    dirección base del puerto (0x379 en                          CONECTOR
    LPT1).                                                       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
Arquitectura de Computadoras II                               El puerto de impresora




                    Registro de estado
    Dirección       Nombre        Lectura/Escritura   Bit #        Propiedades
     Base + 1       Puerto de       Sólo Lectura      Bit 7             Busy
                     estado                           Bit 6       Acknowledge
                                                      Bit 5       Falta de papel
                                                      Bit 4           Select In
                                                      Bit 3             Error
                                                      Bit 2         IRQ (Not)
                                                      Bit 1         Reservado
                                                      Bit 0         Reservado




 ITSLP                                                          M.I. Carlos E. Canto Quintal
Arquitectura de Computadoras II                              El puerto de impresora



                          Registro de Control
      permite inicializar el puerto y controlar la transferencia.
      4 líneas bidireccionales



         Permite puerto                                 17               SELECT IN
         bidireccional                                                    INIT
                                                        16
                                                        14                AUTOLF
 Permite IRQ a
                                                        1                STROBE
 través de ACK
                          C3
                          C2
                          C1
                          C0




 ITSLP                                                         M.I. Carlos E. Canto Quintal
Arquitectura de Computadoras II                                 El puerto de impresora


                   Registro de control
  Dirección       Nombre            Lectura/Escritura   Bit #        Propiedades
   Base + 2     Puerto de         Lectura/Escritura     Bit 7    No usado
                control                                 Bit 6    No usado
                                                                 Permite puerto
                                                        Bit 5    bidireccional
                                                                 Permite IRQ a
                                                        Bit 4    través de la
                                                                 línea acknowledge
                                                                 Selecciona
                                                        Bit 3    impresora
                                                                 Inicializa
                                                        Bit 2    impresora
                                                                 Nueva línea
                                                        Bit 1    automática
                                                        Bit 0    Strobe


 ITSLP                                                            M.I. Carlos E. Canto Quintal
Arquitectura de Computadoras II                                         El puerto de impresora



             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.


                Puerto    R. de salida   R. de estado   R. de control   IRQ


                 LPT1         378            379            37A          7

                 LPT2         278            279            27A          5

                 LPT3         3BC            3BD            3BE          7


       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
Arquitectura de Computadoras II    El puerto de impresora




  Variables del BIOS para el puerto paralelo




 ITSLP                               M.I. Carlos E. Canto Quintal
Arquitectura de Computadoras II                                  El puerto de impresora




      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
Arquitectura de Computadoras II                                 El puerto de impresora




           Puerto paralelo estándar
  •   Los diseñadores de la 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
 Arquitectura de Computadoras II                                       El puerto de impresora


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
Arquitectura de Computadoras II                  El puerto de impresora




                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
Arquitectura de Computadoras II   El puerto de impresora




 ITSLP                              M.I. Carlos E. Canto Quintal
Arquitectura de Computadoras II   El puerto de impresora




 ITSLP                              M.I. Carlos E. Canto Quintal

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:44
posted:11/23/2011
language:Spanish
pages:23