micro pic by adrian díaz

18
MICROCONTROLADORES PIC MICROCONTROLADORES TECNOLOGÍA EN ELECTRÓNICA UNIMINUTO

Upload: micropic27

Post on 14-Jul-2015

362 views

Category:

Education


3 download

TRANSCRIPT

Page 1: Micro pic by adrian díaz

MICROCONTROLADORES PIC

MICROCONTROLADORES

TECNOLOGÍA EN ELECTRÓNICA

UNIMINUTO

Page 2: Micro pic by adrian díaz

ING. ADRIAN DÍAZ

EL MICROCONTROLADOR

Un Microcontrolador es un circuito integrado programable que contiene todoslos componentes necesarios para controlar el funcionamiento de una tareadeterminada, como el control del teclado de un ordenador, una impresora unsistema de alarma, etc.

Los PIC (Peripheral Interface Controller) son una familia de microcontroladoresque han tenido gran aceptación y desarrollo, por sus buenas características,bajo precio, reducido consumo, pequeño tamaño, gran calidad, fiabilidad yabundancia de información.

Page 3: Micro pic by adrian díaz

ING. ADRIAN DÍAZ

APLICACIONES

Page 4: Micro pic by adrian díaz

ING. ADRIAN DÍAZ

EL MICROCONTROLADOR PIC 16F87XProcesador de arquitectura RISC avanzada· Juego de solo 35 instrucciones con 14 bits de longitud. Todas ellas se ejecutan en un ciclo de instrucción, menos las de salto que tardan dos.· Hasta 8K palabras de 14 bits para la Memoria de Programa, tipo FLASHen los modelos 16F876 y 16F877 y 4KB de memoria para los PIC 16F873 y 16F874.· Hasta 368 Bytes de memoria de Datos RAM.· Hasta 256 Bytes de memoria de Datos EEPROM.· Pines de salida compatibles para el PIC 16C73/74/76/77.· Hasta 14 fuentes de interrupción internas y externas.· Pila de 8 niveles.· Modos de direccionamiento directo e indirecto.· Power-on Reset (POP).· Temporizador Power-on (POP) y Oscilador Temporizador Start-Up.· Perro Guardián (WDT).· Código de protección programable.· Modo SLEEP de bajo consumo.· Programación serie en circuito con dos pines, solo necesita 5V para programarlo en este modo.· Voltaje de alimentación comprendido entre 2 y 5,5 V.· Bajo consumo: < 2 mA valor para 5 V y 4 MHz 20 uA para 3V y 32 M < 1 uA en standby.

Page 5: Micro pic by adrian díaz

ARQUITECTURA DEL MICROCONTROLADOR

ING. ADRIAN DÍAZ

Page 6: Micro pic by adrian díaz

ING. ADRIAN DÍAZ

ENCAPSULADO DE 40 PINESENCAPSULADO DE 28 PINES

Page 7: Micro pic by adrian díaz

ING. ADRIAN DÍAZ

CARACTERISTICAS COMPARATIVAS

Page 8: Micro pic by adrian díaz

ING. ADRIAN DÍAZ

• Tres bloques de memoria

– RAM: Dividida en dos bloques:– GPR. Registros de propósito general– SFR Registros de propósito especial

– EEPROM: Grabable dinámicamente desde programa.

– Sólo puede contener datos.– Sólo permite acceso indirecto.

– FLASH: Memoria de programa– Dado que el PC tiene un tamaño de 13 bits:

máximo 8Kx14– En PIC16F87X: 4-8K disponible

ORGANIZACIÓN DE LA MEMORIA

Page 9: Micro pic by adrian díaz

ING. ADRIAN DÍAZ

ORGANIZACIÓN DE LA MEMORIA DEL PROGRAMA

Page 10: Micro pic by adrian díaz

ING. ADRIAN DÍAZ

ORGANIZACIÓN DE LA MEMORIA DEL PROGRAMA

