El Puerto Paralelo

download El Puerto Paralelo

of 7

Transcript of El Puerto Paralelo

  • 7/21/2019 El Puerto Paralelo

    1/7

    EL PUERTO DE IMPRESORA

    Los ordenadores PC han estandarizado un tipo de interfaz para la comunicacin con la impresora, conocidanormalmente como CENTRONICS. Esta interfaz es capaz de eniar caracteres a la impresora de forma

    paralelo. Cada car!cter est! codificado en un "#te, del cu!l cada "it se transmite por un terminal diferente.

    E$isten otros terminales %ue conectan ordenador e impresora, %ue siren para intercam"iar informacin de

    control # de estado, a fin de implementar un sencillo protocolo.

    Para realizar esta interfaz, los PCs disponen de unos elementos hard&are espec'ficos, denominados puertos deimpresora o tam"i(n puertos paralelo.

    En un PC pueden instalarse arios de estos puertos %ue se distin)uen entre s' con los nom"res LPT*, LPT+ #

    LPT -en al)unos casos tam"i(n LPT/. Todos ellos son id(nticos, salo %ue tienen asi)nadas diferentes

    direcciones en el mapa de entrada0salida.

    Cada uno de estos puertos ocupa tres direcciones del mapa de E0S1

    Puerto de Datos1 2e 3 "its, es donde la CP4 escri"e los datos %ue se en'an a la impresora-caracteres/.

    Puerto de Estado1 Re)istro de 3 "its de donde la CP4 puede conocer diersos aspectos del estado dela impresora -apa)ada, sin papel, etc/. Se usan slo 5 de los 3 "its.

    Puerto de Control1 Re)istro de 3 "its donde la CP4 puede escri"ir diersas se6ales %ue reconoce laimpresora -alidacin de datos, inicializacin, etc/. Se usan "its.

    Estos tres re)istros ocupan posiciones consecutias, por lo %ue "asta con especificar la primera de ellas. El

    puerto de datos ser! el puerto "ase.

    La RO789IOS de los PCs contiene pro)ramas elementales para el mane:o de estos puertos. En primer lu)ar,durante el proceso de arran%ue del ordenador, se detecta su presencia # se almacenan sus direcciones "ase enuna zona de aria"les situada en el se)mento ;;;< -zona de aria"les del 9IOS/. En esta zona se pueden

    encontrar los si)uientes datos1

    Printer_Base1 En los offsets;;;3

  • 7/21/2019 El Puerto Paralelo

    2/7

    LPT* ;9Ch ;92h ;9Eh

    LPT+ ;?3h ;?@h ;?=h

    LPT ;+?3h ;+?@h ;+?=h

    Ta"la *

    Seales de la intera! Centroni"s

    El puerto paralelo, utilizado en )eneral para el control de la impresin, mane:a las se6ales %ue se muestran en

    la ta"la si)uiente. 2e todas ellas, las %ue normalmente interienen en el protocolo de comunicacin entre el

    PC # la impresora son 94SB # STRO9E. =l)unas impresoras pueden no utilizar al)una de las se6alesdescritas en la ta"la.

    PUERTO #OMBRE Dir Pin DB$% DESCRIPCI

    2=TOS 2;..2? S +8@ 3 terminales de datos. 2esde 2; a 2?.

    EST=2O 94SB E ** 4n niel alto indica %ue la impresora est! ocupada # no puede reci"ir datos

    nueos. Tam"i(n se pone a * en situaciones de error.

    =CD E *; 4n niel "a:o indica %ue la impresora ha reci"ido un dato # est! disponi"le parareci"ir uno nueo.

    PE E *+ 4n niel alto indica %ue la impresora no tiene papel.

    SLCT IN E * 4n niel alto indica %ue la impresora est! on-line.

    ERROR E *5 4n niel "a:o indica %ue se ha producido un error en la impresora. No ha# papel,mal funcionamiento, etc.

    CONTROL IREN 8 88 Flagque habilita o inhibe la generacin de la interrupcin IRQ7 cuando seactiva la seal ACK!

    SELECT S *? =ctia a niel "a:o. Indica a la impresora %ue se ha seleccionado la impresora.

    INIT S *F = niel "a:o, en'a un RESET a la impresora.

    =4TOG2 S * = niel "a:o, la impresora se encar)a de hacer un salto de l'nea al reci"ir elcar!cter Hretorno de carroH.

    STRO9E S * alidacin de datos. Cuando la impresora detecta un niel "a:o, acepta el dato.

    El car!cter indica %ue la se6al es actia a niel "a:o

    Ta"la +

    El puerto de Datos

    Jeneralmente es slo de salida, pues se dise6 para eniar caracteres a la impresora. =ctualmente este puerto

    es "idireccional. La correspondencia entre los "its del re)istro de datos # las se6ales presentes en el conector29+5 del e$terior es1

    BIT ? F 5 + * ;

    'U#CI 2? 2F 25 2 2 2+ 2* 2;

    Ta"la

    El puerto de Estado

  • 7/21/2019 El Puerto Paralelo

    3/7

    Es un puerto de entrada. Est! destinado a la lectura del estado de las l'neas de interfaz con la impresora. La

    se6al 94SB es inertida antes de lle)ar al re)istro. La correspondencia entre los "its del re)istro de estado #

    las se6ales presentes en el conector 29+5 del e$terior es1

    BIT ? F 5 + * ;

    'U#CI 94SB-in./

    =CD PE SLCTIN

    ERROR 88 88 88

    Ta"la

    El puerto de Control

    Es un puerto de salida destinado a la escritura de comandos so"re la impresora. Las se6ales SLCT,

    =4TOG2 # STRO9 son inertidas antes de lle)ar a los correspondientes terminales de conector e$terno.

    El "it -IREN/ no es una se6al %ue corresponda a al)uno de los terminales de la interfaz Centronics. Setrata de unflag%ue ha"ilita o prohi"e la )eneracin de la interrupcin IR? cuando se actia la se6al =CD.

    Las rutinas del 9IOS %ue se ocupan de la impresora no utilizan esta interrupcin. La correspondencia entre

    los "its del re)istro de control # las se6ales presentes en el conector 29+5 del e$terior es1

    BIT ? F 5 + * ;

    'U#CI 88 88 88 IREN SELECT-in./

    INIT =4TOG2-in./

    STRO9E-in./

    Ta"la 5

    EL PUERTO DE IMPRESORA COMO CO#TROL ( AD)UISICI DE DATOS

    4n puerto es un mecanismo %ue conecta a un procesador con el mundo e$terior. Por medio de un puerto, el

    procesador reci"e una se6al desde un dispositio de entrada # en'a una se6al a un dispositio de salida. Lospuertos son identificados por sus direcciones en el interalo ;;;;h8;GGh, lo %ue permite el uso de *;+

    puertos en total. Las direcciones no son de memoria, est!n situadas en un mapa diferente de entrada0salida.

    Todo lo descrito en el apartado anterior define el funcionamiento del mane:o de la impresora, a tra(s de unos

    puertos. Pero estos mismos puertos se pueden er de otra forma, sencillamente como tres puertos

    consecutios de E0S un poco particulares.

    Para la comunicacin con los puertos se utilizan las instrucciones IN # O4T de ensam"lador.

    IN transfiere informacin desde un puerto de entrada al re)istro =L si es un "#te, # al =K si es una pala"ra. El

    formato es1

    IN re)Aacum, puerto

    O4T transfiere informacin a un puerto de salida desde el re)istro =L -"#te/ o el =K -pala"ra/. El formato es1

    O4T puerto, re)Aacum

  • 7/21/2019 El Puerto Paralelo

    4/7

    Si consideramos los puertos de datos, estado # control istos anteriormente, los podemos er de la si)uiente

    manera1

    2? 2ato ? S? 9us# -in/ C? 88 88

    2F 2ato F SF =CD CF 88 88

    25 2ato 5 S5 PE C5 88 88

    2 2ato S SLCT IN C 88 88

    2 2ato S ERROR C SELECT -in/

    2+ 2ato + S+ 88 88 C+ INIT

    2* 2ato * S* 88 88 C* =4TOG2 -in/

    2; 2ato ; S; 88 88 C; STRO9E -in/

    Ta"la F

    Es decir, disponemos de dos puertos de salida, uno de 3 "its # otro de "its # un puerto de entrada de 5 "its

    para el propsito %ue nosotros decidamos, conociendo las direcciones %ue ocupan.

    Recordar el si)nificado de las se6ales marcadas con H-in/H. Esto %uiere decir %ue est!n inertida por

    hard&are. Es decir, si se e:ecuta la instruccin

    O4T ;?=

  • 7/21/2019 El Puerto Paralelo

    5/7

    depull-up# siren para fi:ar un niel l)ico en ausencia de pulsacin. Los LE2s se encendr!n cuando ha#a

    un cero l)ico a la salida del pin correspondiente del puerto.

    Gi)ura +

    Nota1 el "it ? del puerto de estado # los "its *, * # *? del de control est!n inertidos. Para tra"a:ar con ellos

    se recomienda el uso de la instruccin OR8E$clusia -KOR/ %ue, a tra(s de una m!scara, corri:a lo anteriordespu(s de leer del puerto de estado o antes de escri"ir en el de control.

    Las instrucciones si)uientes encender'an los LE2s a modo de un contador "inario1

    mo c$,;GGh la cuenta se repetir! +5F eces

    mo a$,;GGh primer n>mero de la cuenta. Recordar %ue con un * est!n apa)ados

    mo d$, puerto se supone definida puertoM;9Ch, por e:emplo

    cont1 out d$, al saca al puerto de datos el contenido de al

    dec a$ actualiza la cuenta

    loop cont se repite +5F eces

    out d$,;GGh apa)a todos los leds

  • 7/21/2019 El Puerto Paralelo

    6/7

    Mane*o de la interrup"i1n del puerto paralelo2

    El "it del puerto de control, se)>n la ta"la 5, se denomina IREN. Este "it ha"ilita o permite %ue se

    produzca la interrupcin asociada a la entrada =CD. Cuando este "it est! a * # la se6al =CD pasa del niel

    l)ico * al niel ; se produce una peticin de interrupcin, %ue es la IR?.

    En el dise6o ori)inal del PC, I97 reser 3 interrupciones hard&are, comenzando por la interrupcin ;3h,para e$pansin de interrupciones, %ue son com>nmente conocidas como IR; a IR?. =s' la IR; se

    corresponde con la interrupcin ;3h, la IR* con la ;@h, etc. La IR? se corresponde pues con la ;Gh,

    estando sus ectores a partir de la direccin ;;;;1;;Ch.

    Para %ue una peticin de una IR lle)ue a la CP4, (sta de"e estar permitida, no enmascarada. El puerto ;+*hest! asociado con la m!scara de interrupciones de las IR. Para ha"ilitar una determinada interrupcin se

    de"er! escri"ir un cero en la posicin correspondiente, sin modificar el resto. =s', si lo %ue se %uiere es

    permitir la IR? ha"r! %ue poner a cero el "it m!s si)nificatio del puerto ;+*h, como muestra el cdi)o

    si)uiente1

    in al,;+*h lee la m!scara de las IR

    and al, ;*******" impone un ; en el "it m!s si)nificatio, IR?. No modifica el resto

    out ;+*h, al escri"e la m!scara

    Con estas operaciones %uedar! ha"ilitada la IR?. 4na ez atendida de la forma %ue se ha#a preisto, el

    pro)rama de"e indicar a la CP4 %ue la interrupcin #a ha sido procesada, para ello de"e escri"ir un * en el "it

    5 del puerto ;+;h, es decir1

    mo al, ;+;h car)a en al ;;*; ;;;; "

    out ;+;h, al lo escri"e en al puerto ;+;h

    Ginalmente, tan slo %ueda por actiar el "it %ue permite %ue la se6al =CD )enere una peticin de IR?.Para ello se de"er! poner a * el "it del puerto de control , sin modificar el resto. Cuando no se %uiera %ue se

    produzca una IR?, "asta con poner a cero este "it.

    =l finalizar el pro)rama, no slo se de"en resta"lecer los ectores de interrupcin modificados, sino %ue

    tam"i(n se de"e inhi"ir la IR?, de:ando la m!scara del puerto ;+*h como esta"a.

    4n pro)rama %ue utilice la interrupcin del puerto paralelo puede tener esta estructura, en lo %ue se refiere almane:o de dicha interrupcin1

    =l comienzo1

    modificar ectores de la interrupcin ;Gh -IR?/

    permitir la interrupcin IR?, poner a ; el "it ? del puerto ;+*h

    2urante la e:ecucin, siempre %ue ha)a falta1

    ha"ilitar la interrupcin en el puerto de control, "it

    repetir

  • 7/21/2019 El Puerto Paralelo

    7/7

    procesar la interrupcin

    escri"ir ;+;h en el puerto ;+;h

    hasta %ue se de"a inhi"ir

    inhi"ir la interrupcin, poniendo un cero en el "it del puerto de control

    =l terminar

    inha"ilitar la IR?, poner a * el "it ? del puerto ;+*h

    recuperar los ectores de interrupcin anteriores

    Bi3lio4ra5a0

    Los mi"ropro"esadores --67 8 la arquite"tura del PC2 Antonio 9ar"5a 9uerra2 Ed2 Sistemas 8Ser.i"ios de Comuni"a"i1n2 Madrid :;;%2

    Len4ua*e ensam3lador 8 pro4rama"i1n para PC IBM