msp430f5438 P1口外部中断问题! 10

430单片机问题求救!!!P1的8个口外部中断全开,在P1中断函数中分别对应有8个函数,为什么只能响应其中的一个函数,而且是写在程序段最前边的那个,如下中断函数中得程序段... 430单片机问题求救!!!P1的8个口外部中断全开,在P1中断函数中分别对应有8个函数,为什么只能响应其中的一个函数,而且是写在程序段最前边的那个,如下中断函数中得程序段1 ,为什么呢?求赐教!
#pragma vector=PORT1_VECTOR
__interrupt void Port_1_0(void)
{
_DINT();
if(P1IFG &=0x0ff)
{
delay(500);
if(P1IFG &=0x001)
{
;//程序段1
}
if(P1IFG &=0x002)
{
;//程序段2
}
......
_EINT();
}
上边没写中断标志位清零, 实际的程序中中断标志位已经清零了;
展开
 我来答
一箱米线
2013-03-14 · 超过10用户采纳过TA的回答
知道答主
回答量:138
采纳率:0%
帮助的人:47.6万
展开全部
P1IFG &=0x001
你的if条件里面中断标志符是&= 清零再判断;
只要经过 if(P1IFG &=0x001) ,不管实际中断标志符是什么,前11位都会清0.
再经过if(P1IFG &=0x002) 时,最低位也被清零。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
归海香柏
2011-08-29 · TA获得超过165个赞
知道答主
回答量:174
采纳率:100%
帮助的人:98.7万
展开全部
T=50000/fMCLK
你采用的是连续计数模式(MC_2),所以CCR0在中断里要递加,采用增计数模式(MC_1)则不需要CCR0 += 50000。
初始化时通过调整BCSCTL1,DCOCTL调整。DCO时钟有误差,可以采用XT2高频晶振。
追问
做串口通信  定时器用不了  再者我要用的事外部中断    不过还是得感谢大侠捧场
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
s531760443
2011-08-29
知道答主
回答量:38
采纳率:0%
帮助的人:33.5万
展开全部
vv
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式