Reset vector: 0000h(tras un reset, la primera instrucción aejecutar es la que está en 0000h)

Interrupt vector: 0004h(Una única entrada de interrupción. A continuación se ha de verificar cual delas líneas la ha generado)

Page 11: Micro pic by adrian díaz

ING. ADRIAN DÍAZ

• Para configurar al PIC, debemos modificar algunos registros especiales: STATUS, OPTION_REG, INTCON, TRISA, TRISB

• Para manejar el I/O están los registros PORTA, PORTB

• Todo registro es de 8 bits (1 Byte)

REGISTROS

Son un espacio de memoria muy reducido pero necesariopara cualquier microprocesador, de aquí se toman los datospara varias operaciones que debe realizar el resto de loscircuitos del procesador. Los registros sirven para almacenarlos resultados de la ejecución de instrucciones, cargar datosdesde la memoria externa o almacenarlos en ella.

Page 12: Micro pic by adrian díaz

ING. ADRIAN DÍAZ

Distribución de REGISTROS en Memoria

Se organiza en bancos. En PIC16F8x: 2 bancos.

Cada banco admite hasta 128 bytes. En PIC16F8x: 79 bytes.

Selección del banco:Bit RP0 del registro STATUSRP0 = 0 -> Banco 0RP0 = 1 -> Banco 1

Registros:

SFRBanco 0: RP0=0 0x00 -> 0x0BBanco 1: RP0=1 0x80 -> 0x8B

GPRBanco 0: 0x0C -> 0x4F (68 bytes)Banco 1: Mapeado completamente en el banco 0

Page 13: Micro pic by adrian díaz

ING. ADRIAN DÍAZ

REGISTROS DE FUNCIONES ESPECIALES (SFR)

Page 14: Micro pic by adrian díaz

ING. ADRIAN DÍAZ

El Registro STATUS está definido por los siguientes 8 bits :

Según las hojas de especificaciones, la memoria de datos se divide en múltiples bancos,que contienen los GPRs (Registros de Propósito General) y los SFRs (Registros deFunción Especial). Los Bits RP0 y RP1 son los bits de selección de banco, el PIC16FF8Atiene los bancos 0 y 1(Paginación de la Memoria), se direccionan con un sólo bit (RP0),ya que solo tiene 2 bancos mientras que los microcontroladores que tienen 4 bancos, sedireccionan con los dos bits RP0 y RP1 .

EL REGISTRO DE ESTADO

Page 15: Micro pic by adrian díaz

ING. ADRIAN DÍAZ

EL REGISTRO DE ESTADO

Page 16: Micro pic by adrian díaz

ING. ADRIAN DÍAZ

• El registro W funciona a modo de acumulador.

• La RAM es vista como un ‘archivo de registros’.

• Modos de direccionamiento:– Directo(dirección contenida en

la instrucción)

– Indirecto (dirección en FSR)

• Uso de la pila para anidamiento de llamadas a rutinas. No para datos.

• Permite datos inmediatos.

• Almacenamiento directo de resultados en memoria.

• EEPROM grabable dinámicamente.

ARQUITECTURA DEL MICROCONTROLADOR

Page 17: Micro pic by adrian díaz

ING. ADRIAN DÍAZ

• Sólo se utiliza para anidar llamadas a rutinas: CALL, interrupciones.

• Tiene una amplitud de 13 bits

– No hay que tener en cuenta la diferenciación PCL-PCLATH.• La recuperación de la pila se realiza exclusivamente a través de RETURN, RETLW y

RETFIE.

COMENTARIO:

La pila solo tiene 8 niveles. Almacenar un noveno dato implica sustituir el primer dato almacenado por el nuevo.

9 1; 10 2...

LA PILA (Stack)

Page 18: Micro pic by adrian díaz

ING. ADRIAN DÍAZ

XTRCHSLP

EXTERNAL

OSCILADORES