You are on page 1of 10

LECCIN 8:MICROCONTROLADORES PIC.

CARACTERSTICAS ESPECIALES DE LA CPU

LECCIN 8: CARACTERSTICAS ESPECIALES DE LA CPU ndice: Introduccin Palabra de configuracin Configuraciones del oscilador - oscilador a cristal - oscilador RC Reset Interrupciones - registro INTCON - salvar registros durante las interrupciones Perro guardin (WDT). Registro OPTION_REG El modo de reposo (SLEEP) Proteccin del programa Ejercicios Las caractersticas especiales de la CPU estn encaminadas a: - maximizar las prestaciones - minimizar el coste - minimizar el consumo - proteger el programa ndice

PALABRA DE CONFIGURACIN Permite al usuario escoger entre determinadas opciones programando sus bits adecuadamente. Existen dos formas de programar esos bits: - mediante la directiva "__CONFIG" - al programar el dispositivo

- palabra de configuracin del PIC 16F84 ndice

LECCIN 8:MICROCONTROLADORES PIC. CARACTERSTICAS ESPECIALES DE LA CPU

CONFIGURACIONES DEL OSCILADOR El oscilador proporciona al PIC la fuente de seal de la que el circuito interno obtiene la seal de reloj que sincroniza el funcionamiento de todo el sistema. Imprescindible.

- seleccin de los modos de oscilacin ndice

Oscilador a cristal Los componentes: (XTAL), C1 y C2 (iguales) y la resistencia RS, si fuera necesaria, deben situarse lo ms cerca posible del CI del PIC.

- conexin de un oscilador de cristal en el 16F84 y valores recomendados Tambin puede utilizarse una fuente externa de reloj siempre que su frecuencia est dentro del margen utilizable por el PIC y los niveles sean compatibles.

- conexin de una seal de reloj externa -

LECCIN 8:MICROCONTROLADORES PIC. CARACTERSTICAS ESPECIALES DE LA CPU

- establecimiento de la oscilacin ndice

Oscilador RC Para aplicaciones en las que la seal de reloj no es crtica. Es el modo de oscilacin que toma el PIC por defecto.

- conexin de un oscilador RC La frecuencia de oscilacin depende fundamentalmente de: VDD, REXT, CEXT. Microchip recomienda que 5 k < REXT < 100 k y que CEXT > 20 pF. ndice

RESET Los PIC distinguen entre diferentes tipos de reset: - POR: power on reset - Externo - WDT: watchdog timer - BOR: brown out reset

LECCIN 8:MICROCONTROLADORES PIC. CARACTERSTICAS ESPECIALES DE LA CPU

- circuito de reset del 16F84 Al salir del reset se ejecuta la instruccin que est almacenada en la posicin 0000 de la memoria de programa salvo en dos ocasiones relacionadas con la salida del estado de sleep:

- reset para el PC y STATUS Reset de encendido (POR: power on reset): Al conectar la tensin de alimentacin, se genera un reset. Las instrucciones comienzan a ejecutarse tras finalizar TOST.

- reset de encendido Temporizador de encendido PWRT (power-up timer): introduce un tiempo de 72 ms nominales tras el POR. Mantiene al PIC en reset hasta que la alimentacin alcanza un nivel aceptable.

LECCIN 8:MICROCONTROLADORES PIC. CARACTERSTICAS ESPECIALES DE LA CPU

Temporizador de arranque del oscilador OST (oscillator start-up timer): introduce un retardo de 1024 TOSC tras PWRT para dar tiempo a que el circuito resonante estabilice su seal. Slo en los modos de oscilacin XT, LP y HS.

- temporizador OST -

- significado de los bits de STATUS -

- temporizaciones en el arranque -

Reset de proteccin ante cadas de tensin BOR (brown-out reset): si la tensin de alimentacin cae por debajo del valor mnimo permisible es recomendable que el PIC efecte un reset, para lo cual deben utilizarse circuitos especficos conectados a la patilla MCLR .

- circuitos de proteccin brown-out -

