
58
MAX3421E Programming Guide
SNDFIFO Register
Meaning:
Send FIFO.
Mode:
Host only
The CPU fills an internal FIFO with data for transmission as an OUT transfer by repeatedly
writing the SNDFIFO register.
Programming Notes
If the CPU reads the SNDFIFO register after writing 64 bytes to the FIFO, the bytes are read
back.
After loading the SNDFIFO, the CPU writes the SNDBC (Send Byte Count) register with the
number of bytes loaded. When the CPU writes the byte count register, the SIE negates the
SNDBAVIRQ (Send Buffer Available IRQ) and commits the FIFO to USB transmission.
The SNDFIFO register connects to two internal 64-byte FIFOs. The two FIFOs allow the CPU to
load OUT data into one FIFO while the SIE concurrently sends data from the other FIFO over
USB. If the CPU writes the SNDBC register and the other buffer is available, the SIE negates the
SNDBAVIRQ bit and then immediately re-asserts it to indicate availability of the second buffer.
The CPU should load the SNDFIFO only when a SEND buffer is available, indicated by
SNDBAVIRQ = 1.