You are on page 1of 16

Microcontrolador

MPS430F149
WatchDog Timer
Introduccin
El watchdog timer es un temporizador
de 16 bits que puede ser usado como
wachdog o por intervalos de tiempo.
Las siguientes son las caractersticas del
modulo watchdog timer:

Ocho intervalos de tiempos seleccinables por
software.
Modo WatchDog.
Modo intervalo.
Acceso al registro de control WDT con contrasea
protegida.
Pin de control de la funcin RST/NMI
Fuente de reloj seleccionable
Puede ser detenido para conservar la potencia.
Seminario de Computadores I Diseo con
Microcontroladores
Watchdog Timer
Modos de Funcionamiento:
WATCHDOG
TIMER
Seminario de Computadores I Diseo con Microcontroladores
Watchdog Timer
MODO WATCHDOG
Reinicia el procesador despus de que ocurra una
falla o problema de software.
La condicin de RESET ocurre cuando finaliza un
intervalo de tiempo determinado por el programador.
Luego de un PUC, el WD es configurado con un
intervalo de RESET inicial de ~32[ms] por lo tanto
se debe detener el WD antes de la expiracin de
ste.
Puede ser usado para producir interrupciones
peridicas.
MODO TIMER
Seminario de Computadores I Diseo con Microcontroladores
Watchdog Timer
La finalizar el intervalo, se setea el flag WDTIFG
que habilita el bit WDTIE.
El flag WDTIFG requiere una interrupcin si los
bits WDTIE y GIE estn seteados.
Al servirse la interrupcin el flag WDTIFG es
reseteado automticamente.
Registros
Para el caso que nos interesa, estudiaremos los siguientes
registros:

Registros del modulo bsico de reloj.
La configuracin de estos mdulos consiste en asignar a cada
uno de los tres mdulos, una fuente de reloj determinada que
satisfaga los requerimientos de consumo y aplicacin que se
requiera.

Registros de control del watchdog timer.
La configuracin de este mdulo permite comfigurar el WDT a
cualquiera de los modos disponibles.
Registros del modulo bsico de reloj
A travs de este registro se seleccionan las
fuentes de los mdulos de reloj del
microcontrolador y se manipulan las frecuencias
de dichas fuentes.
Las fuentes de reloj son las siguientes:

Observacin
El DCOCLK oscila entre (80k, 8M)[Hz]. Este rango
se encuentra parametrizado por 64 niveles
determinables por los bits DCOx del registro
DCOCTLx y los bits RSELx del registro BCSCTL1.
Existen tres mdulos bsicos de reloj, los cuales
pueden ser configurados a travs de los registros
DCOCTL, BCSCTL1 y BCSCTL2.

Observacin
El oscilador XT2CLK es una fuente externa, es decir,
su utilizacin es determinada por lo requerimientos
de la aplicacin diseada. Por lo tanto, en aquellos
casos en que se prescindiera de ella, el
microcontrolador determina a LFXT1CLK como
oscilador por defecto.
Registro de Control del Watchdog
Timer
Es un registro de 16 bits, que configura los modos
de funcionamiento del Watchdog Timer.

Inicialmente esta configurado con un intervalo de
32[ms] usando el DCOCLK como fuente de reloj,
teniendo que ser configurado antes de que el
intervalo expire.

Las interrupciones no enmascarables (NMI) no
son manejadas por el bit de habilitacin general
de interrupciones.
Puden ser producidas por un canto en el pin
RST/NMI, una falla en el oscilador o por una
violacin de acceso a la memoria FLASH.
Configuraciones predeterminadas
#define WDT_MDLY_32
(WDTPW+WDTTMSEL+WDTCNTCL) /* 32ms
interval (default) */
#define WDT_MDLY_8
(WDTPW+WDTTMSEL+WDTCNTCL+WDTIS0) /*
8ms " */
#define WDT_MDLY_0_5
(WDTPW+WDTTMSEL+WDTCNTCL+WDTIS1) /*
0.5ms " */
#define WDT_MDLY_0_064
(WDTPW+WDTTMSEL+WDTCNTCL+WDTIS1+WDTIS0)
/* 0.064ms " */
Configuraciones predeterminado
/* WDT is clocked by fACLK (assumed 32KHz) */
#define WDT_ADLY_1000
(WDTPW+WDTTMSEL+WDTCNTCL+WDTSSEL)
/* 1000ms " */
#define WDT_ADLY_250
(WDTPW+WDTTMSEL+WDTCNTCL+WDTSSEL+WDTIS0)
/* 250ms " */
#define WDT_ADLY_16
(WDTPW+WDTTMSEL+WDTCNTCL+WDTSSEL+WDTIS1)
/* 16ms " */
#define WDT_ADLY_1_9
(WDTPW+WDTTMSEL+WDTCNTCL+WDTSSEL+WDTIS1+
WDTIS0) /* 1.9ms " */

You might also like