MICROCONTROLADORES-1-1.ppt

89
MICROCONTROLADORES MICROCONTROLADORES YESENIA RESTREPO CHAUSTRE ING. ELECTRONICO UFPS 11 ABRIL 2012

Transcript of MICROCONTROLADORES-1-1.ppt

Page 1: MICROCONTROLADORES-1-1.ppt

MICROCONTROLADORESMICROCONTROLADORESYESENIA RESTREPO CHAUSTRE

ING. ELECTRONICOUFPS

11 ABRIL 2012

Page 2: MICROCONTROLADORES-1-1.ppt

INTRODUCCION AL INTRODUCCION AL MICROCONTROLADORMICROCONTROLADOR

Un poco de historiaInicialmente cuando no existían los microprocesadores, se requería para el diseño de circuitos electrónicos muchos componentes y cálculos matemáticos. Un circuito lógico básico requería de una gran cantidad de elementos electrónicos basados en transistores, resistencias, etc,

2

Page 3: MICROCONTROLADORES-1-1.ppt

INTRODUCCION AL INTRODUCCION AL MICROCONTROLADORMICROCONTROLADOR

Un poco de historiaEn el año 1971 apareció el primer microprocesador el cual originó un cambio decisivo en las técnicas de diseño de la mayoría de los equipos.

Entre los microprocesadores mas conocidos tenemos el popular Z-80 y el 8085.

3

Page 4: MICROCONTROLADORES-1-1.ppt

INTRODUCCION AL INTRODUCCION AL MICROCONTROLADORMICROCONTROLADOR

Un poco de historiaLos diseñadores de equipos electrónicos ahora tenían equipos que podían realizar mayor cantidad de tareas en menos tiempo y su tamaño se redujo considerablemente.

sin embargo, después de cierto tiempo aparece una nueva tecnología llamada microcontrolador que simplifica aun mas el diseño electrónico.

4

Page 5: MICROCONTROLADORES-1-1.ppt

DIFERENCIA ENTRE MICROCONTROLADOR DIFERENCIA ENTRE MICROCONTROLADOR Y MICROPOCESADORY MICROPOCESADOR

MicroprocesadorEs un sistema abierto con el que puede construirse un computador con las características que se desee, acoplándole los módulos necesarios.

La Unidad Central de Proceso (UCP), interpreta las instrucciones y el cambio de datos que las ejecuta.

5

Page 6: MICROCONTROLADORES-1-1.ppt

DIFERENCIA ENTRE MICROCONTROLADOR Y DIFERENCIA ENTRE MICROCONTROLADOR Y MICROPOCESADORMICROPOCESADOR

Microprocesador

6

Page 7: MICROCONTROLADORES-1-1.ppt

DIFERENCIA ENTRE MICROCONTROLADOR Y DIFERENCIA ENTRE MICROCONTROLADOR Y MICROPOCESADORMICROPOCESADOR

MicrocontroladorEs un sistema cerrado que contiene un computador completo.

Todas las partes del computador están contenidas en su interior y solo salen al exterior las líneas que gobiernan los periféricos.

7

Page 8: MICROCONTROLADORES-1-1.ppt

8

Cada fabricante de microcontroladores oferta un elevado número de modelos diferentes, desde los más sencillos hasta los más sofisticados.

DIFERENCIA ENTRE MICROCONTROLADOR Y MICROPOCESADOR

Page 9: MICROCONTROLADORES-1-1.ppt

ARQUITECTURA INTERNAARQUITECTURA INTERNA

Un microcontrolador posee todos los componentes de un computador, pero con unas características fijas que no pueden alterarse:◦Procesador◦Memoria de programa (No volátil)◦Memoria datos (lectura y escritura)◦Líneas E/S para los controladores de periféricos◦Recursos auxiliares

9

Page 10: MICROCONTROLADORES-1-1.ppt

ARQUITECTURA INTERNAARQUITECTURA INTERNA

1. Procesador o CPU.2. Memoria no volátil para contener el programa.3. Memoria de lectura y escritura para guardar los

