Vous êtes sur la page 1sur 13
PRACTICTS-Organtactin de Memoria on UTE Figina? ZL Introducci6n OR6MAKUN KH AEN GOS /SD Los microcontroladores 8051/52 tienen la memoria dividida en dos areas perfectamente diferenciaas = La memoria de cédigo 0 de programas: Destinada fandamentalmente al almacenamiento del programa a ejecutar por el microcontrolador y, en casiones, de tablas de valores constantes. Como en este rea tinicamente se ‘almacenan datos que no varian, y que ademas deben mantenerse ain en ausencia de alimentacién en el circuito, su implementacién se lleva a cabo. mediante memorias de s6lo lectura (ROM, EPROM, etc) que presentan la caracterstica de ser no volitiles + La memoria de datos: Su misién es ef slmacenamiento de los datos temporales que necesita el programa para su funcionamiento, asi como la implementaciéa de Ios registros de control del microcontrolador. En esta arca, la informacion ‘tanto debe escribirse como leerse y por ello esta zona de memoria es de tipo RAM. Como consecuencia, los datos almacenados en ella se pierden al desconectar Ia alimenracion, Ee os apaados siguientes se emda en detale cada una de esas reas de memoria 2.2 La memoria de programas Como se ha indicado anteriormente, Ia memoria de programas slo puede ser leida y ppuede tener un tamafio de hasta 64 Kayres. Esta érea de memoria puede implementarse parte cn el interior del microcomtrolador (memoria de programas intcena) y parte en el exterior del mismo (Memoria de programas exiems) en una configurecion mixta, © sotalmente en el exterior, em lo que seria una configuracién totalmente externa (Figura 21) ae a \ - : Ce oes eee | Figura 2.1. Configurucones poses dela memoria de programa, En los sistemas sencillos la exiensidn del programa a ejecutar no es demasiado grande Por lo que se puede alojar en su totalidad en la memoria intema del microcontrolador. En estos cas0s no es aceesario implementar memoria alguna en el exterior del mismo, 2.2.1 La memoria de programas interna El microcontrolador 8051 incorpora ea su interior un total de 4 Kbytes de memoria de programas que ocupa el rango de direcciones [0000H - OFFFH] mientras que el 8052 posee 8 Keytes, cuyo rango es [0000H - 1FFFH}, ‘Microcomrotadores MCS SY Ung Roger Guachatta Narstez xoroget@pahoo er ~ La PRACTICA 2- Organic dela Memoria eno 051/52 Pigina 3 Para Ja implementacin de esta memoria se pueden usar diversas tccnologias tales como ROM de mascara (8031/52) 0 EPROM (8751/52). En algunos microcontroladores de la familia, como el 8031 y el $032, esta zona de memoria no esta implementada y si Uso implica obligatoriamente la colocacion de memoria externa. En el caso del microcontrolador de Aumel AT89S52, este dispone de 8 Kbytes de ‘memoria Flash Rom interna. Para activar 0 desactivar la memoria de programas intema se emplea la sefial EA Cuando el pin EA de un microcontrolador 8051 se conecta a VCC (Figura 2.2), las posiciones de memoria comprendidas enue OOWH y OFFFH se leen de la memoria interaa y Jas comprendidas entre 1000H y FFFFH se leen de la memoria extema. En el caso del 8052 se Jeen de la memoria interna la posiciones comprendidas entre OOOOH y 1FFFH y de la extora las comprendidas entre 2000H y FFFFH, Por el contraro, si el pin EA se conecta a VSS, la bisqueda de direcciones del programa s dirige ala memoria externa en todo momento, por lo ‘que la memoria interna en caso de existr no s utiliza. awoae oF veo igura 22. Seleeia entre memoria interna y externa en ol OS1US2. Independientemente de si esti implementada en el interior o en ol exterior del tmirocontolador, en la parte baja dela memoria de programas se asignan aciertas posciones unas funciones especiales. Asi, como puede observarse en la Figura 23, la poscion de memoria 000 alberea al vector de RESET. mientras que las posciones 03H, OBH, 13H, 1BH, 25H y 2BH (este ituma solo on 8052) coresponden alos vectores de ls disitas Fuentes ‘de interupeion Segiin lo dicho anteriomente, el intervalo fisico entre dos vectores de interrupeién comtiguos es de 8 Bytes, por lo que solo es capaz de albergar rutimas muy pequetias, Nommalmente las rutinas ocupan un espacio de memoria mayor, por lo que en esas posiciones se colocan instruccioves de salto que leven el Gujo del programa hacia una zona mas amplia, dde la memoria de programas capaz de contener dichas ruta. 2.2.2 La memoria de programas externa Cada vez que el microcontrolador vealiza un acceso a la memoria externa activa la seal PSEN colocdndola a nivel bajo, Esta sodal se utiliza como habilitacion de lectura para los chips de memoria exiema. wa Tog Roger Sandee % eae Ta aozau dat re 2 Joron — everso seme uae 1 io eee 1 thee 6 loose — erceson aoe ‘qura2.3.Povicones especiales dela memo de cidiga La forma de conectar memoria externa al 8051/52 se muestra en la Figura 2.4. ee S figura 2-4. Conextin de memoria externa al 8051/2 Los diecistis bits necesarios para direccionar una memoria de 64 Kbytes son proporeionados por los puertos PO (parte baja) y P2 (parte alta). Con objeto de reducir el himero de pines del encapsulado, en el puerto PO se muliplexan en el tiempo la parte baja del bus de direcciones y el bus de datos, Esta multiplexion, caracterstica de los rmicroprocesadores de late, se raliza como se iustra en el cronograma de la Figura 2.5. (ace agus acho gua ji segs tse oe ose [si is2.g5 (84 155156] = Pe r i 8051/52, Figura2S. Cronograma de acco ala memoria de cidigoextrma Sa Vicroconroladores NCS ST Ing, Roger Guachalla Narviez woragerGpahoo cs - La PaBolivia OF FORTE OE HOTT ‘Como puede observarse en la figura, se producen dos accesos a la memoria de programas ‘externa por cada ciclo de maquina, siendo la Scuencia de pasos la siguiente ‘+ El microcoutrolsdor coloca en el puerto PO la parte baja del contador de programa (PCL) yen el puerto P2 fa parte alta (PCH) Una vez estabilizada la combinacién en PO, el microcontrolador activa la sefial ALE, con lo que esta informacion se’ almacena en el latch externa, ‘cuyas.salidas proporcionan las 8 lineas de menor peso del bus de direcciones, ‘El microcontrolador activa la tinea PSEN, con lo que el contenido de la posicion de memoria seleccionada mediante las 16 lineas de direccién pproporcionadas por el latch (Aa As) y por P2 (As As) aparece en el bus de datos (PO), ‘+ Por iltimo, el microcontrolador lee el cédign dela instruccin presente en PO. Las secuencias de bisquedalejecucién soa las mismas, ya se realicen sobre la memoria de programas interna o la extema, por lo que los tiempos de ejecucién no dependen del tipo de memoria que se utile. Cuando la CPU accede ala memoria de programas intema PSEN no se activa y las direcciones no se emiten por los puerios. Sin embargo ALE se sigue emitiendo dos veces por cada ciclo miquina, pudiendo seruilizada como seBal de reloj extern. 2.3 La memoria de datos ‘Como ocurre con la memoria de programas, la memoria de datos en los sistemas basados cn of 8051/52 (Figure 2.6) puede implementarse tanto en el interior como en el exterior del ‘microcontrolador igura226. Memoria de datos eno USUIS2 La memoria de datos intema es un espacio reducido pero de acceso ripido, en ccontraposicion a la memona de datos extema, que puede tener un tamaio de hasta 64 KBytes pero su acceso es mas lent. “Mcroconroladoras MCS 51 Tag, Rigor Gnachalla Narwisz vorouarayahoo cr ~ La Patol 23.1 La memoria de datos interna La memoria de datos intema © RAM intema (Figura 2.7) se encuentra dividida en tres ‘+ Area de direccionamicato directo ¢ indirecto (128 bytes) + Area de direccionamiento solo directo (SFR). ‘+ Area de direccionamiento solo indirecto (128 bytes, solo existe en el 8052), vuecto@ E Macro ¥ A f ‘ Flyura2.7, reas dela memoria RAM interna Por tanto, un microcontrolador 8051 posee un area de memoria RAM interna de. 128 bytes + los registros del SFR mientras que en el 8052 dicho area tiene un tamatio de 256 bytes + los registros del SER. ‘A continuacién se estudian las caracteristicas de cada una de estas tres zonas de la ‘memoria RAM intema, 23.1.1 Area de direccionamiento directo ¢indirecto Este area ocupa los 128 bytes bajos (00H - 7FH) de la memoria de datos, Todas sus posiciones pueden ser accedidas tanto mediante direccionamiento directo como indirect rn <2 ance oe ss Figura 28. Aree de dirscctoansents diac indirect (Como puede apreciarse en la Figura 28, esta rea se encuentra dividida en tres subseas + Bancos de registro. * Subjreadireccionable bit ait © Subjrea scratch pad. “Microconiroladores MCS ST Tag, Roger GuachallaNarviez corogen@pahoa es ~ La Pai-Bolia PRACTICE Bancos de registros 1 8051/52 incorpora un total de 4 bancos (0,1, 2y 3) cada uno de los cuales consta de 8 registos referenciados de RO a R7. Los bancos de registros ocupan los 32 byres mis bajos de la memoria de datos (00H - LFH), yestin distbuidos sein la siguiente tabla. ee a eee eR St ont Tone Toon | asi | oat | ost | ostt | omit =| oat | oon [oat | opi} wc | obi | oest_[ oF Pee ea ar a ae Tb Ses) se Diet Dar [ape ies [aber [ies [eit ‘Tabla 2.1, Direccones ocupadas por ls registros ea ls diferentes bancos En un momento determinado, solo uno de os cuatro bancos esti active, que es el seleccionado en la PSW. En cualquier momento se puede cambiar de banco simplemente ‘modificand el estado de 2 bits de dicha palabra. Después de un reser del microcontrolador, el bbanco activo por defecto es cl 0. ‘Subérea dieccionable bit a bit Este segmento tiene una longitud de 16 bytes (20H - 2FH), La caracteristica diferencial de esta area esinba en que los 128 bits de que consta pueden ser accedidos de manera individual. El direccionamiento de estos bits se puede realizar de dos maneras diferentes: + Referenciando su direccign de bit, Cala uno de los 128 is tiene asignada ‘una direccién comprenlida entre OOH (bit (0 del byte 20H) y 7FH (bit 7 del byte 2FH) ‘© Referenciando Ia direccién del byte que lo conticae seguide de un punto y det rimero (0 = 7) que ocupa el bi a direccionar dentro del Byte. Por ejemplo, el bi¢ 4CH. (bir 5 de la direccién 29H) se referencia como 294.5 Las 16 posiciones de este segmenio, ademés de cSmo bits individuales, también pueden ser accedidas como bytes. Subdrea Seratch pad La memoria seraich pad se entiende como la memoria de un block de notas de répido acceso, pero de escasa capacdad. Ocupa las posiciones de memoria comprendidas entre 30H y TELL Es la memoria de trabajo de propésito general dei usuario, 23.1.2 Area de direccionamiento solo directo. Es un segmento de memoria RAM Unicaments accesible mediante direccionamiento directo, En ella se ubican los denominados registros de funcién especial o SFR (Special Function Registers) que definen el funcionamiento det microcontrolader. Aunque este ea posee un rango de direcciones comprendido entre 80H y FFH, cn ella lanicamente estén implementadas las posiciones correspondientes a los registos de funcion especial, reservaindose el resto de las disecciones para referencias los registos adicionales que incorporan otros componentes de la familia MCS-SI, 0 los registos particulares de ‘microcontroladores de otros fabricantes compatibles con dicha familia En la Figura 2.9 se muestra la ubicacion de los diferentes registros que componen el SFR. Los registos representados entre parentesis solo estan preseates en el microcontrolador 8052 ‘Wevocoaroladores MCS81 ng. Roger Guachalla Narez sorogerGyahoa er ~ La Pa Doli TPRACTICAT = OrgamteetON emt e851 82 rte $$ ‘Ademés, todos las posiciones representadas en la columna dé la izquierda, es deci ccuyas direcciones terminan en 0 0 en 8, son direccionables bit a bt. Be abe : i = w[ is : i ° a z e o de oF 2 De be a Gs af Te ® : ee » ql E a «(oe a ao = om ” os [Seow | Seu Te oft Se a ws [ie Cop] na [faa ae 0 CR | se fom | on D 5 “Preow | ‘Figura 29. Ubicacion de os diferentes repstros que componea el SFR, En Ia Tabla 22 se muestran los nombres de los diferentes registros del SFR, sus direcciones y los valores que adoptan tras el reset del microcontrolador. ‘Simbolo Nombre Direcciin_ Valor reset Be | Regisro BB Regier) PSW* | Ponte de stad de programa (Program Sets Wont) pow | oot ‘SP | Punteo de pla Succk Pamer) sin | om DPTR | Punter de datos (Data Pointer. 2 bes) - | oocore DPL | Byte taj dl pntero de don Data PoinerLam) sa | oor PH | Byte aly del punter de datos (Daa PosuerHigh) se | oof Po Puc 0 Porta) wor | FRR pis |Puero 1 (Port) son | EH was | Puce 2 (Port 3 aod | FFH 3+ | Pucci 3 Port 3) Bow | rr w+ | Cont prorat inerupciones (erupt Pry Cone) ‘Beet fxcxoo00008 TE* | Control hbiitciénintemigciones (hnurript Enable Cone) | ASH EXDOGOOOB, ‘TMOD, | Consol modo Temp.‘Conundor Timerounterhads Control) ‘son | oor ‘TCON * | Control TemponizaosiContalor imenCounterConead) san | ook Congo! Temporzadoc'Comimor 2 TimerC owner? Control cs | oor Bye oko TemporzaiocCoataor 0(TmerCounserd High Bye) | scx | OOH Bye tajo TemporiadoctContalor 0 (TimerCounterd Lae Bye) | SDK | OOH Byte ato Temporizador/ Contador | (TimarCouner! High Bre) | SAH | OOK Byte bajo TemporasdorICostator | (TimerCownzer! Low Byte) | 8B | COE Byte alo TemporzadacContador 2 (TimerCountar? High By) | CDH | GOH 112! | ye tao TemporaalonConiaae (TimerCounter? Law Byte) | CCK | 00H RCAPIH"| Bye alo registo captura TC 2 (PC 2Capowre Register High Bye) | CBH | O08 RCAP2L | Bye bajo exist captura TC 2 (FC 2Capnue Register Low Bye) | CAH | OOF 'SCON * | Control comunicaionss ure Serial Cand) san | cot SBUF | Buffer datos commicaciones serie Serio! Data Bugler) ott | indetesm PCON | Contol consumo de ptensia Power Coro!) smi foxocxo00as = Tabla 22, Regtros del SFR. “Microcndroladore MICS 51 Ing. Roger Gaachalla Warviee ,xeroget@yuhoaes - La Pe-Bolivia “OrgMrctO e “rayon ‘A continuacién se proporciona una breve explicaciéa acerea de la funcién desempediada por cada uno de estos egistros, Acumulador: Es un registro de propésito general de los microcontrotadores 8051/8052 y, por ‘su frecuencia de intervencién, el ms important, Registro B: Se usa fundamentalmente en las operaciones de multiplicacién y divisién, aunque puede ser utilizado como un registro de propésito general PSW: Contiene informacidn acerca del esado de la CPU en caa ciclo de instruccién. Permite la seleceién del banco de registro activo y la ejecuciéa de saltos condicionales, SP: Es un registo de 8 bis que sine como puntero para la pila. Al resetzar el ‘mrocontrolador adopt e valor OTH (Figura 2.10), fo cual significa que, como la pila erece hacia posiciones de memoria més alts, el primer byl introducido en la misma tas un reset se ubicarienlaposicibn O8H, que es la direcién de registro RO del banco | 7 a Saree te. igura 2.10. Ubeain de pla ese Para evitar que la pila en su crecimiento destruya accidentalmente los datos almacenados en la memona RAM, una buena prictica consisie en reubicar la pila en otra zona de la memoria lo més alta posible (preferencemente en la zona de direecionamiento solo indieecto) al comienzo del programa, DPTR (DPH:DPL): Es et puntero de datos de 16 bits del microvontrolador. El cometido fundamental de este registo es contener la direccin de la memoria de datos externa a la que se va.a acceder (direccionamiento indirecto), aunque también puede utilizar en los accesos @ la memoria de cddigo. El DPTR puede ser manejado como un registro de 16 bits 0 como dos. registros independientes de 8 bus (DPL y DPE) PO, PL, P2 y P3: Son los latch de los puertos PO, PL, P2 yP3. TP: Permite asignar a cada una de las fuentes de interrupcién un nivel de priosidad determinado entre dos posibles (alto y bajo). Una interrupcién con bajo nivel de priondad solo puede ser interrumpida por otra de nivel alto, Una interrupein con alto nivel de ‘Priordad no puede so interumpida por ninguna otra iterrupcién. TE: Permite habilitar inhabilitar las distinas fuentes de interrupei6n, tanto de manera global como individual Microconioladores MCS 51 Ing Roger Guachala Nervi: worogeryuhoo.es - La Pat-Bolia ‘MOD: Permite configurar el modo de operacién de los mers 0'y 1 TCON: Este registro permite la puesta en marcha y la parada de los simers 0 y 1. También permite configurar el modo de activacion de las interrupeiones externas (por niveles © por flancos). Por iltimo, este registro posce una serie de flags que sefalan los desbordamientos de estos rimerso la recepeién de solicitudes de intrrupciones extomas, ‘TACON: Realiza funciones similares alos registros TCON y TMOD, pero sobre el simer 2. ‘THO-TLO, THI-TL1, TH2-TL2: Son 3 de registros de 16 buts, compuestos cada uno de cllos por um par de registros de ocho bus (pate alta y parte baja). Esos registros corresponden as timers 0, 1 y 2, que pueden actar como temporizadores 0 como contadores, ¥ que serin objeto de estudio con posterioridad. , RCAP2H-RCAP2L: Ese par de registros actian como “registros de captura” del timer 2, ‘cuando éste tabaja en “modo captura”. Ea este modo, RCAP2H y RCAP2L responden a recepcién de un flanco en el pin T2EX, almacenando los valores de TH2 y TL2. Cuando el ‘nmer 2 trabaja en el modo de “autotrecarga”, los valores de recarga del mismo se almacenan en estos registros. SCON: Este registro permite configurar los distintos pardmetros rigen la transmisién y recepcion de datos en la comunicacién serie, tales como el modo de operacién, el formato de Ja palabra (bir de star, bits de datos, bir de stop), a velocidad de comunicacion, et. SBUF: Fs el buffer del puerto sori. En realidad son dos regisros fisicamente separados (un buffer de transmisién y otro de recepcién), pero a efectos de programacién se comportan ‘como uno solo, ya que se acceden mediante la misma direccién. Cuando se escribe un dato en 'SBUF, éste se almacena en el buffer de tansmision y a continuaeién comienza a transmitirse ‘através de la linea correspondiente del puerto serie (normalmente TxD). Cuando se recibe un dato en l puerto serie (normalments a través de RxD), éste se almacena en el buffer receptor de donde podra reeuperado mediante ta lectura de SBUF. PCON: Este registro permite duplicar Ja velocidad de comunicacién del puerto serie ‘dems, en aplicaciones basadas en las versiones CHMOS del microcontroladar en las que es importante reducir el consumo de cnergia, este registro permite activar dos modos de trabajo ebajo consumo: el modo Idle yel Power Down, 2.3.13 Area de direccionamiento solo indirecto Esta area solamente existe ea cl microprocesador 8052 y tiene un tamafo de 128 ‘bytes (B01 - FFID, alos que solo es posible aceder mediante el direccionamiento indirecto, ‘Como se puede observar en la Figura 2.11, el érea de direccionamicato solo directo y el fzea de direccionamiento solo indirecto poscen el mismo rango de direcciones (80H - FFH), cs decir sus direcciones estan solapadas. El mecanismo uulizado para especificar el rea al que se desea acceder es el uso de diferentes mods de direccionamiento. As, la instnuceibn: Mov 90H, #aBH (que utiliza direccionamiento directo para la dreccién 90H) escribe ABH en la posicibn 90H de Ia memoria de direccionamiento sblo directo (puerto P1), En cambio, las instrucciones (en tun 8052), Mov RO, #908 Mov @RO, #ABH “Microconraadores MCS 31 Ing Roger GuachallaNarviez xorogerpahvoes ~ La Paz Boliva Organ de Teri a TORTS. agin (on las que realiza un direccionamiento indirecto para la direcciém 90H) eseriben ABH en la posicién 90H de Ia memoria de direccionamiento solo indirecto, "Figura 2.11 Solapamiento dels Areas de direecionamiento solo directo y slo indirect, 2.3.2 La memoria de datos externa Como se ha comentado antcrionmente, el 8051/82 permite direecionar un area de memoria externa de hasta 64 Kbytes. El acceso a esta zona de memoria ‘inicamente puede realizarse mediante la instruccion MOVX usando direccionamiento indirecto, Cuando el érea dde memoria externa os de 256 bytes (una pagina) o menos, se pueden utilizar como punteros los registros RO o RI (wv @Ri, para i= 0 6 1), pero Si se trata de un area de memoria ‘mayor se debe utilizar como puntero el registro DPTR (MOV @DPTR). La conexion de este tipo de memoria al microcontrolador (Figura 2.12) se reliza de forma similar a la empleada para la memoria de programas, con la excepcién de que en este «aso no se utiliza la sefal PSEN , sino la linea RD para la habilitacion de lectura de la ‘memoria de datos externa yla WR para la habilitacion de esceitura en la misma. En el sistema Figura 2.12. Conerion de memoria externa de dates sl 051/52. Enel cronograma de la Figura 2.13 puede apresiarse que un acceso a la memoria de datos externa tiene una duracién de un ciclo de méquina, durante el cual no se emiten los dos impulsos. PSEN,, ya que no son necesarios para esta memoria, activindose en su lugar la sefal RD (en los accesos de lectura)o la sefial WR (en los de eseriuura), Estas sefales son activadas por el microcontrolador al ejecutarse la instruccién MOVX, segin correspond, Mierocomtoladores SCS 51 Ing. Roger Guuchalla Narviet xorogeriyahoo.es - La Par-olivia reACTIC ene eT TST [cero wea | cero maim) {avigetss iat esse (ar gales ie .apiee! ee ee Si te hei S= Cas OC se ee ge ge 28 ge Figura 213. Cronogrami de una operacin de etura en la memoria de datos externa. En los accesos a la memoria de datos externa, el puerto PO proporciona la parte baja de la direccion a la que se accede, que puede ser ef comenido del registro DPL. (para memorias de tamafio superior a un pagina), o bien, el contenido del rexistro de 8 bits utiizado como untero (RO o RU), para memorias de 256 Byres como maximo. En el primer caso, el puerto 2 proporciona el contenido de DPH (parte ata de la diecci6n). 2.4 El registro PSW Como se ha comentado anterionnente el registro PSW o palabra de estado del programa permite tomar decisiones en funciéa del resultado de la dltima instruccion ejecutada (acarreo, ‘desbordamiento, paridad, et) asi como seleccionar el banco de registro, El formato de este registro, asi como el cometido de cada uno de los Bits que lo integran se muestra en la Figura 2.14 2.5 El registro PCON El contenido de este registro es diferente segin la versién del microcontrolador de que se trate. En los dispositivos de tecnologia HIMOS este registro solamente tiene implementado el bit nimero 7 (SMOD), Por e} contrario, en las versiones CHMOS del microcontrolador, el formato de este registro es el represeatado en la Figura 2.15, En aplicaciones donde el consumo del microcontrolador represente una consideracién importante a tener en cuenta en el disedo se utilizard la versién CHMOS, que posee dos ‘modos de operacin de bajo consumo de potencia. el modo Idle y el mado Power Down, Modo Tite ‘Cuando el microcontrolador se coloca en modo Jdle (bi IDL. 1) la sefial de reloj interna blogueada por la puerta AND (Figura 2.16) y no es aplicada 2 la CPU pero sia la de légica de iterapeons, oI puso ene ¥ los timers, El enado de la CPU es preservado em 51 ‘otalidad: el puntero de la pila, el contador de programa, la palabra de estado, el acumulador y cl resto de Ios registros, mantienen sus valores, Los pines de los puertos retienen los estados logicos que tenian en el instante en que fue activada el modo Idle. ALE y PSEN mantienen tun nivel logieo alto, “Viercontrladores ICSI Ing. Roger Guachalla Narez sorogerapshon cs ~ La Pas-Bolvia ie wb & & & hw ColeTe Ts Ts Torl—Te T NOMBRE ¥ COMENTARIO. cy [rg peta et acum ACO iy oN ane ted 6d ACC par aterm tamed at ACC Flag ible y definite pore sua LOY Fag de Overiow (sobrepasamonto) Selon dl buneo de repos. “. rs, | aS, ‘BANOS ] 3 Banco (00-07 1 Banco | (OSFH) 0 Banco 2(10-17H) 2 Banco 3C\8-IFH) | |: Fg. De propesito pene Deinite pre usuario. Flag Acsten Ausiar. Operacionesen BCD. LCI: Fag de Acatoo Figura 2.14 Formato del esto PSW. » % = eNO [aia SOL nani pein. TE behaome Sct ume Ma Dnt Bi anereeme [ee Rem prmre eaia pain ‘ea ie SK0~ (comers eh Tar eas ete ‘Figura 215, Formato de registro PCON. La instruccién que activa el bit IDL det registro PCON ¢s la iltima instruceion ejecutada, ya continuacion el microcontolador queda inmerso (cong elado) en este modo, ‘iroconrtaors MTST Tag Reger Guacals Nari: xerogerpn oho Lact I D— Figura 2.16. Actuacin de las sefles DL y PD. Existen dos modos de sacar al microcontolaor del modo Kile: * Mediante la activacién de cualquier interrupcién habilitada: El bie IDL el registro PCON se desactiva por hardware, se ejecuta Ia rutina asociada a. la interrupciéa y, tras la instruccién RETI, la proxima en ejecutarse es la siguiente a la instruccién que haya colocado al microcontrolador en este mode Los bits GEO y GF1 pueden ser utiizados para indicar si una interrupcién ha ocurrido durante cl funcionamicato normal o durante el modo le. Por ejemplo, una instruccion que active al modo Jl puede también activar uno © ambos bits de flag. Cuando ha finalizado el modo Idle por una imerrupcion, la rutina de servicio de ta misma puede examinar dichos flags. ‘© Mediante un RESET por hardware: La sefial en el pin RST borra el bit IDL directa y ssincronamente. A continuacion, Ia CPU teanuda ta ejecucién del programa desde donde fue pando, concretamente a partir de la instruccion siguiente a la que activé el modo Tale. Para evitar la posibilidad de que se roduzcan salidas inesperadas en los pines de los puerios la instruccién siguiente ‘2 la que llama el modo ile no deberi ser de escritura en los puertos 0 en la ‘memoria RAM extema ‘Una instuccién ve ative it PD dal registro PCON esa itima en ejecta antes de ‘que cl microcomoladoc ente en el modo Power Down Ese modo se carcteriza por la “parada” del oscilador-reloj del microcontrolador. Con el reloj parado (congelado), todas las fincionesestn detenidas, pro la informacion almacenada ea la RAM inteaa existos SFR semantenen. Los ines de los puertosdesalida manticnen mis respestivos valores, imagen de Jos que presetan sus respectivs rgisros del SFR. Lasslidas ALE y PSEN permanecen & nivel bao. La tinica forma de salir del modo Fower Down ¢s mediante wa reset por hardware. EL reset, como ya se tralé anteriomment, invializa toda la informacion de los registros SFR, pero ‘no modifica el contenido de la RAM interna En el modo Power Down, ls tensién de alimentacion VCC puede ser reducida hasta 2, voltios, Se debe tener cuidado, sin embargo, en asegurar que esta tensi6n no sea reducida antes de la activacion de dicho modo y que sea restaurada a su nivel de operacién nommal ‘antes de finalizar el mismo. El reser que termina con et modo Power Down también libera al ‘oscilador. Wierocontrladores MCS 51 ng, Reger Guachalla Narwez werogeripahoo es ~ La Paz-Bolvig | va

Vous aimerez peut-être aussi