msp430 开全局中断

#include<msp430x41x.h>voidmain(void){WDTCTL=WDT_MDLY_32;//Setto~32msIntervalTimerIE1|... #include <msp430x41x.h>

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
}
现在我只需要中断,不想让它进入低功耗模式,怎么改啊?
_EINT(); <——头文件没这东西
__bis_SR_register(GIE);也不管用
展开
 我来答
mc_wangbo
2011-09-24 · TA获得超过1368个赞
知道小有建树答主
回答量:825
采纳率:0%
帮助的人:256万
展开全部
销掉_BIS_SR(LPM0_bits + GIE); 加_EINT();
_EINT()在msp430x41x.h包含的in430.h里。
追问
这样改的话,程序不知道跑到哪里了,下载到实验板,本来LED灯应该闪烁,但是用_EINT()就是不闪啊。
试出来了,_EINT();之后要加一句while(1)
要不然程序就结束了。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-09-24
展开全部
#include <msp430x41x.h>

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
}
现在我只需要中断,不想让它进入低功耗模式,怎么改啊?
_EINT(); <——头文件没这东西
__bis_SR_register(GIE);也不管用
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式