17.5.12 USB FIFO Endpoint n Register (USBFIFO[0]-USBFIFO[3])
Note
Use caution when reading these registers. Performing a read may change bit status.
The USB FIFO endpoint
n
32-bit registers (USBFIFO[
n
]) provide an address for CPU access to the FIFOs for
each endpoint. Writing to these addresses loads data into the Transmit FIFO for the corresponding endpoint.
Reading from these addresses unloads data from the Receive FIFO for the corresponding endpoint.
Transfers to and from FIFOs can be 8-bit, 16-bit or 32-bit as required, and any combination of accesses is
allowed provided the data accessed is contiguous. All transfers associated with one packet must be of the same
width so that the data is consistently byte-, halfword- or word-aligned. However, the last transfer may contain
fewer bytes than the previous transfers in order to complete an odd-byte or odd-word transfer.
Depending on the size of the FIFO and the expected maximum packet size, the FIFOs support either single-
packet or double-packet buffering (see
Single-Packet Buffering
in
packets is not supported as flags must be set after each packet is written.
Following a STALL response or a transmit error on endpoint 1–3, the associated FIFO is completely flushed.
For the specific offset for each FIFO register, see
.
Mode(s):
Host
Device
and described in
Figure 17-18. USB FIFO Endpoint n Register (USBFIFO[n])
31
0
EPDATA
R/W-0
LEGEND: R/W = Read/Write; R = Read only; -
n
= value after reset
Table 17-19. USB FIFO Endpoint n Register (USBFIFO[n]) Field Descriptions
Bit
Field
Reset
Description
31-0
EPDATA
0x0000.0000
Endpoint Data. Writing to this register loads the data into the Transmit FIFO and reading
unloads data from the Receive FIFO.
Universal Serial Bus (USB) Controller
1086
TMS320x2806x Microcontrollers
SPRUH18I – JANUARY 2011 – REVISED JUNE 2022
Copyright © 2022 Texas Instruments Incorporated
Содержание TMS320 2806 Series
Страница 2: ......