Programming examples, Programming examples -2 – Cirrus Logic EP73xx User Manual
Page 48

4-2
EP7309/11/12 User’s Manual - DS508UM4
Copyright Cirrus Logic, Inc. 2003
Interrupt Controller
4
Programming Examples
ENTRY
;
ldr
r15, ResetV
ldr
r15, UndefV
ldr
r15, SWIV
ldr
r15, PAbortV
ldr
r15, DAbortV
ldr
r15, UnusedV
ldr
r15, IRQV
ldr
r15, FIQV
;
;*****************************************************************************
; The following is the actual vector table. It contains the addresses of the routines
; which handle each exception type.
;*****************************************************************************
ResetV
DCD
ResetHandler ; (0x0)
UndefV
DCD
UndefHandler ; (0x4)
SWIV
DCD
SWIHandler ; (0x8)
PAbortV
DCD
PAbortHandler ; (0xc)
DAbortV
DCD
DAbortHandler ; (0x10)
UnusedV
DCD
UnusedHandler ; (0x14)
IRQV
DCD
IRQHandler ; (0x18)
FIQV
DCD
FIQHandler ; (0x1C)
;*****************************************************************************
; IRQHandler routine checks for Timer1 expire interrupt. Sets GPIO PA0-8 low
; Interrupt cleared before return to program.
;*****************************************************************************
IRQHandler
TIMERCHECK
EQU
0x00000100
ldr
r0, =0x80000000 ; base address for interrupt status register
ldr
r1, [r0,#0x240] ; r1 contains timer status from INTSR1
cmp
r1, #TIMERCHECK
0x8000.07C0
COEOI
R/W
---
CODEC EOI
0x8000.1700
KBDEOI
R/W
---
Keyboard EOI
0x8000.1600
SRXEOF
R/W
---
SSI2 FIFO EOI
Table 4-1: Interrupt Registers (Continued)
Address
Name
Type
Size
Description
Page