#include
void main(void)
{
WDTCTL = WDT_MDLY_32; // Set to ~32ms Interval Timer
IE1 |= WDTIE; // Enable WDT interrupt
P6DIR |= 0x04; // Set P6.2 to output direction
_BIS_SR(LPM0_bits + GIE); // Enter LPM0 w/ interrupt}
// Watchdog Timer interrupt service routine
#pragma vector=WDT_VECTOR
__interrupt void watchdog_timer(void)
{
P6OUT ^= 0x04; // Toggle P6.2 using exclusive-OR
}
以上例程,现在只想开全局中断,不想进入LPM0,程序要如何改动呢。
直接改成_EINT(),不管用的。
_BIS_SR(LPM0_bits + GIE); // Enter LPM0 w/ interrupt}
直接把这句屏蔽掉不可以吗?
还得自己试验啊。
_EINT();是可以用的,只不过要在后面加一句while(1)
要不然程序就直接结束了。