共2条
1/1 1 跳转至页
PC 请高手指点,在中断里面改变PC值,会不会使程序跑飞,或者说可能性会不会加大?

问
我自己认为应该没有影响,中断里面的PC值原来是那个,现在改成这个,对于PC来说没有什么啊?
还请高手指点啊?
谢谢 答 1: 是调试程序吗? 答 2: 不是
是用在最后的程序中,调试没有关系的
我说的是下载到单片机以后,单片机脱离计算机,独立工作
会不会不稳定
原因是什么? 答 3: 这么做好像有点怪哦。你想实现什么功能,如果你是在中断处理程序中改变PC的值,程序就会立即跳到你写入pc的值的存储单元执行,这样中断就不能返回了,也不能再返回到被中断的程序并继续执行。整个程序就混乱了。 答 4: 兄弟
不是这个样子的
我是把SP中压入的断点PC值改掉
出中断的时候,就不回断点处执行了
而且到我要去的地方了
这样会不会使程序的稳定型变的不好啊 答 5: 好象可以,不过还得验证,可以把堆栈指针加4然后JMP到你所需的地方, 答 6: 这样就可以了
MOV #调转到的代码入口,2(SP)。因为先压入的是pc,后压入的是sr 答 7: 我担心的是稳定性! 答 8: 引用: 答 9: 那不是的,因为我中断不想回断点,是因为那个是个循环,而且那个时候程序是在执行的,而没有CPUoff
是个闪烁过程 答 10: 可以啊,没问题。 答 11: 实践得真理,试一下就知道了~~ 答 12: 还是有问题的,hehe。
如果处理不好有可能造成堆栈益出。 答 13: 堆栈我会处理好的
只要稳定性能够保证就可以了
还请高手指点啊?
谢谢 答 1: 是调试程序吗? 答 2: 不是
是用在最后的程序中,调试没有关系的
我说的是下载到单片机以后,单片机脱离计算机,独立工作
会不会不稳定
原因是什么? 答 3: 这么做好像有点怪哦。你想实现什么功能,如果你是在中断处理程序中改变PC的值,程序就会立即跳到你写入pc的值的存储单元执行,这样中断就不能返回了,也不能再返回到被中断的程序并继续执行。整个程序就混乱了。 答 4: 兄弟
不是这个样子的
我是把SP中压入的断点PC值改掉
出中断的时候,就不回断点处执行了
而且到我要去的地方了
这样会不会使程序的稳定型变的不好啊 答 5: 好象可以,不过还得验证,可以把堆栈指针加4然后JMP到你所需的地方, 答 6: 这样就可以了
MOV #调转到的代码入口,2(SP)。因为先压入的是pc,后压入的是sr 答 7: 我担心的是稳定性! 答 8: 引用: 答 9: 那不是的,因为我中断不想回断点,是因为那个是个循环,而且那个时候程序是在执行的,而没有CPUoff
是个闪烁过程 答 10: 可以啊,没问题。 答 11: 实践得真理,试一下就知道了~~ 答 12: 还是有问题的,hehe。
如果处理不好有可能造成堆栈益出。 答 13: 堆栈我会处理好的
只要稳定性能够保证就可以了
共2条
1/1 1 跳转至页
回复
打赏帖 | |
---|---|
【Zephyr】使用Zephyr外设初始化过程解析被打赏30分 | |
【S32K146】S32DS watchdog 配置使用被打赏20分 | |
【Zephyr】使用 IAR 调试 Zephyr 镜像被打赏20分 | |
赚取电动螺丝刀+电源电路理论知识分享1被打赏5分 | |
我想要一部加热台+分享常见运算放大器电路的应用被打赏5分 | |
【Zephyr】MCXN947 Zephyr 开发入门适配shell被打赏20分 | |
我想要一部加热台+常见的MOS管驱动电路被打赏5分 | |
【我要开发板】6.联合MATLAB记录数据被打赏50分 | |
【换取手持数字示波器】MicrochipMPLABHarmony框架下串口调试printf输出记录被打赏29分 | |
【瑞萨RA2E1开发板】:使用ADC功能实现位移传感器采集方案被打赏20分 |