Interrupt Controller (INTC)
oldCPRn = INTC_CPRn; # save INTC_CPRn
(branch to the pop_lifo)
pop_lifo:
store INTC_EIORn # pop INTC_CPR from LIFO, examine PRI, etc...
examine INTC_CPRn[PRI], and store onto stack
if PRI is not zero or value when interrupts were enabled, branch to
pop_lifo
branch to push_lifo
When the examination is complete, the LIFO can be restored using this code sequence:
push_lifo:
load stacked PRI value and store to INTC_CPRn
load INTC_IACKn # IACK; push INTC_CPRn into LIFO
if stacked PRI values are not depleted, branch to push_lifo
INTC_CPRn = oldCPRn; # restore original INTC_CPRn and re-evaluate
pending
wrteei 1 # enable processor recognition of interrupts
Note:
Disabling the processor recognition of interrupts during LIFO examination will introduce
latency, but none of the interrupt requests will be missed.
18.8
Interrupt sources
The list of interrupt sources is chip-specific. For this list, see the chip-specific INTC
information.
382/2058
external interrupts
DocID027809 Rev 4
RM0400
Need help?
Do you have a question about the SPC572L series and is the answer not in the manual?
Questions and answers