Datasheet
Section 16 USB Function Module (USB)
Page 1012 of 1408 R01UH0309EJ0500 Rev. 5.00
Sep 24, 2012
H8S/2456, H8S/2456R, H8S/2454 Group
16.8 DMA Transfer
16.8.1 Overview
DMA transfer can be performed for endpoints 1 and 2 in this module. Note that word or longword
data cannot be transferred.
When endpoint 1 holds at least one byte of valid receive data, a DMA request for endpoint 1 is
generated. When endpoint 2 holds no valid data, a DMA request for endpoint 2 is generated.
If the DMA transfer is enabled by setting the EP1 DMAE bit in the DMA transfer setting register
to 1, zero-length data reception at endpoint 1 is ignored. When the DMA transfer is enabled, the
EP1 RDFN bit and EP2 PKTE bit do not need to be set to 1 in TRG1. (Note that the PKTE bit in
TRG1 must be set to 1 when the transfer data is less than the maximum number of bytes). When
all the data received at EP1 is read, the FIFO automatically enters the EMPTY state. When the
maximum number of bytes (64 bytes) are written to the EP2 FIFO, the FIFO automatically enters
the FULL state, and the data in the FIFO can be transmitted (see figures 16.21 and 16.22).
16.8.2 Setting for the On-chip DMAC
The on-chip DMAC should be set for USB requests (using the DREQ signal), low-level input
activation, byte size, full-address mode transfer, and the DTA bit = 1 in the DMABCR register.
The on-chip DMAC will then be stopped after transfer has been completed the specified number
of times. However, note that the DREQ signal continues to be asserted (held at the low level)
regardless of the state of the DMAC when the DMA transfer requests still remains in this module.