Datasheet

Section 22 USB Function Module (USB)
Rev. 2.00 Aug. 20, 2008 Page 877 of 1198
REJ09B0403-0200
22.5.6 EP2 Bulk-In Transfer (Dual FIFOs)
Valid data in either
of EP2 FIFOs?
Yes
No
Clear EP2 transfer
request flag
(IFR0.EP2 TR = 0)
Enable EP2 FIFO
empty interrupt
(IER0.EP2 EMPTY = 1)
USB function
NA
K
ACK
Either of EP2
FIFOs empty?
Set EP2 empty status
(IFR0.EP2 EMPTY = 1)
Yes
No
Write one packet of data to
EP2 data register (EPDR2)
Set EP2 packet enable bit
(TRG.EP2 PKTE = 1)
Clear EP2 empty status
(TRG.EP2 EMPTY = 0)
IN token reception
Data transmission to host
Interrupt request
Interrupt request
Application
Transfer processing
Resume
Transfer data set processing
Resume
Figure 22.16 EP2 Bulk-In Transfer Operation
EP2 has two 64-byte FIFOs, but the user can transmit data and write transmit data without being
aware of this dual-FIFO configuration. However, one data write is performed for one FIFO. For
example, even if both FIFOs are empty, it is not possible to perform EP2PKTE at one time after
consecutively writing 128 bytes of data. EP2PKTE must be performed for each 64-byte write.