datos.4. Líneas de E/S para los controladores de periféricos.5. Recursos auxiliares (Módulos para el control de

periféricos)

10

Page 11: MICROCONTROLADORES-1-1.ppt

PROCESADOR O CPUPROCESADOR O CPU

Existen dos arquitecturas, se diferencian en la forma de conexión de la memoria al procesador y en los buses que cada una necesita:

◦Arquitectura Von Neumann◦Arquitectura Harvad

11

Es el elemento más importante del microcontrolador y determina sus principales características, tanto a nivel de hardware como de software

Page 12: MICROCONTROLADORES-1-1.ppt

ARQUITECTURA VON NEUMANNARQUITECTURA VON NEUMANN

12

Algunas familias de microcontroladores como la INTEL-51 y la Z80

Page 13: MICROCONTROLADORES-1-1.ppt

ARQUITECTURA VON NEUMANNARQUITECTURA VON NEUMANN

Existe una sola memoria, donde coexisten las instrucciones de programa y los datos, accedidos con un bus de dirección, uno de datos y uno de control.

13

Page 14: MICROCONTROLADORES-1-1.ppt

ARQUITECTURA VON NEUMANNARQUITECTURA VON NEUMANN

Limitación:Longitud de las instrucciones por el bus de

datos (varios accesos a memoria para instrucciones complejas).

velocidad de operación (bus único para datos e instrucciones) e impide superponer ambos tiempos de acceso.

14

Page 15: MICROCONTROLADORES-1-1.ppt

ARQUITECTURA HARVARDARQUITECTURA HARVARD

15

Utilizada en sistemas embebidos en general.

Page 16: MICROCONTROLADORES-1-1.ppt

ARQUITECTURA HARVARDARQUITECTURA HARVARD

◦Memoria de datos separada de la memoria de instrucciones

◦Palabra de datos◦Palabra de instrucción

◦Conjunto reducido de instrucciones (RISC)◦Ejecución de instrucciones en un ciclo de

instrucción.◦Paralelismo implícito, segmentación del

procesador (pipe-line)

16

Page 17: MICROCONTROLADORES-1-1.ppt

El alto rendimiento que poseen los microcontroladores se debe a tres técnicas:

◦Arquitectura Harvard◦Arquitectura RISC◦Segmentación

17

Page 18: MICROCONTROLADORES-1-1.ppt

MEMORIA DE PROGRAMA (ROM)MEMORIA DE PROGRAMA (ROM)

1. ROM con máscara2. OTP (One Time Programmable)3. EPROM4. EEPROM5. FLASH

18

Esta diseñado para que en su memoria de programa se almacenen todas las instrucciones del programa de control.

Page 19: MICROCONTROLADORES-1-1.ppt

MEMORIA DE PROGRAMA (ROM)MEMORIA DE PROGRAMA (ROM)

1. ROM con máscaraSe graba durante el proceso de fabricación mediante el uso de “máscaras”Se aconseja este tipo de memoria cuando se precisan series muy grandes

19

Page 20: MICROCONTROLADORES-1-1.ppt

MEMORIA DE PROGRAMA (ROM)MEMORIA DE PROGRAMA (ROM)

2 . OTP (One Time Programmable)Sólo se puede grabar una vez por parte del usuario.Se aconseja este tipo de memoria para prototipos finales.

20

Page 21: MICROCONTROLADORES-1-1.ppt

MEMORIA DE PROGRAMA (ROM)MEMORIA DE PROGRAMA (ROM)

3. EPROMEn la superficie de la cápsula del microcontrolador existe una ventana de cristal por la que se puede someter al chip de la memoria a rayos ultravioleta para producir su borrado y emplearla nuevamente.

21

Page 22: MICROCONTROLADORES-1-1.ppt

MEMORIA DE PROGRAMA (ROM)MEMORIA DE PROGRAMA (ROM)

4. EEPROMLa grabación es similar a las memorias OTP y EPROM, pero el borrado es mucho más sencillo al poderse efectuar de la misma forma que el grabado, o sea, eléctricamente.Garantizan 1.000.000 de ciclos de escritura/borrado.

