View
217
Download
4
Category
Preview:
DESCRIPTION
microcontroladores
Citation preview
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
11.. IInnttrroodduucccciinn OObbjjeettiivvooss 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 MMiiccrrooccoonnttrroollaaddoorr 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)
FFuunncciinn PPrriinncciippaall ddeell MMCC
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
EEll MMCC eenn uunn SSiisstteemmaa ddee CCoonnttrrooll
PPrrooggrraammaacciinn ddeell MMCC 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
AArrqquuiitteeccttuurraa Atributos del sistema visibles al programador en lenguaje ensamblador:
Registros de Trabajo Modos de direccionamiento Conjunto de Instrucciones Sistema de Interrupciones
OOrrggaanniizzaacciinn Unidades funcionales e interconexiones que materializan una Arquitectura (Hardware)
Elemento de Medicin
Seal Medida
PlantaActuadores
Seal de Referencia
Seal de Mando
Variable Controlada
EEll MMiiccrrooccoonnttrroollaaddoorr PPIICC 1166FF887777 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
DDiiaaggrraammaa ddee BBllooqquueess
22.. LLaa CCPPUU EEll PPrroocceessaaddoorr CCeennttrraall Circuito digital que ejecuta programas almacenados en la memoria de programa.
MMiiccrroopprroocceessaaddoorr Circuito integrado que contiene una unidad central de procesamiento CPU
CPU
Memoria de
Programa (Flash) 8Kx14
Memoria de Datos
(SRAM) 368x8
Timer 1
Timer 0
USART
Timer 2 Memoria EEPROM 256x8
ADC
Buses Internos
Puertos de Entrada/Salida
CCP2 CCP1
MSSP SPI/I2C
DDiiaaggrraammaa ddee bbllooqquueess ddee llaa CCPPUU
Memoria de Programa
Circuito digital que almacena Instrucciones.
Memoria de Datos
Circuito digital que almacena los Datos.
Esquema Simplificado de Memoria de Programa
Direccin
Combinacin binaria que Identifica a una posicin de memoria
Dato
Combinacin binaria a ser procesada
Instruccin
Combinacin binaria que para el Procesador Central es una orden a ser ejecutada
Contenido
...
0000 H Direccin
0001 H 0002 H 0003 H
1FFE H 1FFF H
...
Contenido
...
000 HDireccin
001 H002 H003 H
1FE H1FF H
...
Memoria de Programa Memoria de Datos
13 0Contenido
...
Celdas de 14 bits, Posiciones
Arreglo lineal de celdas
FFoorrmmaattoo ddee IInnssttrruucccciinn
LLeeccttuurraa ddee MMeemmoorriiaa ddee PPrrooggrraammaa
Programa
Secuencia de Instrucciones
FFuunncciinn ddeell CCoonnttaaddoorr ddee PPrrooggrraammaa Direccionar la instruccin a realizar. (PC) - Contenido del registro PC Ejemplo (PC) =100A;
Contenido
...
0000 H
Direccin
0001 H
0004 H
0005 H
1FFE H
1FFF H
...
0002 H
0003 H
Instruccin 1
Instruccin 2
Instruccin 3
Instruccin 4
Instruccin 5
Instruccin 6
CPU Memoria de Programa
0000 HDireccin
0001 H0002 H0003 H
1FFE H1FFF H
Contenido
1377
......0002
1377
0002 H
IR
PC
1377
0004 H
Un Word de 14 bits 13 0
FFuunncciinn ddee llaa CCPPUU
100A
PC
3CA9
Contenido
0077
180D
1160
...
24B2
09C1
...
1007 H
Direccin
1008 H
100B H
100C H
...
1009 H
100A H
...
Memoria de Programa
10001100100111 01110001010100 00011101010100 11101010100011 01010100000111 11101000100011 00001101010011
DDiiaaggrraammaa ddee FFlluujjoo
33.. LLaa MMeemmoorriiaa ddeell MMCC TTiippooss ddee MMeemmoorriiaa
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
MMeemmoorriiaa FFLLAASSHH Almacena programas. Es direccionada por el contador de programa PC
INICIO
Carga de la instruccin
PC + 1 PC Ejecucin
0000 PC
FETCH
Ejecucin
MMeemmoorriiaa SSRRAAMM Almacena datos
Registros de Funciones Especiales
Configuran y permiten el acceso a los recursos del microcontrolador
MMeemmoorriiaa EEEEPPRROOMM El acceso se realiza a travs de los registros SFR:
SSTTAATTUUSS -- RReeggiissttrroo ddee EEssttaaddoo
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
256 bytes
00
FF
EEDATA
EECON1
EEADRH
10C
18C
10F
EEADR 10D
EECON2 18D
EEDATH 10E
Recommended