1
我想知道在中断被捕获之前程序行中正在执行的最后一条指令是什么。看来,读取微控制器堆栈是不可能的。在PIC16/18捕获到中断之前是否可以知道PCL的值?
我想知道在中断被捕获之前程序行中正在执行的最后一条指令是什么。看来,读取微控制器堆栈是不可能的。在PIC16/18捕获到中断之前是否可以知道PCL的值?
在PIC16上不可能,因为硬件堆栈不能被软件访问。但是,可以访问PIC18上的硬件堆栈。应用笔记Manipulating the Stack of the PIC18 Microcontroller是一个很好的参考。
如果您只希望在调用中断时将PCL值压入堆栈,那么您只需要读取TOSU
,TOSH
和TOSL
寄存器。
很高兴知道,谢谢你的回答。 – 2011-08-26 15:17:08