Descripción: Sintonización de un controlador PI para una planta de tercer orden.
Descrição completa
Descripción completa
Descripción: controlador de temperatura
pic semaforosDescripción completa
df
Descripción completa
sintonizacion en simulinkDescripción completa
Furniture
Buses y Periféricos. 99/00 PIC 8259
Controlador de Interrupciones El controlador de interrupciones es un módulo ue tiene por función !estionar las interrupciones de entrada/salida para el procesador. procesador. Esto a"orra dise#ar ló!ica y a#adir patitas al procesador. procesador. $am%ién $am%ién proporciona fle&i%ilidad porue porue permite idealmente' idealmente' !estionar un n(mero n(mero ilimitado se#ales de interrupción )fa*oreciendo la e&pansión del sistema de entrada salida+. El controlador reci%e el con,unto de se#ales de interrupción procedentes de los dispositi*os' toma la decisión de cual es la m-s prioritaria' y en*a una (nica se#al al procesador. procesador. a respuesta respuesta del procesador es transmitida al dispositi*o y el propio controlador se encar!a de depositar en el %us el *ector de la interrupción. En un sistema %asado en la familia de procesadores 808' esta la%or la reali1a el c"ip 8259. Este c"ip admite "asta 8 se#ales de interrupción' pero tam%ién admite ser confi!urado en cascada )sus entradas proceden a su *e1 de otro otro controlador+ de modo ue un con,unto de controladores controladores 8259 pueden !estionar "asta un m-&imo de 88 se#ales de interrupción procedentes de otros tantos dispositi*os de entrada salida.
Descripción del patillaje: CS#3 4elección del c"ip. e%e estar acti*a para ue el c"ip pueda ser pro!ramado o leer datos de estado. WR#3 Escritura. RD#3 ectura D0-73 %us de datos. Por medio de él se pro!rama el controlador' se leen los re!istros y el controlador puede "acer lle!ar al procesador procesador el *ector de interrupción adecuado. CAS 0-73 Bus pri*ado cuando "ay una confi!uración en cascada. Proceden del controlador maestro )el ue se conecta directamente al procesador+ y se diri!en a las mismas lneas en el escla*o. 4ir*en' en modo cascada' para "a%ilitar al controlador del cual procede la interrupción ori!inal. Cuando un controlador escla*o reci%e una interrupción' acti*a su salida I6$ ue a su *e1 alimenta una I7 del maestro. Entonces el maestro acti*a las lneas C4 de manera ue el controlador escla*o uede "a%ilitado para colocar en el %us el *ector de interrupción. SP#/EN#3 Estas lneas tienen do%le función se!(n l a confi!uración3 modo no buffered 3 Indican al controlador si es un maestro )0+ o un escla*o )+ modo buffered 3 En este modo el controlador puede conectar el %us directamente al procesador o "acerlo a tra*és de un %uffer. 4i se utili1a el %uffer' esta se#al es de salida y sir*e para "a%ilitar el %uffer en en la dirección adecuada. INT3 interrupción3 Procedente del controlador se diri!e a la entrada I6$7 del procesador. Procedente de un escla*o se diri!e a una de las entrada I7 del maestro. IR 0-73 Interrupciones3 Entradas de interrupción al controlador procedente de los dispositi*os e/s o de otros controladores )modo cascada+.4e cascada+.4e pueden confi!urar como acti*as por ni*el o acti*as por flanco )de su%ida+. INTA#3 Interrupt ac:no;led!e3 Procede del procesador e indica al controlador ue auel "a entrado en un ciclo de reconocimiento de interrupción. A03 dirección3 El controlador tiene dos puertos de lectura/escritura. lectura/escritura. Esta lnea distin!ue entre am%os puertos.
Ciclo de reconocimiento de interrupción. ntes de descri%ir la estructura y pro!ramación del controlador resultar- interesante conocer en ué consiste un ciclo de reconocimiento de interrupción en el 808. .< $ras $ras la acti*ación de una lnea I7' el controlador acti*a la salida I6$7 se#al-ndole a la CP= la e&istencia de una interrupción acti*ada. 2.< l reci%ir la se#al' el procesador da un pulso en su salida I6$ I6$ indicando indicando ue comien1a un ciclo de reconocimiento de interrupción. )En el modo m-&imo la respuesta ser- el códi!o de reconocimiento de interrupción en las se#ales 40<2 ue ser- utili1ado por el controlador de %us para !enerar la se#al I6$+
Buses y Periféricos. 99/00 PIC 8259 >.< l reci%ir el controlador el pulso por su entrada I6$ comien1a a ar%itrar las interrupciones reci%idas y selecciona la m-s prioritaria. ?.< 4e emite un se!undo pulso por la lnea I6$ del procesador )o controlador de %us+ ue utili1a el controlador para depositar en el %us el *ector correspondiente a la interrupción de mayor prioridad. 5.< El procesador o%tiene la dirección de la rutina de interrupción a partir de este dato y salta a ella. lmacena el re!istro de fla!s y la dirección de retorno' des"a%ilita las interrupciones y comien1a a e,ecutar la rutina.
Estructura del controlador: El controlador dispone de un con,unto de re!istros internos para reali1ar sus funciones3 IRR/ISR 3 Interrupt reuest re!ister/Interrupt ser*ice re!ister3 Cuando se acti*an una o *arias de las entradas I7' estas uedan refle,adas en los %its correspondientes del I77. Entonces el controlador usa este re!istro para decidir a ué interrupción atender. e auellos %its acti*ados en el I77 el m-s prioritario ueda refle,ado en el %it correspondiente del I47. @ientras la interrupción est- siendo atendida este %it se mantiene acti*o. Este %it se desacti*a' %ien autom-ticamente o %ien después de reci%ir el controlador una orden de EAI )fin de interrupción' emitido antes del I7E$+. Cuando se confi!ura para ue lo "a!a autom-ticamente' el controlador desacti*a la interrupción en el flanco de %a,ada de la se!unda se#al I6$ procedente del procesador. IMR 3 Interrupt mas: re!ister. El pro!ramador puede enmascarar al!unas interrupciones de manera ue si se acti*ase la I7 correspondiente' el controlador la i!norar- )nunca alcan1ar- el I47+.
El mecanismo de ar%itra,e es pro!rama%le y admite al!unas *ariantes en la resolución3 Modo completamente anidado3 es el modo de prioridad %-sica consistente en asi!nar mayor prioridad a la interrupción 0 y menor prioridad a la interrupción . En este modo' cuando un %it est- acti*o en el I47 indicando ue tal interrupción est- siendo atendida )desacti*ado' por lo tanto el EAI autom-tico+' nin!una interrupción de prioridad i!ual o inferior *a a ser considerada por el controlador. 4in em%ar!o si entrase una interrupción de prioridad superior' ésta s pasar- al re!istro I47 y se emitir- el a*iso correspondiente al procesador. )En el procesador se interrumpir- la e,ecución de la rutina de atención a la i nterrupción anterior para car!ar la nue*a rutina' m-s prioritaria. l finali1ar ésta se reanudar- la primera+. Modo de rotación atom!tica"3 en este modo' cada *e1 ue una interrupción es atendida' como la de m-&ima prioridad' ueda de!radada al ran!o de menor prioridad para la si!uiente ocasión. Ello permite ue nin!una interrupción pueda acaparar la atención del procesador. Rotación epec$%ica3 es un tercer modo en el cual el pro!ramador puede indicarle al controlador' por medio de un comando' cual es el orden de prioridad ue desea darle a las interrupciones' concretamente le indica cual es la interrupción de mayor prioridad y el resto se ordenar-n entorno a ella. )Por e,emplo' si decide ue la I75 *a a ser la de mayor prioridad' la I7 ser- la si!uiente' después I7 y a continuación I70' etc.+
Programación Para pro!ramar este controlador e&isten dos puertos de lectura/escritura en el c"ip. a lnea de dirección' 0' decide a ué puerto se accede. a pro!ramación se reali1a en*iando una secuencia de pala%ras de control denominadas IC. Day ? pala%ras de control diferentes y caso de en*iarlas todas "ay ue "acerlo siempre en secuencia3 ICW&3 Es la primera escritura ue se "ace so%re el 8259 y marca su reinicio. 4e escri%e so%re el 00. 4iempre ue se escri%a en este puerto un %yte con el %it ? a ' se interpretar- como un comando de iniciali1ación. Atra información de confi!uración ue aporta esta pala%ra de iniciali1ación es3
2
Buses y Periféricos. 99/00 PIC 8259 a+ %+ c+ d+
las interrupciones se acti*ar-n por flanco o por ni*el el controlador funcionar- sólo o en modo cascada el controlador tra%a,a con el 808 o con el 8085 se en*iar- o no la pala%ra de iniciali1ación IC?
ICW'3 4e en*a por el puerto 0' y "a de se!uir inmediatamente al en*o de IC. Contiene el ndice en el *ector de interrupciones correspondiente a la interrupción 0. El resto de ndices lo calcular- el controlador incrementando correspondientemente este *alor para cada una de las dem-s interrupciones. ICW(3 Esta pala%ra se en*a (nicamente si la confi!uración es en cascada )indicado en la IC+. 4e en*a por el puerto 0 y "a de se!uir inmediatamente a IC2. l maestro se le en*iar- una IC> indic-ndole en cuales de sus entradas I7 "ay col!ado un controlador. cada uno de los controladores escla*os se le en*a una IC> indic-ndoles su n(mero de identificación' el *alor ue aparecer- en las C4 cuando el dispositi*o es seleccionado. ICW)3 Esta es una pala%ra opcional ue se en*a tam%ién por 0' si!uiendo a IC>. En IC se "a indicado en su momento si se en*iar- o no esta (ltima pala%ra de iniciali1ación. a opcionalidad de esta pala%ra se de%e sencillamente a ue si no se usa' las caractersticas ue confi!ura est-n sencillamente anuladas en su con,unto. Estas caractersticas son3 . cti*ar un modo especial de ar%itra,e anidado )4pecial fully nested mode+' ue contemple la e&istencia de controladores escla*os. Este modo especial tiene la particularidad' frente al modo completamente anidado' de ue cuando en una I7 est- pinc"ado un escla*o' esta entrada no ueda in"a%ilitada aunue "aya pasado a ser atendida )acti*a en el I47+' de manera ue el escla*o puede *ol*er a en*iar por la misma lnea una nue*a interrupción )en su caso procedente de otra I7+. Pro!ramar el modo %uffered. o ue redundar- en ue la lnea 4PF/E6F ser- utili1ada en su función E6F. Esto lle*a a la si!uiente pre!unta3 GCómo sa%e a"ora un controlador si él mismo es un maestro o un escla*o.H 2. Indicar al controlador' en el modo cascada' si se trata de un maestro o un escla*o. >. Pro!ramar el EAI. os %its en el I47 se limpiar-n autom-ticamente cuando el controlador reci%a el se!undo pulso de la se#al I6$ ?. Por (ltimo se indica si el controlador *a a tra%a,ar con el 8085' de 8 %its de pala%ra y con un protocolo de reconocimiento de interrupciones diferente al del 808 )tres pulsos de I6$' durante el primero "ay ue facilitarle al procesador el códi!o de la instrucción Call y durante los otros dos pulsos le en*a la dirección de la rutina de atención+ o con el propio 808.
=na *e1 ue el controlador se "a pro!ramado' entra en funcionamiento. partir de a"ora' y "asta una nue*a iniciali1ación el procesador puede inter*enir en el funcionamiento del controlador a tra*és del intercam%io de Comandos de operación )AC+ Day tres comandos de operación )AC<>+. 4e pueden en*iar en cualuier orden y en cualuier momento y permitir-n al procesador controlar acti*idades del controlador como el modo de ar%itra,e ue emplee o el enmascaramiento de determinadas interrupciones. *CW&3 4e en*a al puerto 0 y el contenido del %uffer se car!ar- directamente en el re!istro I@7. o ue si!nifica ue cada %it indicar-3 )+ la correspondiente I7 del controlador uedar- in"i%ida para nue*as peticiones de interrupción )0+' la correspondiente I7 del controlador ueda "a%ilitada para serle atendidas las nue*as peticiones de interrupción. *CW'3 4e en*a al puerto 00. Para e*itar ue sea interpretada como una IC' el %it ? estar- siempre a cero. as acciones ue se pueden reali1ar con este comando son3 . Especificar el tipo de rotación ue se desea dar al re!istro I77 para resol*er las prioridades una *e1 se "a atendido a la (ltima interrupción.
2.
En*iar un EAI !enérico ) a la (ltima interrupción atendida < de los %its acti*os en el I47 el m-s prioritario < + o especfica )en el propio comando se especifica ué interrupción se desea dar por atendida+.
*CW(3 I!ualmente se en*a al puerto 00' con el %it ? a cero siempre. Este comando pro!rama el modo especial de enmascaramiento. urante este modo no funcionan las prioridades y toda interrupción ue no ten!a una marca en el I@7 est- "a%ilitada aunue en determinado instante "aya acti*o un %it del
>
Buses y Periféricos. 99/00 PIC 8259 I47 )esté siendo atendida ya una interrupción de determinada prioridad. 7ecuérdese ue en el modo normal ocurrira ue todas las interrupciones de ni*eles inferiores a la ue est- actualmente siendo atendida uedaran autom-ticamente in"i%idas+. ectura. AC> permite tam%ién pro!ramar la lectura de los re!istros I47 e I77 para ue el procesador pueda consultar en cualuier momento las interrupciones pendientes o las ue est-n en ser*icio. simismo permite confi!urar el controlador para ue funcione en modo de consulta. En este modo el controlador se comporta e&actamente como se "a e&plicado' pero es el procesador el ue no lo "ace. En lu!ar de !enerar un ciclo de reconocimiento de interrupciones al acti*arse su entrada I6$' el procesador !enera un ciclo de lectura diri!ido al controlador' el cual le responde con un re!istro ue le indica cual de las entradas I7J acti*adas en ese momento es la m-s prioritaria. El procesador utili1ar- esta información para in*ocar a la rutina de interrupción correspondiente. l !enerarse un ciclo de lectura simple nunca se acti*a la se#al I6$ y por lo tanto el controlador no act(a de la forma "a%itual. Este modo est- pre*isto para ue el controlador pueda tra%a,ar con otros procesadores no &8 ya ue estos !eneran el ciclo de reconocimiento de interrupción de forma autom-tica al reci%ir la I6$. 6o o%stante' naturalmente' pueden apro*ec"ar este recurso para o%tener información del controlador I!ualmente el procesador puede consultar en cualuier momento el estado del re!istro I@7 "aciendo una lectura a la misma dirección a la ue en*ió el AC.
Interrupciones en PC basados en 8086. En estos computadores se implantaron interrupciones "ard;are. Para poder "acerlo se "u%o encadenar dos controladores. El controlador escla*o cuel!a de la I72 del controlador maestro. a confi!uración del maetro es la si!uiente3 ICW& + Interrupciones acti*adas por flanco. 2+ Controlador en modo cascada >+ Procesador 808 ?+ 4e utili1ar- la pala%ra de iniciación IC? ICW' 4e le asocia a la interrupción 0 el *ector 8. Por lo tanto los *ectores del resto de i nterrupciones son I7038" I739" I723" I7>3B" I7?3C" I753" I73E" I73K" ICW( u se le indica al maestro ue el escla*o cuel!a de I72 ICW) 4e se#alar- ue el modo es no %ufferi1ado' ue se tra%a,a con el 808' ue el EAI no es autom-tico y ue se emplea el modo anidado simple.
Para el ecla+o la confi!uración es3 ICW& + Interrupciones acti*adas por flanco. 2+ Controlador en modo cascada >+ Procesador 808 ?+ 4e utili1ar- la pala%ra de iniciación IC?
?
Buses y Periféricos. 99/00 PIC 8259 ICW' 4e le asocia a la interrupción 0 el *ector 0D. Por lo tanto los *ectores del resto de interrupciones son I7030" I73" I7232" I7>3>" I7?3?" I7535" I73" I73" ICW( u se le indica al escla*o ue el maestro lo identifica con el *alor 2. ICW) 4e se#alar- ue el modo es no %ufferi1ado' ue se tra%a,a con el 808' ue el EAI no es autom-tico y ue se emplea el modo anidado simple.
Consideraciones
En el PC la denominación de las interrupciones es la si!uiente3 I7J03 Corresponde a la I70 del controlador maestro I7J3 I7J23 I7J>3 I7J?3 I7J53 I7J3 I7J3Corresponde a la I7 del controlador maestro I7J83Corresponde a la I70 del controlador escla*o I7J93 I7J3 I7JB3 I7JC3 I7J3 I7JE3 I7JK3 Corresponde a la I7 del controlador escla*o Como se podr- adi*inar' el ndice asociado a la interrupción I72 del controlador maestro nunca se utili1ar- porue en su lu!ar ser- el controlador escla*o el ue deposite el ndice adecuado en el %us. Esta confi!uración se adoptó a partir del 28' porue en el 808 sólo se implantaron 8 interrupciones e&ternas y %asta%a con un controlador. En estos sistemas' el ndice correspondiente a la interrupción I7J2 tena asociado una $47 ue en PC de !eneraciones posteriores nunca sera in*ocada. Para e*itar este conflicto con e l concepto de compati%ilidad se asoció la I7J9 con la I7J2. Esta asociación se "ace mediante soft;are' "aciendo ue la $47 asociada a la I7J9 in*oue directamente a la I7J2.
Información adjunta: escripción completa del c"ip 8259
Cuestiones3 ada la confi!uración de los controladores' ordene las interrupciones "ard;are del sistema por orden prioridades. 4uponiendo ue las direcciones de los puertos de los controladores son3 20D'2D para el maestro y 0D y D para el escla*o )el %it menos si!nificati*o del %us de direcciones pinc"ado en 0 del controlador. Escri%a las instrucciones en ensam%lador para pro!ramar a los dos controladores en modo cascada' EAI
5
Buses y Periféricos. 99/00 PIC 8259 autom-tico' modo %ufferi1ado y poltica de ar%itra,e de rotación autom-tica. 4upon!a el escla*o pinc"ado en la I7 del maestro. 4i no se usa la opción EAI. Escri%a las instrucciones finales necesarias de una rutina de atención a la I7J 0D
Bibliografa3 $"e 808 IB@ PC and Compati%le computers. @u"ammad li @a1idi' Lanice Millispie @a1idi Prentice Dall 998 i%ro de componentes periféricos de Intel inf 8.> PE7 per