micros pic16f87x memoria

31
Ing. Héctor Jiménez M. PIC16F877 (74) Organización De La Memoria

Upload: yeyo1081

Post on 18-Dec-2015

28 views

Category:

Documents


2 download

DESCRIPTION

Bases y teoria de Microcontroladores

TRANSCRIPT

  • Organizacin De La MemoriaDispone de tres bloques de memoriaMemoria de Programa tipo FLASH Memoria de Datos RAM Estas tienen buses separados para permitir el acceso simultneoMemoria de datos EEPROM

    Tienen un contador de programa de 13 bits capaz de direccionar 8K x l4 posiciones de memoria

    El registro contador del programa (PC) especifica la direccin de la instruccin que la CPU buscar (fetch) para ejecutarlaPIC16F84

  • Registro PC (Contador de Programa)Consta de 13 bits separados en dos partes y es capaz de direccionar un bloque de 8K instrucciones x 14 bitsEl byte de menor peso (PC) es un registro que se puede leer y escribir

    El de mayor peso (PC) no se puede leer, pero puede escribirse de modo indirecto a travs del registro PCLATH

    En cualquier tipo de Reset la parte alta es puesta a ceros

  • Memoria de ProgramaEl bloque total esta subdividido en 4 pginas de 2K x 14 bits = 8k

  • VectoresVector de Reset .- Cuando ocurre un reset el PC es forzado a cero, y es la direccin donde la ejecucin del programa continuar

    Vector de interrupcin .- Cuando la CPU acepta una solicitud de interrupcin ejecuta un salto a la direccin 0004h

    El programador deber colocar aqu la Rutina de Atencin a la Interrupcin (Interrupt Service Routine ISR), o bien un salto al inicio de ella

  • Memoria de StackEs una rea de memoria separada de la memoria de datos y la memoria de programa, almacena las direcciones de retorno de subrutinas

    Consta de 8 niveles de 13 bits y no es ni leble ni escribiblePCLATH no se modifica

    Opera en forma circular, es decir, cuando el apuntador est en la posicin 8 y se ejecuta otro CALL regresa a la posicin 1 sobrescribiendo el contenido

    No existe ningn indicador que avise de esta situacin, as que el usuario debe llevar el control para que no ocurra

  • Memoria De Programa

  • Organizacin de la Memoria de datosSe divide en cuatro Bancos que contienen los Registros de Propsito General (GPR) y los Registros de Funciones Especiales (SFR)

    Los bits RP1 (STATUS ) y RP0 (STATUS ) seleccionan cada Banco

  • Estructura de los BancosEn cada uno hay 7Fh posiciones de memoria (128 bytes)

    Las posiciones ms bajas estn reservadas para los Registros de Funciones Especiales (SFR)

    Por encima de los FSR cada banco estn los Registros de Propsito General (GPR) (memoria RAM esttica) para almacenamiento de datos

  • Registros de Propsito General Cada banco tiene 80 bytes, adems los Bancos 2 y 3 tienen 16 bytes adicionales, que tambin son independientes

    Los 16 bytes superiores de memoria en cada Banco tienen una raiz comn, accediendo a cualquiera de los 16 bytes en cualquier Banco, automticamente nos da acceso a los del Banco 0 (70h a 7Fh)Esta forma de acceder puede ser ventajosa en algunos casos

  • Estructura de los Bancos Para los 874/7, la memoria para datos en total es:

    96+80+16+80+16+80 = 368 byte

  • Registros de Funciones Especiales Los SFR son registros que tienen funciones de configuracin y estn asociados a perifricos para controlar su operacin; tienen un nombre asociado a su funcin

    Estos registros estn implementados como RAM esttica

  • RegistrosRegistro de Instruccin.- Registro de 14 bits. Todas las instrucciones se colocan en l para ser decodificadas por la CPU antes de ejecutarlas

    Registro W.- Registro de 8 bits que guarda resultados temporales de las operaciones realizadas por la ALU

    Registro STATUS.- Registro de 8 bits, cada uno de sus bits (Banderas) es un indicador de estado de la CPU o del resultado de la ltima operacin

  • STATUS - BanderasDirecciones 03h, 83h, 103h, 183h

    Z - Indica que el resultado de la ltima operacin es cero1 - Resultado igual a cero0 - Resultado distinto de creo

  • STATUS - BanderasC - Bit de acarreo/prstamo de la ltima operacin aritmtica En prstamo (resta), el bit se invierte antes de guardarse

    DC - Bit de acarreo/prstamo proveniente del cuarto bit menos significativo. Funciona igual que C, pero para 4 bits

  • Registro STATUS - BanderasLas restas se realizan sumando el complemento a dos del segundo operando

  • Ing. Hctor Jimnez M.

    PIC16F877 (74)Organizacin De La Memoria

  • SdDfDfsdDfSd YuGvkVulbhul

  • PIC16F877