22

Page 23: MICROCONTROLADORES-1-1.ppt

MEMORIA DE PROGRAMA (ROM)MEMORIA DE PROGRAMA (ROM)

5. FLASHSe puede escribir y borrar en circuito al igual que la EEPROM, pero suelen disponer de mayor capacidad que estas últimas.Pueden ser programadas con las mismas tensiones de alimentación del microcontrolador.

23

Page 24: MICROCONTROLADORES-1-1.ppt

MEMORIA DE DATOS (RAM)MEMORIA DE DATOS (RAM)

Es una memoria volátil y se destina a guardar las variables y los datos (SRAM).

Los microcontroladores disponen de capacidades de RAM comprendidas entre 20 y 512 bytes.

Existen microcontroladores que disponen de memoria EEPROM para contener datos.

24

Page 25: MICROCONTROLADORES-1-1.ppt

REGISTROS Y BITSREGISTROS Y BITS

Un registro es una posición de memoria en la cual se puede almacenar un dato. Es decir que la memoria esta dividida en pequeñas partes llamadas “Registros”.

El primer registro de una memoria corresponde a la dirección 00H.

Hay un conjunto de registros que ya vienen “Predefinidos” desde la fábrica.

Cada registro esta dividido en 8 partes, Bits.

25

Page 26: MICROCONTROLADORES-1-1.ppt

LINEAS DE ENTRADA/SALIDA LINEAS DE ENTRADA/SALIDA (PUERTOS)(PUERTOS)

Los microcontroladores cuentan con una serie de pines destinados a entrada y salida de datos o señales digitales. A estos pines se les denomina “Puerto”.

Los puertos están controlados por los registros.

Entradas salidas de propósito general, trabajo con dispositivos simples como relés, Leds, etc.

26

Page 27: MICROCONTROLADORES-1-1.ppt

RECURSOS AUXILIARESRECURSOS AUXILIARESCircuito de reloj.Temporizadores y contadores.Conversores AD y DA.ComparadoresModulador de ancho de pulsos (PWM)Puerto serieOtros puertos de comunicación (USB,

CAN)Sistema de protección.Estado de reposo

27

Page 28: MICROCONTROLADORES-1-1.ppt

LOS MICROCONTROLADORES PICLOS MICROCONTROLADORES PIC

Los 'PIC' son una familia de microcontroladores tipo RISC (Reduced Instruction Set Computer) fabricados por Microchip Technology Inc. y derivados del PIC1650, originalmente desarrollado por la división de microelectrónica de General Instruments.

PIC “Peripheral Interface Controller”.

El PIC de 8 bits se desarrollo para el año 1975

28

Page 29: MICROCONTROLADORES-1-1.ppt

LOS MICROCONTROLADORES PICLOS MICROCONTROLADORES PIC

Los microcontroladores PIC incorporan en su procesador tres características: Procesador tipo RISC Procesador segmentado Arquitectura HARVARD

Con estos recursos los PIC son capaces de ejecutar en un ciclo de instrucción todas las instrucciones, excepto las de salto que tardan el doble.

29

Page 30: MICROCONTROLADORES-1-1.ppt

LA FAMILIA DE LOS PICLA FAMILIA DE LOS PIC

Se divide en cuatro gamas:Gama enana, gama baja, gama media y gama alta.

Sus diferencias radica en:El numero de instrucciones y longitudEl número de puertos y funciones.

Lo cual se refleja en el encapsulado, la complejidad interna y de programación, y en el número de aplicaciones.

30

Page 31: MICROCONTROLADORES-1-1.ppt

NOMENCLATURA DE LOS PIC’SNOMENCLATURA DE LOS PIC’S

PIC nnLLLxxxnn: Un número propio de la gama del PIC

LLL: Código de letras donde la primera indica la tensión de alimentación y las otras dos el tipo de memoria que utiliza

Xxx: Número que indica el modelo del PIC.

31

Page 32: MICROCONTROLADORES-1-1.ppt

