Documentos de Académico
Documentos de Profesional
Documentos de Cultura
2019A
CAPÍTULO 1
INTRODUCCIÓN A LOS
MICROCONTROLADORES
ING.VIVIANA PÁRRAGA MSC.
VIVIANA.PARRAGAV@EPN.EDU.EC
SEMESTRE: 2019A
Ing. Viviana Parraga MSc. 2019A
CONTENIDO
Memoria de programa.
Registros SFR
Registro Status
Ing. Viviana Parraga MSc. 2019A
• Distribución de la memoria
• Dispone de 3 partes de memoria:
• Memoria programa (Flash): 2Kx14 palabras
• Memoria de Datos (RAM): 128 x 8 bytes
• Memoria de Datos (EEPROM): 64 x 8 bytes
• La memoria de programa y la memoria de datos tienen buses
independientes.
• La memoria de datos RAM tiene una estructura basada en 4
bancos de 128 bytes cada uno, seleccionables con los bits RP1
(STATUS<6>) y RP0 (STATUS<5>) del Registro STATUS.
Ing. Viviana Parraga MSc. 2019A
MEMORIA DEL
PROGRAMA 2K – 2048 instrucciones
4 páginas
8K
Palabras: 14 bits 2K – 2048 instrucciones
Instrucción 8191
2K – 2048 instrucciones
12 11 10 9 8 7 6 5 4 3 2 1 0
31
Ing. Viviana Parraga MSc. 2019A
El ancho del bus del programa de memoria es 14 bits. Por lo tanto, todas las instrucciones
son una sola palabra, así un dispositivo con una memoria de programa 8K x 14 dispone de
espacio para 8K instrucciones. Por lo que es mas fácil para determinar si un dispositivo
tiene suficiente memoria de programa para una aplicación deseada.
1 palabra = 14 bits
12 11 10 9 8 7 6 5 4 3 2 1 0
Instrucción 0 8K = 8 * 1024 palabras
Instrucción 1 8K = 8192 palabras
Instrucción 2
Instrucción 8190
Instrucción 8191
32
Ing. Viviana Parraga MSc. 2019A
MEMORIA DE
PROGRAMA (FLASH)
Mapa de 4
Memoria de 5
Programa
2047
2048
4095
4096
6143
6144
8191
33
Ing. Viviana Parraga MSc. 2019A
MEMORIA DE PROGRAMA
MEMORIA DE PROGRAMA
PC y PCLATH
• El PC se divide en dos registros: PCH (parte alta) no
accesible pero indirectamente se puede escribir a
través del registro PCLATH y PCL (parte baja) y es
un registro de la memoria de Datos.
MEMORIA DE PROGRAMA
VECTOR DE RESET
• El vector de RESET está siempre en la posición 0000h de la
memoria de programa.
• Cualquier reset (interno o externo) provocará que el PC
pase a tener el valor 0000h y que por tanto el
microcontrolador pase a ejecutar la instrucción situada en
dicha posición.
• El RESET también limpia el contenido del registro PCLATH.
Ing. Viviana Parraga MSc. 2019A
MEMORIA DE PROGRAMA
VECTOR DE INTERRUPCION
• El vector INTERRUPCION está siempre en la posición 0004h de la memoria de
programa.
• Cualquier interrupción en un microcontrolador hará que su PC pase a tener el
valor 0004h y que por tanto el microcontrolador pase a ejecutar la instrucción
situada en dicha posición.
• El salto a la rutina de interrupción no modifica el contenido del PCLATH, por lo
que cualquier modificación que se realice del PC en la rutina de interrupción debe
realizarse con cuidado de lo que se tiene cargado en el PCLATH
Ing. Viviana Parraga MSc. 2019A
MEMORIA DE PROGRAMA
MEMORIA DE DATOS
39
Ing. Viviana Parraga MSc. 2019A
MEMORIA DE DATOS
MEMORIA DE DATOS
1 REGISTRO= 8 bits
9 8 6 4 3 2 1 0
Registro 0
Registro 1
Registro 2
Registro 126
Registro 127
1 banco
41
Ing. Viviana Parraga MSc. 2019A
MEMORIA DE DATOS
MEMORIA DE DATOS
Algunas posiciones de los Bancos 1 a 3 se mapean sobre el Banco 0 y 1, es decir cuando se apunta a uno de los
registros generales mapeados de los bancos 1 a 3 se accede al mismo del banco 0 o 1 correspondiente .
Mapa de
Memoria de
Datos
GPR
Ing. Viviana Parraga MSc. 2019A
Existen 2 modos de
direccionamiento para acceder a
cualquiera de las posiciones de la
memoria de datos:
*Direccionamiento directo
Direccionamiento
* Direccionamiento indirecto se necesitan 9 bits
El FSR (Posición 04h, 84h, 104h ó 184h) actúa como puntero de la posición
de memoria con la que se pretende operar.
46
Ing. Viviana Parraga MSc. 2019A
DIRECCIONAMIENTO DIRECTO
47
Ing. Viviana Parraga MSc. 2019A
DIRECCIONAMIENTO INDIRECTO
El direccionamiento indirecto se usa cuando la dirección de la memoria de datos de la instrucción no es fija.
El direccionamiento indirecto resulta útil para el manejo de tablas de datos en la memoria de datos.
48
Ing. Viviana Parraga MSc. 2019A
REGISTROS SFR
REGISTRO: STATUS
REGISTRO: STATUS
STATUS
REGISTRO: STATUS
STATUS
DEBER 2 (02/05/2019)