Interrupt Controller (INTC)
MPC5565 Microcontroller Reference Manual, Rev. 1.0
Freescale Semiconductor
10-31
An ISR whose PRI
n
in INTC priority select registers (INTC_PSR0–INTC_PSR231) has a value of 0 does
not cause an interrupt request to the processor, even if its peripheral or software settable interrupt request
is asserted. For a peripheral interrupt request, not setting its enable bit or disabling the mask bit causes it
to remain negated, which consequently also does not cause an interrupt request to the processor. Since the
ISRs are outside the control of the RTOS, this ISR does not run unless called by another ISR or the
interrupt exception handler, perhaps after executing another ISR.
10.5.4
Order of Execution
An ISR with a higher priority can preempt an ISR with a lower priority, regardless of the unique vectors
associated with each of their peripheral or software settable interrupt requests. However, if multiple
peripheral or software settable interrupt requests are asserted, more than one has the highest priority, and
that priority is high enough to cause preemption, the INTC selects the one with the lowest unique vector
regardless of the order in time that they asserted. However, the ability to meet deadlines with this
scheduling scheme is no less than if the ISRs execute in the time order that their peripheral or software
settable interrupt requests asserted.
The example in
shows the order of execution of both ISRs with different priorities, and with
the same priority.
Table 10-10. Order of ISR Execution Example
Step
Step Description
Code Executing At End of Step
PRI in
INTC_CPR
at End of
Step
RTOS
ISR108
1
ISR208
ISR308 ISR408
Interrupt
Exception
Handler
1
RTOS at priority 0 is executing.
X
0
2
Peripheral interrupt request 100 at
priority 1 asserts. Interrupt taken.
X
1
3
Peripheral interrupt request 400 at
priority 4 is asserts. Interrupt taken.
X
4
4
Peripheral interrupt request 300 at
priority 3 is asserts.
X
4
5
Peripheral interrupt request 200 at
priority 3 is asserts.
X
4
6
ISR408 completes. Interrupt exception
handler writes to INTC_EOIR.
X
1
7
Interrupt taken. ISR208 starts to
execute, even though peripheral
interrupt request 300 asserted first.
X
3
8
ISR208 completes. Interrupt exception
handler writes to INTC_EOIR.
X
1
9
Interrupt taken. ISR308 starts to
execute.
X
3
Содержание MPC5565
Страница 18: ...MPC5565 Microcontroller Reference Manual Devices Supported MPC5565 MPC5565 RM Rev 1 0 09 2007...
Страница 34: ...MPC5565 Reference Manual Rev 1 0 Freescale Semiconductor 15...
Страница 35: ...MPC5565 Reference Manual Rev 1 0 16 Freescale Semiconductor...
Страница 325: ...Error Correction Status Module ECSM MPC5565 Microcontroller Reference Manual Rev 1 0 8 16 Freescale Semiconductor...
Страница 515: ...External Bus Interface EBI MPC5565 Microcontroller Reference Manual Rev 1 0 12 70 Freescale Semiconductor...
Страница 553: ...Flash Memory MPC5565 Microcontroller Reference Manual Rev 1 0 13 38 Freescale Semiconductor...
Страница 559: ...SRAM MPC5565 Microcontroller Reference Manual Rev 1 0 14 6 Freescale Semiconductor...
Страница 577: ...Boot Assist Module BAM MPC5565 Microcontroller Reference Manual Rev 1 0 15 18 Freescale Semiconductor...
Страница 895: ...Deserial Serial Peripheral Interface DSPI MPC5565 Microcontroller Reference Manual Rev 1 0 19 72 Freescale Semiconductor...
Страница 973: ...Preface MPC5565 Microcontroller Reference Manual Rev 1 0 21 36 Freescale Semiconductor...
Страница 1145: ...MPC5565 Register Map MPC5565 Microcontroller Reference Manual Rev 1 0 A 60 Freescale Semiconductor...
Страница 1153: ...Calibration MPC5565 Microcontroller Reference Manual Rev 1 0 B 8 Freescale Semiconductor...