NOMENCLATURA DE LOS PIC’SNOMENCLATURA DE LOS PIC’S

32

Page 33: MICROCONTROLADORES-1-1.ppt

GAMA ENANAGAMA ENANA

PIC 12C(F)XXX, de 8 patas (pines)

Aunque solo tienen 8 pines, pueden destinar hasta 6 como líneas de E/S para los periféricos porque disponen de un oscilador interno R-C.

33

Page 34: MICROCONTROLADORES-1-1.ppt

GAMA ENANAGAMA ENANACaracterísticas de los modelos PIC16C5X

34

Page 35: MICROCONTROLADORES-1-1.ppt

GAMA BAJA O BASICAGAMA BAJA O BASICA

Mejores relaciones coste/prestaciones.Encapsulados con 18 y 28 pinesPueden alimentarse con una tensión 2.5V33 instrucciones con formato de 12bits.

35

Page 36: MICROCONTROLADORES-1-1.ppt

GAMA BAJA PIC16C5XGAMA BAJA PIC16C5X

36

Principales características de los modelos de gama baja.

Page 37: MICROCONTROLADORES-1-1.ppt

GAMA MEDIAGAMA MEDIA

Encapsulado desde 18 hasta 68 pines35 instrucciones de 14 bits

37

Page 38: MICROCONTROLADORES-1-1.ppt

GAMA MEDIA PIC16CXXXGAMA MEDIA PIC16CXXX

38

Características relevantes de los modelos PIC16X8X de la gama media

Page 39: MICROCONTROLADORES-1-1.ppt

GAMA ALTAGAMA ALTA

Alcanzan 58 instrucciones de 16 bitsSistema de gestión de interrupciones

vectorizadas Incluyen variados controladores de

periféricos, puertas de comunicación serie y paralelo

Arquitectura abierta.

39

Page 40: MICROCONTROLADORES-1-1.ppt

EL PIC16X84EL PIC16X84

Pertenece a la familia de la gama mediaTiene solo 18 pinesPosee una memoria de programa de 1K

palabras de 14bits cada una64 bytes como memoria de datos

auxiliar y opcional

40

Page 41: MICROCONTROLADORES-1-1.ppt

TARJETA DE PRESENTACION DE TARJETA DE PRESENTACION DE PIC16X84PIC16X84

Memoria de programa 1Kx14Memoria de datos RAM 36 byte-PIC16C84

y de 68 byte-PIC16F84Memoria de datos 64bytes/EEPROMPila de 8 nivelesInterrupciones 4 tipos diferentesJuego de instrucciones 35Encapsulado Platico DIP de 18 pinesFrecuencia de trabajo 10MHz Máxima

41

Page 42: MICROCONTROLADORES-1-1.ppt

TARJETA DE PRESENTACION DE TARJETA DE PRESENTACION DE PIC16X84PIC16X84

Temporizadores : Solo uno TMR0Líneas E/S digitales : 13 Puerta A y

Puerta BVoltaje de alimentación : VDD de 2 a

6VDCCorriente máxima absorbida : 80mA-

Puerta A y 150mA-Puerta BCorriente máxima suministrada : 50mA-

Puerta A y 100mA-Puerta B42

Page 43: MICROCONTROLADORES-1-1.ppt

ASPECTO EXTERNOASPECTO EXTERNO

43

•VDD

•VSS

•OSC1/CLKIN

•OSC2/CLKOUT

•MCLR9#

•RA0-RA4

•RA4/TOCKI

•RB0-RB7

•RB0/INT

Page 44: MICROCONTROLADORES-1-1.ppt

FRECUENCIA DE FRECUENCIA DE FUNCIONAMIENTO FUNCIONAMIENTO

Cuando un PIC16X8X funciona a 10MHz, le corresponde un ciclo de instrucción de 400ns.

Ciclo de instrucción: 4x100ns=400ns

Todas las instrucciones del PIC se realizan en un ciclo de instrucción menos las de salto.

Se aplica la técnica de segmentación o Pipeline

44

Page 45: MICROCONTROLADORES-1-1.ppt

