
Chapter 4. Interrupts Page 4-21
As shown in Table 4-16, the jump table contains a series of jump instructions, one for each individ-
ual FIFO/GPIF Interrupt source’s ISR.
4.8.1 FIFO/GPIF Autovector Coding
To employ autovectoring for the FIFO/GPIF interrupt, perform the following steps:
1. Insert a jump instruction at 0x0053 to a table of jump instructions to the various FIFO/GPIF
interrupt service routines. Make sure the jump table starts at a 0x0100-byte page boundary
plus 0x80.
2. Code the jump table with jump instructions to each individual FIFO/GPIF interrupt service rou-
tine. This table has two important requirements, arising from the format of the INT4VEC byte
(0x80-based, with the 2 LSBs set to 0); the two requirements are the following:
• It must begin on a page boundary + 0x80 (address 0xnn80).
• The jump instructions must be four bytes apart.
3. Place the interrupt service routines anywhere in memory.
4. Write initialization code to enable the FIFO/GPIF interrupt (INT4) and Autovectoring.
Table 4-16. A Typical FIFO/GPIF-Interrupt Jump Table
Table Offset Instruction
0x80 LJMP EP2PF_ISR
0x84 LJMP EP4PF_ISR
0x88 LJMP EP6PF_ISR
0x8C LJMP EP8PF_ISR
0x90 LJMP EP2EF_ISR
0x94 LJMP EP4EF_ISR
0x98 LJMP EP6EF_ISR
0x9C LJMP EP8EF_ISR
0xA0 LJMP EP2FF_ISR
0xA4 LJMP EP4FF_ISR
0xA8 LJMP EP6FF_ISR
0xAC LJMP EP8FF_ISR
0xB0 LJMP GPIFDONE_ISR
0xB4 LJMP GPIFWF_ISR
Komentarze do niniejszej Instrukcji