急急急!keil中如何每次在中断后跳到主函数的某一特定位置

 我来答
lycdl
高粉答主

2014-02-14 · 醉心答题,欢迎关注
知道大有可为答主
回答量:2万
采纳率:94%
帮助的人:4986万
展开全部
这种控制用汇编语言比较容易实现,是通过对SP的赋值实现的,但必须考虑中断前后的变量保护和恢复问题。用keil不易控制从中断返回到主函数的特定位置。可以在中断函数中设置一个变量,在主函数中查看这个变量,当变量为一特定值时就转到主函数的指定位置,这样,编译时就会自动完成现场的保护和恢复问题。
追问
我用的是外部中断,可能在主函数的任何部位发生,这样要精确检测实在是太麻烦了
生活如歌_
2014-02-14 · TA获得超过1.5万个赞
知道大有可为答主
回答量:7398
采纳率:78%
帮助的人:2199万
展开全部
在中断函数最后RETI之前插入两条入栈指令,把要跳转到的地址入栈即可。另外可以考虑先把原来的中断入栈地址弹出,以防止程序走乱了。
追问
那代码怎么写,没接触过这方面的知识
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
一剑出血
高粉答主

2014-02-14 · 醉心答题,欢迎关注
知道大有可为答主
回答量:5.7万
采纳率:78%
帮助的人:1.7亿
展开全部
其实没有必要跳转到特定位置。你的需求必定可以通过合理的程序结构实现。
你不妨详细的说明一下:需要在中断后、在主函数中执行何种特定操作;这个操作对主循环体的其余部分有什么样的影响。
追问
中断函数是用来检测电流的,若有人关闭外部开关,则电流中断,启动中断程序,主函数中跳返到主循环第一条指令,即不断检测是否有电流,若无,执行相应指令,直到重新检测到电流(有电流时,执行硬件主要流程,流程图经反复修改,很难改动)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式