FRECUENCIA DE FUNCIONAMIENTOFRECUENCIA DE FUNCIONAMIENTO

45

Q1: Se incrementa el contador de programa.Q2-Q3: Se produce la decodificación y la ejecución de la instrucciónQ4: Se busca el código de la instrucción en la memoria del programa y se carga en el registro de instrucciones.

Page 46: MICROCONTROLADORES-1-1.ppt

TIPOS DE OSCILADORESTIPOS DE OSCILADORES

OSCILADOR TIPO RCUn oscilador formado por una resistencia y un condensador

46

Page 47: MICROCONTROLADORES-1-1.ppt

TIPOS DE OSCILADORESTIPOS DE OSCILADORES

OSCILADOR TIPO HSUn oscilador que alcanza una alta velocidad entre 4 y 10MHz, basado en un cristal de cuarzo o un resonador cerámico

47

Page 48: MICROCONTROLADORES-1-1.ppt

TIPOS DE OSCILADORESTIPOS DE OSCILADORES

OSCILADOR TIPO XTEs un resonador de cristal o resonador para frecuencias estándar, comprendida entre 100KHz y 4MHz.

48

Page 49: MICROCONTROLADORES-1-1.ppt

TIPOS DE OSCILADORESTIPOS DE OSCILADORES

OSCILADOR TIPO LPOscilador de bajo consumo con cristal o resonador diseñado para trabajar en un rango de frecuencias de 35 a 200KHz.

El cristal de cuarzo o el resonador cerámico se coloca entre los pines OSC1 y OSC2

49

Page 50: MICROCONTROLADORES-1-1.ppt

ESQUEMA MINIMO DE MONTAJE ESQUEMA MINIMO DE MONTAJE DEL PIC16F84DEL PIC16F84

50

Page 51: MICROCONTROLADORES-1-1.ppt

REINICIALIZACION O RESETREINICIALIZACION O RESET

Con un nivel lógico bajo en MCLR# el microcontrolador se reinicializa:

1. El contador de programa se carga con la dirección 0.

2. La mayoría de los registros de estado y control del procesador toman un estado conocido y determinado.

51

Page 52: MICROCONTROLADORES-1-1.ppt

EN EL INTERIOR DEL EN EL INTERIOR DEL PROCESADORPROCESADOR

Los microcontroladores PIC incorporan tres característica:◦Procesador tipo RISC◦Procesador segmentado◦Arquitectura Harvard

Una condición es la simetría y ortogonalidad en el formato de las instrucciones (14bits)

El juego de instrucciones se reduce a 35 y con la estructura segmentada se pueden realizar simultáneamente las dos fases que compone cada instrucción

52

Page 53: MICROCONTROLADORES-1-1.ppt

EN EL INTERIOR DEL EN EL INTERIOR DEL PROCESADORPROCESADOR

El manejo intensivo del banco de registros, los cuales participan de una manera muy activa en la ejecución de instrucciones.

La ALU, efectúa sus operaciones lógico- aritmética con dos operandos, uno es del registro W(Work) y el otro que puede provenir de cualquier registro o del propio código de instrucción.

53

Page 54: MICROCONTROLADORES-1-1.ppt

ARQUITECTURA INTERNA DEL ARQUITECTURA INTERNA DEL PIC16C84PIC16C84Consta de siete bloques fundamentales:

Memoria de programa EEPROM 1K x 14bits.

Memoria de datos formada por dos áreas, una RAM aloja 22 registros de (SFR), 36 registros (GPR) y tipo EEPROM de 64 bytes.

Camino de datos con la ALU de 8 bits y un registro de trabajo W.

54

Page 55: MICROCONTROLADORES-1-1.ppt

ARQUITECTURA INTERNA DEL ARQUITECTURA INTERNA DEL PIC16C84PIC16C84Diversos recursos conectados al bus de

datos (Puertos E/S, TMR0, etc).

Base de tiempo y circuitos auxiliares.

Direccionamiento de la memoria de programa en base al Contador de Programa ligado a una pila de 8 niveles de profundidad.

