USB Transactions
13-53
USB Function Module
Figure 13–3. Non-Isochronous, Non-Control OUT Endpoint Handshaking Conditions
Token
Data
ACK
Token
Data
NAK
Token
Data
STALL
Token
Data
Successful data transfer from USB host. (Occurs because the endpoint’s
STAT_FLG.FIFO_En bit was set when token was received.)
No data accepted by DSP. (Occurs because the endpoint’s STAT_FLH.FIFO_En bit
was clear when token was received.)
EP stalled. No data accepted by DSP. (Occurs because the endpoint’s
Bad data received. No data accepted by DSP. (Occurs because of CRC error, PID
check error, bit stuffing error, or overrun conditions.)
EPx Rx Interrupt
EPx RX Interrupt
EPx RX Interrupt
STAT_FLG bits after
interrupt
ACK
ST
ALL
EP_Halted
NAK
1
0
0
0
STAT_FLG bits after
interrupt
0
0
0
1
STAT_FLG bits after
interrupt
0
1
1
0
0
1
0
0
or
After interrupt, EP’s RX FIFO contains received data.
After interrupt, EP’s RX FIFO is empty.
After interrupt, EP’s RX FIFO is empty.
No EPx RX interrupt occurs. EP’s RS FIFO is empty. STAT_FLG is not
updated.
Indicates a packet received by the device
Indicates a packet sent by the device
No handshake
sent
(SYSCON1.Nak_En=1)
(SYSCON1.Nak_En=1)
ACK
ST
ALL
EP_Halted
NAK
STAT_FLG.EP_Halted bit was set when token was received or because an EPO control
request error has occured.)
ACK
ST
ALL
EP_Halted
NAK