单片机外部中断0,发生中断并执行完中断程序后,怎样返回主函数?用c语言。。
展开全部
程序使用interrupt关键字
函数写法 void INT0_ISR(void) interrupt 0
{
中断处理程序;
}
0号中断就是INT0 ,使用interrupt关键字,编译后中断向量添加跳转指令跳入该函数入口,返回指令为RETI,非RET。程序内自动压栈ACC和PSW
函数写法 void INT0_ISR(void) interrupt 0
{
中断处理程序;
}
0号中断就是INT0 ,使用interrupt关键字,编译后中断向量添加跳转指令跳入该函数入口,返回指令为RETI,非RET。程序内自动压栈ACC和PSW
追问
你好。我还是没明白。
比如:
main()
{
initiation();//开启各个中断初始化程序;
while(1)
{
display_1();//4位数码管显示1234
}
}
void INT0_ISR(void) interrupt 0
{
display_2();//4位数码管显示5678
}
刚开始数码管显示的是1234;当中断执行后数码管一直显示的是5678。
可我想只是执行中断的时候显示5678,中断执行完毕后仍然显示1234。
请教如何实现C语言。
追答
程序结构没问题。可能是你的显示程序有问题
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询