c51 单片机编程中,主函数main里用while(1)进行死循环,中main函数外面实行中断。中断之后怎么把中断得到
3个回答
展开全部
你只要开了总中断和具体的中断,当满足中断发生条件时,单片机就会发生中断并能检测到,接着从main函数跳到中断服务程序中去执行,执行完后返回到被 中断的位置
追问
嗯。我的问题是在执行中断服务程序后,能不能在中断中返回一个值到被中断的位置,让被中断程序在继续执行时,执行中断函数返回来的值呢?
追答
通常在程序中设一个全局变量,在中断服务程序中对这个变量进行修改,用来标记发生了某个事件。例如:
sbit led=P1^0;
unsigned char flag=0;
void main()
{
……
while(1)
{
if(flag) led=1;
else led=0;
}}
void isr(void) interrupt
{
flag=1;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询