Microc Pic16f84a Cap 14 - 20

You might also like

You are on page 1of 116
CAPITULO 14 EEPROM DE DATOS En algunos proyectos es necesario guardar Ia informacién que se gencra durante ef proceso de una forma permanenie, es decir, esos datos han de permanecer incluso cuando el sistema se desconecta de la alimentacién. Para realizar esta funcién los microcontroladores PIC disponen de un area de datos EEPROM no volitil que se deseribe en este capitulo. 14.1. MEMORIA EEPROM DE DATOS El PICI6F84 dispone de una zona con 64 bytes de memoria EEPROM para almacenar datos que no se pierden al desconectar la alimentacién. Esto ¢s muy itil ya que permite guardar datos permanentemente, La figura 14-1 (que es un detalle de la arquitectura interna completa de la figura 4-1) muestra la estructura de esta memoria y los ropistros asociados. Como en cualquier otra memoria EEPROM se pueden realizar dos tipos de operaciones: Operacién de lectura. * Operacién de eseritura 0 grabacién. Un ciclo de grabacién en una posicisn EEPROM de datos dura unos 19 ms, un tiempo muy elevado para la velocidad del procesador, que se controla mediante un femporizador interno. Al escribir en una posicin de memoria ya ocupada, automaticamente se borra el contenido que habfa y se introduce el iuevo dato, por lo que no hay comeado de borrado, 214_MICROCONTROLADOR PIC 16784. DESARROLLO DE PROYECTOS mana El PIC16F84A soporta un millon de ciclos de escritura/borrado de su memoria EEPROM de datos y es capaz de guardar |a informacion inalterada durante mais de 40 afios. =| 0éh EEDATA | EEGONT 68h re [ ous | PeXaTH | PGLATH om cer icon | wToON a oh [eo SFR (Sp REGISTROS MAPERDO DE EN GPR —f prorosito eancoo > ||) Generac 4 4Fn | Ch [soy Doh . It 3 NO|MPLEMENTADO + GAPOSICIONES | °% - FISICAMENTE DEMEMORIA DE | -E eveencomon, So DATOS Bp oe EEPROM + ma Bus CE 3th Davos BECODIFIGADOR Figura 14-1 Memoria EEPROM de datos en el PICIOF84 Esta. memoria no forma parte del espacio direccionable y s6lo ¢s accesible para lectura y escritura a través de registros. Los rogistros relacionados con esta memoria EEPROM de datos son: EEDATA (EEPROM Data Register). Conticne los bytes que se van a escribir 0 que se han leido de la EEPROM de datos. EEADR (EEPROM Address Register). Conticne la direccign de In FEPROM de datos a la que acceder para leer o escribir. Las 64 posiciones de memoria EEPROM ocupan las direcciones de un mapa que comienza en la posicin 00h y termina en la 3Fh, por lo que los dos bits de mas peso de este registro siempre valen 0. EECONI (EEPROM Control Register 1). Los bits de este registro definen ol modo de funcionamiento de esta memoria (tabla 14-1). Los bits RD y WR del EECONL indican respectivamente lectura o escritura. No hay que ponerlos a “0”, sélo a “I”, ya que se borran antomiiticamente cuando la operacién de lectura 0 escritura ha sido completada. EECON2 (EEPROM Control Register 2). Este registro no esta implementado fisicamente, por lo que es imposible leerlo (si se intenta leer, todos sus bits se leen como ceros). Se emplea como dispositivo de seguridad durante el proceso CASA CAPITULO 4: FEPROM DE DATOS 215 de escritura de la EEPROM, para evitar las interferencias en el largo intervalo de tiempo que precisa su desarrollo. 14.2 REGISTRO EECON1 Es el registro para e] control de la memoria EEPROM de datos. Se encuentra en la posicién 88h del Banco 1. Sdlo destina cinco bits para este control: | | | EEIF | WRERR | WREN | WR RD | Bit7 | Bré | Bas | Bis | Bits | Bit? Bit i Bit 0 Tabla 14-1 Registro EECONI * RD (Read Control Bit). Bit de control de tectura en la EEPROM. AL ponerlo en "1" se inicia la lectura de un byte en la EEPROM de datos. Este bit se Timpia (se "0*) por hardware automaticamente al finalizar la lectura de 1a posicién . No inicia la lectura de la EEPROM 0 la misma ha terminado. -Inicia la lectura de la BEPROM, Se borra por hardware, © WR (rite Control Bip. Bit de control de escritura en la EEPROM. Al penerlo en 1” se inicia una escritura de un byte en la EEPROM de datos. Este bit se Jimpia (se pone cu "O") por hardware automaticamente una vez fa escritura de la EEPROM ha terminado. © WR=0.No inicia la escritura de la EEPROM o la misma ha terminado. o WR=1. Inicia la cscritura de la EEPROM. Se borra por hardware. * WREN (EEPROM Write Enable bit). Permiso de escritura en la EEPROM. © WREN =0. Prohibe la eseritura de la EEPROM. © WREN = 1. Permite Ia escritura de la EEPROM. * WRERR (EEPROM Write Error Flag Bi). Flag, de error en la eseritura. Se posiciona a “1” cuando la operacién de escritura termina prematurament: debido a cualquicr condicién de reset. o WRERR = 0. Le operacion de escritura se ha completado correctamente o WRERR = 1. La opetacion de escritura ba terminado premauramente * EEIF (EEPROM Write Operation Interrupi Flag Bin). Flag de estado de interrupeién por finalizacion de escritura en EEPROM. Seflala el final con éxito de la operacion de escritura de un byte en la EEPROM. o EEF =0. La operacion de escritura de la EEPROM no ha terminado 0 no comenz6. o EEIF = 1. La operacién de escritura de la EEPROM ha terminado. Debe borrarse por software. © Bits 5, 6 y 7 (Unimplemented). No implementados fisicamente. Se leen como “0”.

You might also like