![Freescale Semiconductor ColdFire MCF5211 Reference Manual Download Page 196](http://html1.mh-extra.com/html/freescale-semiconductor/coldfire-mcf5211/coldfire-mcf5211_reference-manual_2330619196.webp)
Interrupt Controller Module
MCF5213 ColdFire® Integrated Microcontroller Reference Manual, Rev. 3
12-4
Freescale Semiconductor
if interrupt source 1 is active and acknowledged,
then Vector number = 65
if interrupt source 2 is active and acknowledged,
then Vector number = 66
...
if interrupt source 8 is active and acknowledged,
then Vector number = 72
if interrupt source 9 is active and acknowledged,
then Vector number = 73
...
if interrupt source 62 is active and acknowledged,
then Vector number = 126
The net effect is a fixed mapping between the bit position within the source to the actual interrupt vector
number.
If there is no active interrupt source for the given level, a special spurious interrupt vector (vector
number = 24) is returned. It is the responsibility of the service routine to manage this error situation.
Note this protocol implies the interrupting peripheral is not accessed during the acknowledge cycle
because the interrupt controller completely services the acknowledge. This means the interrupt source
must be explicitly disabled in the interrupt service routine. This design provides unique vector capability
for all interrupt requests, regardless of the complexity of the peripheral device.
12.2
Memory Map
The register programming model for the interrupt controllers is memory-mapped to a 256-byte space. In
the following discussion, there are a number of program-visible registers greater than 32 bits. For these
control fields, the physical register is partitioned into two 32-bit values: a register high (the upper
longword, represented by an appended “H”) and a register low (the lower longword, represented by an
appended “L”).
The registers and their locations are defined in
. The register names include the (zero-based)
interrupt controller number
n
, which is useful in devices with multiple controllers. The MCF5213 has only
one interrupt controller; hence,
n
= 0.
Table 12-2. Interrupt Controller Memory Map
Module Offset
Bits[31:24]
Bits[23:16]
Bits[15:8]
Bits[7:0]
0x0C00
Interrupt Pending Register High (IPRH
n
), [63:32]
0x0C04
Interrupt Pending Register Low (IPRL
n
), [31:1]
0x0C08
Interrupt Mask Register High (IMRH
n
), [63:32]
0x0C0C
Interrupt Mask Register Low (IMRL
n
), [31:0]
0x0C10
Interrupt Force Register High (INTFRCH
n
), [63:32]
0x0C14
Interrupt Force Register Low (INTFRCL
n
), [31:1]
0x0C18
IRLR
n
[7:1]
IACKLPR
n
[7:0]
Reserved
0x0C1C–
0x0C3C
Reserved
0x0C40
Reserved
ICR
n
01
ICR
n
02
ICR
n
03
0x0C44
ICR
n
04
ICR
n
05
ICR
n
06
ICR
n
07