Direccionamiento directo e indirecto de la memoria RAM.

55

Page 56: MICROCONTROLADORES-1-1.ppt

MEMORIA DE PROGRAMAMEMORIA DE PROGRAMA

El PIC16C84 utiliza una memoria de programa del tipo EEPROM, capaz de ser escrita y borrada eléctricamente.

El PIC16F84 utiliza una memoria tipo Flash.

56

Page 57: MICROCONTROLADORES-1-1.ppt
Page 58: MICROCONTROLADORES-1-1.ppt

CONTADOR DE PROGRAMA Y CONTADOR DE PROGRAMA Y PILAPILAEl rango de direcciones que cubre el

PIC16X84 en su memoria de programa llega desde 0000H a la 03FFH, 1024 posiciones.

La pila es una zona aislada de las memorias de instrucciones y datos.

LIFO, el último valor guardado es el primero que sale.

58

Page 59: MICROCONTROLADORES-1-1.ppt

CONTADOR DE PROGRAMA Y CONTADOR DE PROGRAMA Y PILAPILA

La instrucción CALL y las interrupciones originan la carga del contenido del PC en el nivel superior de la pila.

El contenido del nivel superior de la Pila se saca al ejecutar las instrucciones RETURN, RETLW Y RETFIE.

59

Page 60: MICROCONTROLADORES-1-1.ppt

CONTADOR DE PROGRAMA Y CONTADOR DE PROGRAMA Y PILAPILA

60

Page 61: MICROCONTROLADORES-1-1.ppt

MEMORIA DE DATOS RAMMEMORIA DE DATOS RAM

Área de RAM estática o SRAM

Área EEPROM

Page 62: MICROCONTROLADORES-1-1.ppt

MEMORIA DE DATOS RAMMEMORIA DE DATOS RAM

Área de RAM estática o SRAMDonde reside el Banco de Registros Específicos (SFR) y el banco de Registros de Propósito General (GPR).

SFR: Tiene 24 posiciones de tamaño byte. Son los encargados del control del procesador y sus recursos.

GPR: Tiene 36 posiciones de tamaño byte

Page 63: MICROCONTROLADORES-1-1.ppt

MEMORIA DE DATOS RAMMEMORIA DE DATOS RAM

Área EEPROMEs de 64 bytes donde, opcionalmente, se pueden almacenar datos que no se pierden al desconectar la alimentación.

La zona RAM se halla dividida en dos bancos (banco 0 y banco 1) de 128 bytes cada uno

Page 64: MICROCONTROLADORES-1-1.ppt

MEMORIA DE DATOS RAMMEMORIA DE DATOS RAM

64

Se halla dividida en dos bancos (banco 0 y banco 1) de 128 bytes cada uno, En el PIC 16C84 solo se hallan implementadas físicamente las primeras 48 posiciones de cada banco.

Page 65: MICROCONTROLADORES-1-1.ppt

DIRECCIONAMIENTO DE LA DIRECCIONAMIENTO DE LA MEMORIA DE DATOSMEMORIA DE DATOS

DIRECCIONAMIENTO DIRECTOEl operando que utiliza la instrucción en curso se referencia mediante su dirección que viene incluida en el código OP. El banco a acceder lo determinan los bits RP0 y RP1 del registro ESTADO

RP0

65

ESTADO

Código OP de instrucción

Selecciona un banco

selecciona la dirección en el banco

Page 66: MICROCONTROLADORES-1-1.ppt

DIRECCIONAMIENTO DE LA DIRECCIONAMIENTO DE LA MEMORIA DE DATOSMEMORIA DE DATOS

Direccionamiento indirectoSe usa cuando una instrucción se utiliza como operando el registro INDF, que ocupa la dirección 0 de ambos bancos, el bit de más peso FSR junto al bit IRP del registro ESTADO se encargan de seleccionar el banco a acceder, mientras que los 7 bits de menos peso apuntan a la posición.

66

IRP

FSR

7 6 0

Selección del banco

Selección de dirección

