关于中断服务子程序的问题请教

[复制链接]
3353|4
 楼主| huangfeng33 发表于 2012-12-18 15:46 | 显示全部楼层 |阅读模式
中断服务子程序里为什么还在结尾加EINT,全局中断不是在主函数中已开了吗?   
tianli1980 发表于 2012-12-19 14:37 | 显示全部楼层
这与编译器对中断的处理有关,一般的RET不会对特殊寄存器做处理。
五谷道场 发表于 2012-12-19 16:42 | 显示全部楼层
你说的是中断返回指令吧,有了这条命令,中断就可以返回到主程序的那个被中断的位置了继续执行了。
DIYfashaoyou 发表于 2012-12-20 00:29 | 显示全部楼层
可能是在中断的开始关闭了全局中断,然后结束的时候在打开。这样做的目的就是:因为在中断函数中执行的程序过多,可能在执行的过程中,再次触发中断置位,从而影响正在执行的程序,所以在中断的开头先关闭中断,在中断函数结尾再加上EINT打开中断,你看看程序是不是这个样子写的?
blacksword 发表于 2012-12-20 16:26 | 显示全部楼层
4樓正解
您需要登录后才可以回帖 登录 | 注册

本版积分规则

506

主题

2446

帖子

8

粉丝
快速回复 在线客服 返回列表 返回顶部