Está en la página 1de 12

UNIVERSIDAD NACIONAL DE SAN AGUSTIN DE AREQUIPA

FACULTAD DE INGENIERIA DE PRODUCCION Y SERVICIOS


DEPARTAMENTO ACADEMICO DE INGENIERIA ELECTRONICA
ESCUELA PROFESIONAL DE INGENIERIA ELECTRONICA

CURSO: MICROCONTROLADORES Y
MICROPROGRAMACIN
CLASES PRCTICAS

Wildor Ferrel Serruto

AREQUIPA PER
2011

1. Introduccin
Objetivos

Describir la arquitectura del microcontrolador PIC 16F877 PIC


Manejar a travs del lenguaje ensamblador los recursos del microcontrolador
(Microprogramacin)
Simular en MPLAB y Proteus sistemas basados en el microcontrolador 16F877

Microcontrolador

Circuito integrado programable que contiene los elementos bsicos de un


computador.

Sirve para controlar una tarea determinada.


Por su tamao reducido suele ir incorporado en el dispositivo al que gobierna
(controlador embebido)

Funcin Principal del MC


1

40

39

38

37

36

35

34

33

32

10

31

11

30

12

29

13

28

14

27

15

26

16

25

17

24

El MC en un Sistema de Control
Seal de
Mando

Seal de
Referencia

Variable
Controlada
Actuadores

Seal Medida

Planta

Elemento de
Medicin

Programacin del MC

Escribir el programa en lenguaje ensamblador o en lenguaje C. En el curso


usaremos el lenguaje ensamblador.
Depurar el programa
Obtener el programa en lenguaje mquina
Grabar el programa en el microcontrolador

Arquitectura
Atributos del sistema visibles al programador en lenguaje ensamblador:
Registros de Trabajo
Modos de direccionamiento
Conjunto de Instrucciones
Sistema de Interrupciones

Organizacin
Unidades funcionales
(Hardware)

interconexiones

que

materializan

una

Arquitectura

El Microcontrolador PIC 16F877

CPU RISC. Tiene 35 instrucciones.


Cada instruccin es de una sola palabra de 14 bits.
Mxima frecuencia de reloj 20 MHz.
Todas las instrucciones a excepcin de las de salto se ejecutan en un ciclo de
instruccin.
Memoria de programa Flash de 8Kx14 words
Memoria de datos RAM de 368 bytes
Memoria de datos EEPROM de 256 Bytes
5 puertos de entrada/salida: A, B, C, D, E con 6, 8, 8, 8, 3 lneas
respectivamente
3 timers: 2 de 8 bits y 1 de 16 bits
2 mdulos de captura-comparacin-PWM
ADC de 10 bits de 8 canales
Puerto paralelo esclavo
Comunicacin serial USART, SPI/I2C

Diagrama de Bloques
Memoria
de
Programa
(Flash)
8Kx14

Memoria de
Datos
(SRAM)
368x8

Memoria
EEPROM
256x8

Timer 2
Timer 1
Timer 0

CCP1

CCP2

Buses Internos

CPU

ADC

Puertos de
Entrada/Salida

USART

MSSP
SPI/I2C

2. La CPU El Procesador Central


Circuito digital que ejecuta programas almacenados en la memoria de programa.

Microprocesador
Circuito integrado que contiene una unidad central de procesamiento CPU

Diagrama de bloques de la CPU

Memoria de Programa
Circuito digital que almacena Instrucciones.

Memoria de Datos
Circuito digital que almacena los Datos.

Esquema Simplificado de Memoria de Programa

Contenido
13

Arreglo
lineal
de
celdas

Celdas de 14 bits,
Posiciones

...

Direccin
Combinacin binaria que Identifica a una posicin de memoria

Memoria de Programa

Direccin
0000 H
0001 H
0002 H
0003 H

...

Contenido

...

Memoria de Datos

Direccin
000 H
001 H
002 H
003 H

...

1FFE H

1FE H

1FFF H

1FF H

Contenido

...

Dato
Combinacin binaria a ser procesada

Instruccin
Combinacin binaria que para el Procesador Central es una orden a ser ejecutada

Formato de Instruccin
Un Word de 14 bits

13

Lectura de Memoria de Programa

CPU

Memoria de Programa
Direccin Contenido
0000 H
0001 H
0002 H
1377
0003 H
0004 H

IR
1377

1377

PC
0002 H

...

0002

...

1FFE H
1FFF H
Programa
Secuencia de Instrucciones
Direccin
Contenido
0000 H

Instruccin 1

0001 H

Instruccin 2

0002 H

Instruccin 3

0003 H

Instruccin 4

0004 H

Instruccin 5

0005 H

Instruccin 6

...

...

1FFE H
1FFF H

Funcin del Contador de Programa


Direccionar la instruccin a realizar. (PC) - Contenido del registro PC
Ejemplo
(PC) =100A;

Memoria de Programa

PC
100A

Direccin
...

10001100100111
01110001010100
00011101010100
11101010100011
01010100000111
11101000100011
00001101010011

...

1007 H

3CA9

1008 H

0077

1009 H

24B2

100A H

09C1

100B H

180D

100C H

1160

...

Funcin de la CPU

Contenido

...

Diagrama de Flujo
INICIO
0000 PC

Carga de la
instruccin

PC + 1 PC
Ejecucin

FETCH

Ejecucin

3. La Memoria del MC
Tipos de Memoria

8Kx14 de memoria FLASH de programa


368 bytes de memoria SRAM (RAM esttica) de datos
256 bytes de EEPROM (RAM no voltil), tambin para datos

Memoria FLASH
Almacena programas. Es direccionada por el contador de programa PC

Memoria SRAM
Almacena datos

Registros de Funciones Especiales


Configuran y permiten el acceso a los recursos del microcontrolador

Memoria EEPROM
El acceso se realiza a travs de los registros SFR:
10D

EEADR

10F

EEADRH

10C

EEDATA

10E

EEDATH

18C

EECON1

18D

EECON2

00
256 bytes

FF

STATUS - Registro de Estado

IRP: Selecciona el banco en direccionamiento indirecto


RP1 RP0: Bits de seleccin de banco en direccionamiento directo
/TO: Bit time-out
/PD: Bit power-down
Z : Bit cero
DC : Bit de acarreo/prstamo de dgito
C : Bit de acarreo/prstamo

También podría gustarte