* is used to reset the part, when 1 the watchdog expiring will cause the micro
* to reset and if ACLK goes away VLOCLK will be used.
*/
#define USE_FAILSAFE_WATCHDOG ( 1 )
{
/* set watchdog for 16 second timeout
* write password, select aclk, WDTIS_3 means divide by 512*1024 = 16 s;
* WDTIS_2: 4 mins
set the WDTIFG flag and/or generate a PUC.
000b = Watchdog clock source /(2^31) (18h:12m:16s at 32.768 kHz)
001b = Watchdog clock source /(2^27) (01h:08m:16s at 32.768 kHz)
010b = Watchdog clock source /(2^23) (00h:04m:16s at 32.768 kHz)
011b = Watchdog clock source /(2^19) (00h:00m:16s at 32.768 kHz)
100b = Watchdog clock source /(2^15) (1 s at 32.768 kHz)
101b = Watchdog clock source /(2^13) (250 ms at 32.768 kHz)
110b = Watchdog clock source /(2^9) (15.625 ms at 32.768 kHz)
111b = Watchdog clock source /(2^6) (1.95 ms at 32.768 kHz)
#ifUSE_FAILSAFE_WATCHDOG
/* wathdog 看门狗功能 *
WDTCTL = WDTPW + WDTCNTCL + WDTSSEL__ACLK + WDTIS_3;
SFRIE1 &= ~WDTIE; /* disable watchdog timer interrupt */
#else
/* interval timer 间隔定时器 */
WDTCTL = WDTPW + WDTCNTCL + WDTSSEL__ACLK + WDTIS_3 + WDTTMSEL;
/* enable watchdog timer interrupt */
SFRIE1 |= WDTIE;
#endif
}