el µc at89c51. organizaciÓn de la memoria04)_sd2... · existen dos tipos de memoria en todos los...

19
Sistemas Digitales II El µC AT89C51. ORGANIZACIÓN DE LA MEMORIA Existen dos tipos de memoria en todos los µC, memoria de programa y memoria de datos. La primera (EPROM, EEPROM, FLASH, etc) contiene los códigos de operación que se ejecutarán para seguir una secuencia determinada por el usuario. El segundo tipo (RAM) sirve para almacenar datos de manera temporal para ser usados durante la ejecución del programa. Ing. Ricardo Godínez Bravo.

Upload: vuongphuc

Post on 27-Sep-2018

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: El µC AT89C51. ORGANIZACIÓN DE LA MEMORIA04)_SD2... · Existen dos tipos de memoria en todos los µC, memoria de programa y memoria de datos. La primera (EPROM, EEPROM, ... (ROM

Sistemas Digitales II

El µC AT89C51.

ORGANIZACIÓN DE LA MEMORIA

Existen dos tipos de memoria en todos los µC, memoria de programa y memoria de datos.

La primera (EPROM, EEPROM, FLASH, etc) contiene los códigos de operación que se ejecutarán para seguir una secuencia determinada por el usuario.

El segundo tipo (RAM) sirve para almacenar datos de manera temporal para ser usados durante la ejecución del programa.

Ing. Ricardo Godínez Bravo.

Page 2: El µC AT89C51. ORGANIZACIÓN DE LA MEMORIA04)_SD2... · Existen dos tipos de memoria en todos los µC, memoria de programa y memoria de datos. La primera (EPROM, EEPROM, ... (ROM

Sistemas Digitales II

El µC AT89C51.

ORGANIZACIÓN DE LA MEMORIA

La organización de la memoria en los µC51 se puede clasificar en memoria externa y memoria interna:

Ing. Ricardo Godínez Bravo.

Page 3: El µC AT89C51. ORGANIZACIÓN DE LA MEMORIA04)_SD2... · Existen dos tipos de memoria en todos los µC, memoria de programa y memoria de datos. La primera (EPROM, EEPROM, ... (ROM

Sistemas Digitales II

El µC AT89C51.

ORGANIZACIÓN DE LA MEMORIA

Acceso a Memoria Externa de Programa

Para la ejecución externa de programa, los puertos P0 y P2 están dedicados para el direccionamiento de esta:

El puerto P0 sirve como bus de datos y parte baja de direcciones. Este envía la parte baja del contador de programa (PCL).

Durante el tiempo que se genera el byte bajo de direcciones(A0-A7), la señal ALE habilita un Latch para multiplexar este puerto.

Ing. Ricardo Godínez Bravo.

Page 4: El µC AT89C51. ORGANIZACIÓN DE LA MEMORIA04)_SD2... · Existen dos tipos de memoria en todos los µC, memoria de programa y memoria de datos. La primera (EPROM, EEPROM, ... (ROM

Sistemas Digitales II

El µC AT89C51.

ORGANIZACIÓN DE LA MEMORIA

Acceso a Memoria Externa de Programa

Para la ejecución externa de programa, los puertos P0 y P2 están dedicados para el direccionamiento de esta:

El puerto P2 sirve para generar la parte alta de direcciones (PCH).

En este momento la señal PSEN’habilita la salida de datos de la memoria externa y la CPU lee el código de operación a través del puerto P0.

Ing. Ricardo Godínez Bravo.

Page 5: El µC AT89C51. ORGANIZACIÓN DE LA MEMORIA04)_SD2... · Existen dos tipos de memoria en todos los µC, memoria de programa y memoria de datos. La primera (EPROM, EEPROM, ... (ROM

Sistemas Digitales II

El µC AT89C51.

ORGANIZACIÓN DE LA MEMORIA

Acceso a Memoria Externa de Programa

El tiempo de acceso a la memoria esta determinado por los ciclos de maquina en el microcontrolador.

En los µC51 un ciclo de máquina equivale a 12 periodos de oscilación de reloj.

Durante un ciclo de máquina la señal ALE’ se activa dos veces para leer dos bytes de la memoria de programa dependiendo de los byte que determinen las instrucciones.

Ing. Ricardo Godínez Bravo.

Page 6: El µC AT89C51. ORGANIZACIÓN DE LA MEMORIA04)_SD2... · Existen dos tipos de memoria en todos los µC, memoria de programa y memoria de datos. La primera (EPROM, EEPROM, ... (ROM

Sistemas Digitales II

El µC AT89C51.

ORGANIZACIÓN DE LA MEMORIA

Acceso a Memoria Externa de Datos

En el caso de tener a memoria externa de datos, la CPU genera las señales de RD’ y WR’ (pines P3.6 y P3.7) necesarias para tener accesoa dicha memoria. En este caso la señal PSEN’ queda sin uso.

La única manera de tener acceso a este tipo de memoria es con la instrucción MOVX usando cualquiera de los registros DPTR, R0 ó R1 como registros de dirección.

Ing. Ricardo Godínez Bravo.

Page 7: El µC AT89C51. ORGANIZACIÓN DE LA MEMORIA04)_SD2... · Existen dos tipos de memoria en todos los µC, memoria de programa y memoria de datos. La primera (EPROM, EEPROM, ... (ROM

Sistemas Digitales II

El µC AT89C51.

ORGANIZACIÓN DE LA MEMORIA

Acceso a Memoria Externa de Datos

La memoria de datos (RAM) se interfasa con el microcontrolador a través de las líneas RD’ y WR’.

Usando los puertos P0 y P2 se pueden direccionar 64K Bytes de memoria.

El diagrama de tiempos para lectura (escritura) de memoria externa de datos mediante la instrucción:

MOVX A,@DPTR(MOVX @DPTR,A)

Se muestra en la figura siguiente:Ing. Ricardo Godínez Bravo.

Page 8: El µC AT89C51. ORGANIZACIÓN DE LA MEMORIA04)_SD2... · Existen dos tipos de memoria en todos los µC, memoria de programa y memoria de datos. La primera (EPROM, EEPROM, ... (ROM

Sistemas Digitales II

El µC AT89C51.

ORGANIZACIÓN DE LA MEMORIA

Decodificación de Memoria Externa

Cuando se interfasan múltiples memorias (ROM y RAM) al µC51 se requiere de decodificar la memoria.

La decodificación es similar a la de todos los procesadores mediante el uso de decodificadores (74HC138) como dispositivos de control de habilitación de las memorias.

Dado que se tienen señales distintas para lectura de memoria (PSEN’ y RD’) se pueden direccionar 64K Bytes de memoria de ambos tipos. Ing. Ricardo Godínez Bravo.

Page 9: El µC AT89C51. ORGANIZACIÓN DE LA MEMORIA04)_SD2... · Existen dos tipos de memoria en todos los µC, memoria de programa y memoria de datos. La primera (EPROM, EEPROM, ... (ROM

Sistemas Digitales II

El µC AT89C51.

ORGANIZACIÓN DE LA MEMORIA

Acceso a Memoria Interna de Datos

La memoria interna de datos esta dividida en dos bloques de 128 bytes.

El primer bloque (00H - 7FH) es accesado por direccionamiento directo e indirecto.

El segundo bloque (80H - FFH) sólo puede ser accesado por direccionamiento directo y es donde se encuentran los registros de funciones especiales (SFR`s).

Ing. Ricardo Godínez Bravo.

Page 10: El µC AT89C51. ORGANIZACIÓN DE LA MEMORIA04)_SD2... · Existen dos tipos de memoria en todos los µC, memoria de programa y memoria de datos. La primera (EPROM, EEPROM, ... (ROM

Sistemas Digitales II

El µC AT89C51.

ORGANIZACIÓN DE LA MEMORIA

Acceso a Memoria Interna de Datos

El acceso de los 128 bytes menos significativos de la RAM interna esta dividido en tres bloques básicos:

00H - 1FH. Área de bancos para acceso indirecto ó apuntadores.

20H - 2FH. Área direccionable por bits.

30H - 7FH. Área de propósito general.

Ing. Ricardo Godínez Bravo.

Page 11: El µC AT89C51. ORGANIZACIÓN DE LA MEMORIA04)_SD2... · Existen dos tipos de memoria en todos los µC, memoria de programa y memoria de datos. La primera (EPROM, EEPROM, ... (ROM

Sistemas Digitales II

El µC AT89C51.

ORGANIZACIÓN DE LA MEMORIA

Acceso a Memoria Interna de Datos

Los 128 bytes más significativos de la memoria RAM interna contienen los registros de funciones especiales SFR’s.

Estos registros (80H - FFH) se pueden accesar únicamente de manera directa*.

* Los modos de direccionamiento se analizarán mas adelante.

Ing. Ricardo Godínez Bravo.

Page 12: El µC AT89C51. ORGANIZACIÓN DE LA MEMORIA04)_SD2... · Existen dos tipos de memoria en todos los µC, memoria de programa y memoria de datos. La primera (EPROM, EEPROM, ... (ROM

Sistemas Digitales II

El µC AT89C51.

ORGANIZACIÓN DE LA MEMORIA

Registros de Funciones Especiales SFR’s

PSW (Program Status Word). Contiene la información del estado del procesador después de haber ejecutado una instrucción.

P (Bandera de paridad). Refleja el numero de 1’s en el acumulador:

P=0, parP=1, impar

Ing. Ricardo Godínez Bravo.

Page 13: El µC AT89C51. ORGANIZACIÓN DE LA MEMORIA04)_SD2... · Existen dos tipos de memoria en todos los µC, memoria de programa y memoria de datos. La primera (EPROM, EEPROM, ... (ROM

Sistemas Digitales II

El µC AT89C51.

ORGANIZACIÓN DE LA MEMORIA

Registros de Funciones Especiales SFR’s

PSW (Program Status Word). Contiene la información del estado del procesador después de haber ejecutado una instrucción.

OV (Bandera de sobreflujo). Un nivel alto “1” indica un sobreflujo en operaciones aritméticas de multiplicación y división.

Ing. Ricardo Godínez Bravo.

Page 14: El µC AT89C51. ORGANIZACIÓN DE LA MEMORIA04)_SD2... · Existen dos tipos de memoria en todos los µC, memoria de programa y memoria de datos. La primera (EPROM, EEPROM, ... (ROM

Sistemas Digitales II

El µC AT89C51.

ORGANIZACIÓN DE LA MEMORIA

Ing. Ricardo Godínez Bravo.

PSW (Program Status Word). Contiene la información del estado del procesador después de haber ejecutado una instrucción.

Registros de Funciones Especiales SFR’s

RS1,0 (Banderas de selección de bancos). RS1 RS0 BANCO

0 0 0

0 1 1

1 0 2

1 1 3

Page 15: El µC AT89C51. ORGANIZACIÓN DE LA MEMORIA04)_SD2... · Existen dos tipos de memoria en todos los µC, memoria de programa y memoria de datos. La primera (EPROM, EEPROM, ... (ROM

Sistemas Digitales II

El µC AT89C51.

ORGANIZACIÓN DE LA MEMORIA

Registros de Funciones Especiales SFR’s

PSW (Program Status Word). Contiene la información del estado del procesador después de haber ejecutado una instrucción.

AC (Bandera de acarreo intermedio). Indica acarreo o préstamo entre los bits 3 y 4 del operando destino en operaciones BCD.

Ing. Ricardo Godínez Bravo.

Page 16: El µC AT89C51. ORGANIZACIÓN DE LA MEMORIA04)_SD2... · Existen dos tipos de memoria en todos los µC, memoria de programa y memoria de datos. La primera (EPROM, EEPROM, ... (ROM

Sistemas Digitales II

El µC AT89C51.

ORGANIZACIÓN DE LA MEMORIA

Registros de Funciones Especiales SFR’s

PSW (Program Status Word). Contiene la información del estado del procesador después de haber ejecutado una instrucción.

CY (Bandera de acarreo). Indica acarreo o préstamo del operando destino en operaciones aritméticas de suma y resta.

Ing. Ricardo Godínez Bravo.

Page 17: El µC AT89C51. ORGANIZACIÓN DE LA MEMORIA04)_SD2... · Existen dos tipos de memoria en todos los µC, memoria de programa y memoria de datos. La primera (EPROM, EEPROM, ... (ROM

Sistemas Digitales II

El µC AT89C51.

ORGANIZACIÓN DE LA MEMORIA

Registros de Funciones Especiales SFR’s

Acc (Registro Acumulador). Es el registro de propósito general el cual es usado en algunas de las instrucciones que modifican el PSW.

B (Registro Auxiliar). Es un registro de propósito general el cual es usado como segundo operando en instrucciones de multiplicación y división.

Ing. Ricardo Godínez Bravo.

Page 18: El µC AT89C51. ORGANIZACIÓN DE LA MEMORIA04)_SD2... · Existen dos tipos de memoria en todos los µC, memoria de programa y memoria de datos. La primera (EPROM, EEPROM, ... (ROM

Sistemas Digitales II

El µC AT89C51.

ORGANIZACIÓN DE LA MEMORIA

Registros de Funciones Especiales SFR’s

DPTR (Registro Apuntador de datos). Es usado para accesar datos y tablas.

Este registro consiste en dos registros de 8 bits (DPH y DPL) ó bien puede usarse como registro de 16 bits para apuntar a direcciones de memoria.

DPH (bits 15-8)

DPL (bits 7-0)

Ing. Ricardo Godínez Bravo.

Page 19: El µC AT89C51. ORGANIZACIÓN DE LA MEMORIA04)_SD2... · Existen dos tipos de memoria en todos los µC, memoria de programa y memoria de datos. La primera (EPROM, EEPROM, ... (ROM

Sistemas Digitales II

El µC AT89C51.

ORGANIZACIÓN DE LA MEMORIA

Registros de Funciones Especiales SFR’s

SP (Registro Apuntador de pila). Es usado para direccionar la pila durante instrucciones PUSH, POP y CALL.

El valor por default de la pila es la dirección 07H dentro de la memoria interna de datos (RAM), siendo esta de tipo LIFO.

El valor del SP se incrementa antes de almacenar información y se decrementa después de recuperar información.

Ing. Ricardo Godínez Bravo.