clase 8 - intro a los microcontroladores

19
Universidad Nacional de Ingeniería Maquinas Computadoras I Unidad III: Introduccion a los Microcontroladores PIC MICROCHIP Descripción General del PIC16F877

Upload: kevin-flores-zamora

Post on 01-Nov-2015

12 views

Category:

Documents


0 download

DESCRIPTION

Microcontroladores part2

TRANSCRIPT

  • Universidad Nacional de IngenieraMaquinas Computadoras IUnidad III: Introduccion a los Microcontroladores PIC MICROCHIPDescripcin General del PIC16F877

  • ContenidosLa Familia del PIC16F877Variantes PrincipalesEmpaquetadosNomenclaturaOsciladorCaractersticas generales del PIC16F877Perifricos del PIC 16F877Diagrama de BloquesOrganizacin de la memoria del PIC

    Maquinas Computadoras I Ing. Carlos Ortega H.*

  • Pertenece a una gran familia de microcontroladores de 8 bits (bus de datos) que tienen las siguientes caractersticas generales que los distinguen de otras familias: - Arquitectura Harvard - Tecnologa RISC - Tecnologa CMOS Estas caractersticas se conjugan para lograr un dispositivo altamente eficiente en el uso de la memoria de datos y programa y por lo tanto en la velocidad de ejecucin.

    Familia del PIC 16F877Maquinas Computadoras I Ing. Carlos Ortega H.*

  • *Microchip ha dividido sus microcontroladores en tres grandes subfamilias de acuerdo al nmero de bits de su bus de instrucciones:

    A diferencia de los microprocesadores de proposito general, como los que se usan en los computadores PC, los microcontroladores son unidades autosucientes y mas economicas.Los microcontroladores que produce Microchip cubren una amplio rango de dispositivos cuyas caractersticas pueden variar como sigue: - Empaquetado (desde 8 patitas hasta 68 patitas) - Tecnologa de la memoria includa (EPROM, ROM, Flash) - Voltajes de operacin (desde 2.5 v. Hasta 6v) - Frecuencia de operacin (Hasta 20 Mhz)Variantes Principales Maquinas Computadoras I Ing. Carlos Ortega H.

  • Empaquetados*

    PDIP (Plastic Dual In Line Package)PLCC (Plastic Leaded Chip Carrier)Maquinas Computadoras I Ing. Carlos Ortega H.

  • *QFP (Quad Flat Package)SOIC (Small Outline I.C.)Maquinas Computadoras I Ing. Carlos Ortega H.

  • *Oscilador Los PIC de rango medio permiten hasta 8 diferentes modos para el oscilador. El usuario puede seleccionar alguno de estos 8 modos programando 2 bits de configuracin del dispositivo denominados: FOSC1 y FOSC0, ubicados en un registro especial de configuracin en la localidad 2007H de la memoria de programa:NomenclaturaMaquinas Computadoras I Ing. Carlos Ortega H.

  • *En algunos de estos modos el usuario puede indicar que se genere o no una salida del oscilador (CLKOUT) a travs de una patita de Entrada/Salida. Los modos de operacin se muestran en la siguiente lista:Oscilador de un MicrocontroladorLos tres modos LP, XT y HS usan un cristal o resonador externoMaquinas Computadoras I Ing. Carlos Ortega H.

  • *Cristal externo: En los tres modos mostrados en la tabla anterior se puede usar un cristal o resonador cermico externo. En la siguiente figura se muestra la conexin de un cristal a las patitas OSC1 y OS2 del PIC.Circuito RC externo: En los modos RC y EXTRC el PIC puede generar su seal oscilatoria basado en un arreglo RC externo conectado a la patita OSC1 como se muestra en la siguiente figura:Oscilador de un MicrocontroladorEste modo slo se recomienda cuando la aplicacin no requiera una gran precisin en la medicin de tiempos.Maquinas Computadoras I Ing. Carlos Ortega H.

  • *Rangos.- La frecuencia de oscilacin depende no slo de los valores de Rext y Cext, sino tambin del voltaje de la fuente Vdd. Los rangos admisibles para resistencia y capacitor son: Rext: de 3 a 100 Kohms Cext: mayor de 20 pf Oscilador externo.- Tambin es posible conectar una seal de reloj generada mediante un oscilador externo a la patita OSC1 del PIC. Para ello el PIC deber estar en uno de los tres modos que admiten cristal (LP, XT o HS). La conexin se muestra en la siguiente figura:Oscilador de un MicrocontroladorOscilador interno de 4Mhz.- En los PICs que poseen este modo de oscilacin, (modo INTRC) el PIC usa un arreglo RC interno que genera una frecuencia de 4Mhz con un rango de error calibrable de 1.5%. Para calibrar el error de oscilacin se usan los bits CAL3, CAL2 , CAL1 Y CAL0 del registro OSCCAL.Maquinas Computadoras I Ing. Carlos Ortega H.

  • Caractersticas generales del PIC16F877*CPU: - Tecnologa RISC - Slo 35 instrucciones que aprender - Todas las instrucciones se ejecutan en un ciclo de reloj, excepto los saltos que requieren dos - Frecuencia de operacin de 0 a 20 MHz (200 nseg de ciclo de instruccin) - Opciones de seleccin del oscilador

    Memoria: - Hasta 8k x 14 bits de memoria Flash de programa - Hasta 368 bytes de memoria de datos (RAM) - Hasta 256 bytes de memoria de datos EEPROM- Lectura/escritura de la CPU a la memoria flash de programa - Proteccin programable de cdigo - Stack de hardware de 8 nivelesMaquinas Computadoras I Ing. Carlos Ortega H.

  • Reset e interrupciones: - Hasta 14 fuentes de interrupcin - Reset de encendido (POR) - Timer de encendido (PWRT) - Timer de arranque del oscilador (OST) - Sistema de vigilancia Watchdog timer. Otros: - Modo SLEEP de bajo consumo de energa - Programacin y depuracin serie In-Circuit (ICSP) a travs de dos patitas - Rango de voltaje de operacin de 2.0 a 5.5 volts - Alta disipacin de corriente de la fuente: 25mA - Rangos de temperatura: Comercial, Industrial y Extendido - Bajo consumo de potencia: o Menos de 0.6mA a 3V, 4 Mhz o 20 A a 3V, 32 Khz o menos de 1A corriente de standby (modo SLEEP).Caractersticas generales del PIC16F877Maquinas Computadoras I Ing. Carlos Ortega H.*

  • Perifricos del PIC 16F877Maquinas Computadoras I Ing. Carlos Ortega H.*

  • Diagrama de Bloques del 16F877Maquinas Computadoras I Ing. Carlos Ortega H.*

  • Registros de la CPU. Registro PC.- Registro de 13 bits que siempre apunta a la siguiente instruccin a ejecutarse. En la siguiente seccin se dan mayores detalles en el manejo de este Registro.

    Registro de Instruccin.- Registro de 14 bits. Todas las instrucciones se colocan en l para ser decodificadas por la CPU antes de ejecutarlas. Registro W.- Registro de 8 bits que guarda resultados temporales de las operaciones realizadas por la ALU Registro STATUS.- Registro de 8 bits, cada uno de sus bits (denominados Banderas) es un indicador de estado de la CPU o del resultado de la ltima operacin como se indica en la siguiente figura:Maquinas Computadoras I Ing. Carlos Ortega H.*

  • Los PIC tienen dos tipos de memoria: Memoria de Datos y Memoria de programa, cada bloque con su propio bus: Bus de datos y Bus de programa; por lo cual cada bloque puede ser accesado durante un mismo ciclo de oscilacin. La Memoria de datos a su vez se divide en - Memoria RAM de propsito general - Archivo de Registros (Special Function Registers (SFR))

    La Memoria de Programa Los PIC de rango medio poseen un registro Contador del Programa (PC) de 13 bits, capaz de direccionar un espacio de 8K x 14, como todas la instrucciones son de 14 bits, esto significa un bloque de 8k instrucciones. El bloque total de 8K x 14 de memoria de programa est subdividido en 4 pginas de 2K x 14. En la siguiente figura se muestra esta organizacin.Organizacin de la memoria del PICMaquinas Computadoras I Ing. Carlos Ortega H.*

  • La Memoria de Datos La memoria de datos consta de dos reas mezcladas y destinadas a funciones distintas: Registros de Propsito Especial (SFR) Registro de Propsito General (GPR) Los SFR son localidades asociadas especficamente a los diferentes perifricos y funciones de configuracin del PIC y tienen un nombre especfico asociado con su funcin. Mientras que los GPR son memoria RAM de uso general.Maquinas Computadoras I Ing. Carlos Ortega H.*

  • Memoria de Stack La memoria de stack es una area de memoria completamente separada de la memoria de datos y la memoria de programa. El stack consta de 8 niveles de 13 bits cada uno. Esta memoria es usada por la CPU para almacenar las direcciones de retorno de subrutinas. El apuntador de stack no es ni leble ni escribible. Cuando se ejecuta una instruccin CALL o es reconocida una interrupcin el PC es guardado en el stack y el apuntador de stack es incrementado en 1 para apuntar a la siguiente posicin vaca. A la inversa, cuando se ejecuta una instruccin RETURN, RETLW o RETFIE el contenido de la posicin actual del stack es colocado en el PC y el apuntador de stack es decrementado en 1.Maquinas Computadoras I Ing. Carlos Ortega H.*

  • *Maquinas Computadoras I Ing. Carlos Ortega H.

    *******************