Endpoint 0 RX handler
End of endpoint 0 TX
handler
Decrement
wlength_count value by
nb of received bytes.
STAT_FLG.
ACK bit set?
Control
read flag set
?
Application-
specific actions
to complete
control read
Retire data from EPO
wlength_count
Set
CTRL.SET_FIFO_EN bit
to 1.
Prepare for
Control Write
Status Stage
Is LH-initiated stall
and can remove halt
condition?
Set CTRL.Clr_HALT
bit to 1.
Application
specific action
to remove stall
Yes
Yes
Yes
No
Is control read data stage (IN transaction on
Yes
Write EP_NUM register:
- EP_NUM.EP_NUM = 0
- EP_NUM.EP_DIR = 1
- EP_NUM.EP_SEL = 1
- EP_NUM.SETUP_SEL = 0
No
EPO out of control read data stage or control
or write status stage are automatically stalled
by the core.
application’s TX buffer
(based on amount
previously put into TX FIFO).
>0 or other data
to send ?
Write non-ISO
TX data
No
Write EP_NUM register:
- EP_NUM.EP_NUM = 0
- EP_NUM.EP_DIR = 1
- EP_NUM.EP_SEL = 0
- EP_NUM.SETUP_SEL = 0
Write EP_NUM register:
- EP_NUM.EP_NUM = 0
- EP_NUM.EP_DIR = 1
- EP_NUM.EP_SEL = 0
- EP_NUM.SETUP_SEL = 0
Write EP_NUM register:
- EP_NUM.EP_NUM = 0
- EP_NUM.EP_DIR = 1
- EP_NUM.EP_SEL = 0
- EP_NUM.SETUP_SEL = 0
Write EP_NUM register:
- EP_NUM.EP_NUM = 0
- EP_NUM.EP_DIR = 1
- EP_NUM.EP_SEL = 0
- EP_NUM.SETUP_SEL = 0
Write EP_NUM register:
- EP_NUM.EP_NUM = 0
- EP_NUM.EP_DIR = 1
- EP_NUM.EP_SEL = 0
- EP_NUM.SETUP_SEL = 0
USB Device Controller
1623
SPNU503C – March 2018
Copyright © 2018, Texas Instruments Incorporated
Universal Serial Bus (USB)
Figure 29-67. Endpoint 0 TX Interrupt Handler