LECCIN 8:MICROCONTROLADORES PIC. CARACTERSTICAS ESPECIALES DE LA CPU

- inicializacin de los registros tras un reset ndice

INTERRUPCIONES Fuentes de interrupcin para el 16F84: - Peticin externa - Cambio en la seal de alguna patilla determinada - Desbordamiento (overflow) de algn temporizador/contador - Escritura en la EEPROM Los modelos de PIC superiores admiten otras fuentes de interrupcin procedentes de los diferentes mdulos que contengan. (Consultar la hoja de datos del fabricante.) Peticin de interrupcin: se activa un flag. El usuario decide si se atiende o no. El flag debe borrarse por software.

LECCIN 8:MICROCONTROLADORES PIC. CARACTERSTICAS ESPECIALES DE LA CPU

- lgica de interrupciones en el 16F84 -

- cronograma cuando se atiende una interrupcin externa Registro INTCON

- registro INTCON en el 16F84 ndice

LECCIN 8:MICROCONTROLADORES PIC. CARACTERSTICAS ESPECIALES DE LA CPU

Salvar registros durante las interrupciones Es conveniente guardar en algn registro de la memoria de datos los contenidos de STATUS y W ya que cuando se atiende una interrupcin, el PIC slo guarda el contenido del contador de programa, es decir, la direccin de retorno. ndice PERRO GUARDIN (WDT). REGISTRO OPTION_REG Watchdog timer: temporizador que al desbordarse "resetea" el microcontrolador. til por si el microcontrolador queda "colgado" y para sacar al PIC del estado de reposo. Admite un divisor de frecuencia (prescaler).

- diagrama de bloques del WDT ndice Registro OPTION_REG

- registro OPTION_REG en el 16F84 ndice

LECCIN 8:MICROCONTROLADORES PIC. CARACTERSTICAS ESPECIALES DE LA CPU

MODO DE REPOSO (SLEEP) Con la instruccin "sleep" el microcontrolador queda "dormido". Muy til para minimizar el consumo cuando va a pasar largos intervalos sin realizar ninguna operacin. El PIC se "despierta" al producirse algn suceso determinado: - reset externo - reset del WDT - ciertos tipos de interrupcin

- salida del modo sleep mediante una interrupcin externa ndice

PROTECCIN DEL PROGRAMA El 16F84 tiene la posibilidad de proteger el programa: si el bit CP0 = "1" el programa no est protegido, y si el bit CP0 = "0" todo el programa est protegido. Otros modelos ofrecen ms opciones, por ejemplo los 16F87X:

- opciones de proteccin del programa en los 16F87X Microchip recomienda no proteger el programa de los dispositivos con encapsulado de ventana. ndice

LECCIN 8:MICROCONTROLADORES PIC. CARACTERSTICAS ESPECIALES DE LA CPU

10

EJERCICIOS EJERCICIO 8.1 Se desea generar un dado electrnico basado en un MCU PIC. Para ello se conecta un display de 7 segmentos de ctodo comn a los terminales del puerto D de un PIC 16F877A, como indica la figura. El oscilador es de cristal de 4 MHz. Escribir un programa que active el dado al apretar un pulsador conectado a RA4 y que ilumine un nmero aleatorio al apretar un pulsador conectado a RB0.

EJERCICIO 8.2 Escribir un programa que ilumine los LEDs conectados al puerto D segn las siguientes especificaciones: - Inicialmente aparecen parpadeando los LED; si se aprieta un pulsador conectado a la patilla RA4 se produce un desplazamiento de derecha a izquierda o de izquierda a derecha en funcin de las veces que se pulse RA4. Dicho desplazamiento debe comenzar al soltar el pulsador. - En todo momento, en el instante en que se aprieta el pulsador conectado a la patilla RB0, se pasa al parpadeo inicial. La frecuencia del oscilador es de 4 MHz. EJERCICIO 8.3 Obtener el cdigo de la tecla que se pulsa en un teclado estndar conectado al puerto B de un microcontrolador PIC 16F877, como indica la figura.

ndice

You might also like