中断出来之前能不能把出中断的位置修改掉?

[复制链接]
 楼主| heweibig 发表于 2022-1-3 22:31 | 显示全部楼层 |阅读模式
RT,需求上不要哪进哪出,无论再哪进入中断都想从同一个固定位置出来。目前是用全局变量做的,感觉很麻烦,代码多了容易出问题
wyjie 发表于 2022-1-3 22:32 | 显示全部楼层
lz估计对中断理解有错误。。。
yinxiangh 发表于 2022-1-3 22:34 | 显示全部楼层
或者说是暂停了main,执行中断,执行完之后再去执行进入断点之后的代码,我理解的有什么问题吗
 楼主| heweibig 发表于 2022-1-3 22:36 | 显示全部楼层
怎么说?中断不是哪进哪出吗
supernan 发表于 2022-1-3 22:38 | 显示全部楼层
中断是当中断条件产生且中断被允许时,由硬件将PC指针跳转到中断向量地址执行中断服务程序,直到遇到中断返回指令,再回到进入中断前的地址继续执行主程序。
wangpe 发表于 2022-1-3 22:40 | 显示全部楼层
完全不明白你说的中断哪进哪出是个什么意思。
zwll 发表于 2022-1-3 22:45 | 显示全部楼层
这个返回地址能改吗
 楼主| heweibig 发表于 2022-1-3 22:48 | 显示全部楼层
中断发生的时候进去中断,执行完中断之后返回发生中断的位置,我现在的需求就是不想它回到发生中断的位置,想它返回别的位置
supernan 发表于 2022-1-3 22:50 | 显示全部楼层
你要的就是RTOS天天都在做的事
dengdc 发表于 2022-1-3 22:51 | 显示全部楼层
"无论再哪进入中断都想从同一个固定位置出来",这个就不是常规中断模式。
spark周 发表于 2022-1-3 22:53 | 显示全部楼层
当然,没什么是不可能的,要实现这个功能,就是操作堆栈。
zhaoxqi 发表于 2022-1-3 22:55 | 显示全部楼层
堆栈操作,说简单很简单,说复杂也很复杂,要对函数调用,编译等有透彻的理解才行,
jlyuan 发表于 2022-1-3 22:57 | 显示全部楼层
否则分分钟系统放飞自我。。。
llljh 发表于 2022-1-3 22:59 | 显示全部楼层
pic大部分芯片不支持对堆栈直接操作。
chenjunt 发表于 2022-1-3 23:01 | 显示全部楼层
所以 “无论再哪进入中断都想从同一个固定位置出来”
用C语言也能实现,尤其是在pic上。。。
lizye 发表于 2022-1-3 23:03 | 显示全部楼层
搞不定堆栈,我们可以搞定ISR函数啊,退出中断搞不定,我们可以让ISR函数上抓位置嵌入需要的代码啊。。。
wyjie 发表于 2022-1-3 23:06 | 显示全部楼层
哈哈哈,办法总比困难多,实在不行就砸钱买下mcp然后叫设计师全面更新所有芯片设计。。。嘿嘿嘿。。。
yszong 发表于 2022-1-3 23:08 | 显示全部楼层
PIC18 可以的哦
llljh 发表于 2022-1-3 23:10 | 显示全部楼层
了解栈的工作原理,就知道如何实现了。
 楼主| heweibig 发表于 2022-1-3 23:14 | 显示全部楼层
把栈里面存的返回地址修改成你要的就行了.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

869

主题

13089

帖子

7

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