外部中断XINT1定时产生,在程序中当满足某个条件时执行while(1){}程序,在执行while(1){}的过程中希望中断能够正常产生,这种情况如何处理?
简单示例如下:
INTERRUPT void XINT1()
{
int i,k;
static bool flag=false;
function();//执行任务
if(flag)return;
i++;
if(i>100)
{
flag=ture;
i=0;
}
while(1)
{
k++;
if(k++>100000)
{
flag=0;
k=0;
break;
}
}
}
上例中,在程序进入while(1)后,中断就无法产生了,如果希望中断正常执行该如何处理?
[ 本贴由 lhfnjj 于 2007-7-7 10:14 最后编辑 ]
本帖最后由 dontium 于 2015-1-23 13:35 编辑
请各位版主和大侠发表一下意见啊?
本帖最后由 dontium 于 2015-1-23 13:35 编辑
if(k++>100000)
应该是
if(k++>10000)吧.