1.
Set up the jump table.
CSEG
AT 300H
; any page boundary
USB_Jump_Table:
ljmp
db
ljmp
db
SUDAV_ISR
0
SOF_ISR
0
; SETUP Data Available
; make a 4-byte entry
; SOF
ljmp
db
ljmp
db
ljmp
db
SUTOK_ISR
0
SUSP_ISR
0
URES_ISR
0
; SETUP Data Loading
; Global Suspend
; USB Reset
ljmp
db
SPARE_ISR
0
ljmp
db
EP0IN_ISR
0
ljmp
db
EP0OUT_ISR
0
ljmp
db
EP1IN_ISR
0
ljmp
db
EP1OUT_ISR
0
ljmp
db
EP2IN_ISR
0
ljmp
db
EP2OUT_ISR
0
ljmp
db
EP3IN_ISR
0
ljmp
db
EP3OUT_ISR
0
ljmp
db
EP4IN_ISR
0
ljmp
db
EP4OUT_ISR
0
ljmp
db
EP5IN_ISR
0
ljmp
db
EP5OUT_ISR
0
ljmp
db
ljmp
db
EP6IN_ISR
0
EP6OUT_ISR
0
; Used by this example
; Used by this example
ljmp
db
EP7IN_ISR
0
ljmp
db
EP7OUT_ISR
0
Figure 6-7. Interrupt Jump Table
This table contains all of the USB interrupts, even though only the jumps for endpoint 2
are used for the example. It is convenient to include this table in any USB application that
uses interrupts. Be sure to locate this table on a page boundary (xx00).
EZ-USB TRM v1.9
Chapter 6. EZ-USB CPU
Page 6-17