English
Language : 

ADUC7021BCPZ62 Datasheet, PDF (83/104 Pages) Analog Devices – Precision Analog Microcontroller, 12-Bit Analog I/O, ARM7TDMI MCU
Data Sheet
PROCESSOR REFERENCE PERIPHERALS
INTERRUPT SYSTEM
There are 23 interrupt sources on the ADuC7019/20/21/22/
24/25/26/27/28/29 that are controlled by the interrupt
controller. Most interrupts are generated from the on-chip
peripherals, such as ADC and UART. Four additional interrupt
sources are generated from external interrupt request pins,
IRQ0, IRQ1, IRQ2, and IRQ3. The ARM7TDMI CPU core only
recognizes interrupts as one of two types: a normal interrupt
request IRQ or a fast interrupt request FIQ. All the interrupts
can be masked separately.
The control and configuration of the interrupt system are
managed through nine interrupt-related registers, four
dedicated to IRQ, and four dedicated to FIQ. An additional
MMR is used to select the programmed interrupt source. The
bits in each IRQ and FIQ register (except for Bit 23) represent
the same interrupt source as described in Table 160.
Table 160. IRQ/FIQ MMRs Bit Description
Bit Description
0
All interrupts OR’ed (FIQ only)
1
SWI
2
Timer0
3
Timer1
4
Wake-up timer (Timer2)
5
Watchdog timer (Timer3)
6
Flash control
7
ADC channel
8
PLL lock
9
I2C0 slave
10 I2C0 master
11 I2C1 master
12 SPI slave
13 SPI master
14 UART
15 External IRQ0
16 Comparator
17 PSM
18 External IRQ1
19 PLA IRQ0
20 PLA IRQ1
21 External IRQ2
22 External IRQ3
23 PWM trip (IRQ only)/PWM sync (FIQ only)
ADuC7019/20/21/22/24/25/26/27/28/29
IRQ
The interrupt request (IRQ) is the exception signal to enter the
IRQ mode of the processor. It is used to service general-purpose
interrupt handling of internal and external events.
The four 32-bit registers dedicated to IRQ are IRQSTA,
IRQSIG, IRQEN, and IRQCLR.
Table 161. IRQSTA Register
Name
Address
IRQSTA
0xFFFF0000
Default Value
0x00000000
Access
R
IRQSTA (read-only register) provides the current-enabled IRQ
source status. When set to 1, that source should generate an
active IRQ request to the ARM7TDMI core. There is no priority
encoder or interrupt vector generation. This function is
implemented in software in a common interrupt handler
routine. All 32 bits are logically OR’ed to create the IRQ signal
to the ARM7TDMI core.
Table 162. IRQSIG Register
Name
Address
IRQSIG
0xFFFF0004
Default Value
0x00XXX0001
Access
R
1 X indicates an undefined value.
IRQSIG reflects the status of the different IRQ sources. If a periph-
eral generates an IRQ signal, the corresponding bit in the IRQSIG
is set; otherwise, it is cleared. The IRQSIG bits are cleared when
the interrupt in the particular peripheral is cleared. All IRQ
sources can be masked in the IRQEN MMR. IRQSIG is read only.
Table 163. IRQEN Register
Name
Address
IRQEN
0xFFFF0008
Default Value
0x00000000
Access
R/W
IRQEN provides the value of the current enable mask. When
each bit is set to 1, the source request is enabled to create an
IRQ exception. When each bit is set to 0, the source request is
disabled or masked, which does not create an IRQ exception.
Note that to clear an already enabled interrupt source, the user
must set the appropriate bit in the IRQCLR register. Clearing an
interrupt’s IRQEN bit does not disable the interrupt.
Table 164. IRQCLR Register
Name
Address
IRQCLR
0xFFFF000C
Default Value
0x00000000
Access
W
IRQCLR (write-only register) clears the IRQEN register in
order to mask an interrupt source. Each bit set to 1 clears the
corresponding bit in the IRQEN register without affecting the
remaining bits. The pair of registers, IRQEN and IRQCLR,
independently manipulates the enable mask without requiring
an atomic read-modify-write.
Rev. F | Page 83 of 104