The next address that would be executed in the Low Priority ISR is pushed onto the stack and then the program branches to the location of the High Priority ISR (0008h), where it begins to execute that code.
Yes. It pulls the address off the stack and branches back to the low priority ISR.
It will also set the global enable bit for the High Priority interrupts, so that if another High Priority interrupt occurs, it will branch again to that ISR. (Which is why it is critical to reset the interrupt flags in the ISR)
Eventually, it should finish with the Low Priority ISR and branch back to the main program flow. (This will also set the global enable bit for Low Priority interrupts)
Clear as mud?![]()





Bookmarks