Page 67: MICROCONTROLADORES-1-1.ppt

MEMORIA DE DATOS RAMMEMORIA DE DATOS RAM

SFR: Se clasifican en dos grupos .

En uno se incluyen aquellos que controlan el núcleo del microcontrolador (ESTADO, OPTION, INTCON, etc)

Y el otro la operatividad de recursos auxiliares y periféricos.

Page 68: MICROCONTROLADORES-1-1.ppt

REGISTROS ESPECIFICOS SFRREGISTROS ESPECIFICOS SFR

Page 69: MICROCONTROLADORES-1-1.ppt

EL REGISTRO DE ESTADOEL REGISTRO DE ESTADO

Ocupa la dirección 3 tanto del banco 0 como del banco 1 de la memoria de datos RAM

Misiones:1. Avisar las incidencias del resultado de la

ALU (C, DC, Z)2. Indican el estado de Reset (TO# y PD#).3. Seleccionan el banco a acceder en la

memoria de datos (IRP, RP0 y RP1)

69

Page 70: MICROCONTROLADORES-1-1.ppt

EL REGISTRO DE ESTADOEL REGISTRO DE ESTADO

IRP RP1 RP0 TO# PD# Z DC C

70

7 0

•C: Acarrero / llevada en el bit de más peso

1: Se ha producido un acarreo en el bit de más peso, addwf y addlw. También cuando es resta subwf y sublw, 1 no hay llevada y 0 sí

0: No se ha producido acarreo

Page 71: MICROCONTROLADORES-1-1.ppt

EL REGISTRO DE ESTADOEL REGISTRO DE ESTADO

DC: Acarreo llevada en el cuarto bit. De interés en operaciones BCD.

Z: cero1: El resultado de una operación lógico-aritmética ha sido 0.

0: El resultado de una operación lógico-aritmética no ha sido 0.

71

Page 72: MICROCONTROLADORES-1-1.ppt

EL REGISTRO DE ESTADOEL REGISTRO DE ESTADO

PD#: Power Down1: Después de la conexión de la alimentación al microcontrolador o al ejecutar la instrucción clrwdt.

0: Mediante la ejecución de la instrucción sleep.

72

Page 73: MICROCONTROLADORES-1-1.ppt

EL REGISTRO DE ESTADOEL REGISTRO DE ESTADO

TO#:Time Out1: Después de la conexión de la alimentación o al ejecutarse las instrucciones clrwdt y sleep.

0: Cuando se produce el desbordamiento del perro guardian (Watchdog)

73

Page 74: MICROCONTROLADORES-1-1.ppt

EL REGISTRO DE ESTADOEL REGISTRO DE ESTADO

RP1-RP0: Selección de banco de direccionamiento directo

Como el PIC16X84 solo tiene dos bancos emplea únicamente a RP0, de forma que cuando vale:1 se accede al banco 1.

Después de un RESET, RP0 vale 0.

74

Page 75: MICROCONTROLADORES-1-1.ppt

EL REGISTRO DE ESTADOEL REGISTRO DE ESTADO

IRP: Selección del banco en direccionamiento indirecto

este bit junto con el bit de más peso del Registro FSR sirven para determinar el banco de la memoria de datos seleccionado.

Al disponer de solo dos bancos no se usa este bit y debe programarse como cero.

75

Page 76: MICROCONTROLADORES-1-1.ppt

REGISTROS TRISA Y TRISBREGISTROS TRISA Y TRISB

Se encuentran en el banco 1, luego hay que configurar el registro ESTADO para acceder a ellos.

TRIS A: Configura a las líneas de la Puerta A como entradas si están a 1 y como salidas si están a 0.TRIS B: Configura el puerto B (Entrada/ salida)

Page 77: MICROCONTROLADORES-1-1.ppt

REGISTROS TRISA Y TRISBREGISTROS TRISA Y TRISB

TRIS B: Configura las líneas de la Puerta B como entradas si están a 1 y como salidas si están a 0.

Page 78: MICROCONTROLADORES-1-1.ppt

PUERTAS DE E/SPUERTAS DE E/S

PUERTA AConsta de 5 líneas RA4-RA0.RA3-RA0, líneas E/S digitales configurables de forma independiente.RA4/T0CKI, además de E/S, puede funcionar como entrada de los impulsos de reloj para el TMR0

Page 79: MICROCONTROLADORES-1-1.ppt

PUERTAS DE E/SPUERTAS DE E/S

PUERTA ATras un RESET todos los bits de TRISA se colocan a 1 y las líneas de la Puerta A quedan configuradas como entradas.

Page 80: MICROCONTROLADORES-1-1.ppt

PUERTAS DE E/SPUERTAS DE E/S

PUERTA BRB0/INT también puede actuar como línea de petición de interrupción.

Para la grabación en serie del PIC se usa el pin RB6 para impulsos de reloj y el pin RB7 para la entrada de datos.

Page 81: MICROCONTROLADORES-1-1.ppt

REGISTRO OPTIONREGISTRO OPTION

La misión principal de este registro es controlar TMR0 y el Divisor de frecuencia.

Page 82: MICROCONTROLADORES-1-1.ppt

REGISTRO OPTIONREGISTRO OPTION

PS2:PS0 Valor con el que actúa el Divisor de frecuencia

PSA Asignación del divisor de frecuencia (1=WDT 0= TMR0)

IRRBP# INTEDG TOCS TOSE PSA PS2 PS1 PS0

Page 83: MICROCONTROLADORES-1-1.ppt

REGISTRO OPTIONREGISTRO OPTIONTOSE tipo de flanco T0CKI

(1=Incrementa TMR0 flanco descendente; 0= flanco ascendente)

TOCS Tipo de reloj para el TMR01= Pulsos introducidos a través de

T0CKI (Contador)0= Pulsos reloj interno

(Temporizador Fosc/4)

Page 84: MICROCONTROLADORES-1-1.ppt

REGISTRO OPTIONREGISTRO OPTION

INTEDG Flanco activo por interrupción externa(1= flanco Ascendente; 0= flanco descendente)

RBPO# resistencias Pull-Up Puerta B1= Desactivadas0= Activadas

Page 85: MICROCONTROLADORES-1-1.ppt

UTILIZANDO UN UTILIZANDO UN MICROCONTROLADORMICROCONTROLADOR

Los microcontroladores se programan en un lenguaje de programación llamado Ensamblador (Assembler), cuya principal característica es su altísima complejidad.

Los lenguajes de programación se clasifican según su nivel de programación:

Lenguaje de alto nivel: Un nivel y estilo de escritura fácilmente legible y comprensible por el hombre. Lenguajes de tipo visual.

85

Page 86: MICROCONTROLADORES-1-1.ppt

UTILIZANDO UN UTILIZANDO UN MICROCONTROLADORMICROCONTROLADOR

Lenguaje de bajo nivel: El usuario se acerca un poco más al lenguaje máquina. Permitiendo un acceso más amplio al control físico del hardware.

Lenguaje Ensamblador: Podríamos considerarlo el lenguaje de más bajo nivel

Podemos decir que los lenguajes de alto nivel se asemejan más al lenguaje humano y los lenguajes de bajo nivel se asemejan más al lenguaje máquina.

86

Page 87: MICROCONTROLADORES-1-1.ppt

PROGRAMACION EN PROGRAMACION EN ENSAMBLADOR PIC 16F84ENSAMBLADOR PIC 16F84

Para programar un PIC 16F84 necesitamos conocer las instrucciones para generar el código fuente para posteriormente compilarlo por ejemplo con MPASM, emular el programa y poder grabarlo para implementarlo en el circuito correspondiente.

El listado de instrucciones de microchip (el fabricante del microcontrolador) son las siguientes:

87

Page 88: MICROCONTROLADORES-1-1.ppt

SET DE INSTRUCCIONESSET DE INSTRUCCIONES88

Page 89: MICROCONTROLADORES-1-1.ppt

SET DE INSTRUCCIONESSET DE INSTRUCCIONES89