Figure 18.13 Operation On Receiving An In Token (Ep4-In: Initial Fifo Is Empty) - Renesas H8S/2158 User Manual

16-bit single-chip microcomputer h8s family/h8s/2100 series
Table of Contents

Advertisement

USB Host
Send an IN token packet
Receive a NAK
handshake packet
Re-transmission
Send an IN token
packet
Receive an IN data
packet (64 bytes)
Send an ACK
handshake packet
Notes: 1. When an EP4TF interrupt is specified as a USBIB or USBIC interrupt according to the INTSELR0 setting, the corresponding interrupt
occurs. In this case, if a USBIB or USBIC interrupt occurs, interrupt source determination process is not required. (Note that TFFR0
must be accessed to clear the flags.)
2. When an EP4TS interrupt is specified as a USBIB or USBIC interrupt according to the INTSELR0 setting, the corresponding interrupt
occurs. In this case, if a USBIB or USBIC interrupt occurs, interrupt source determination process is not required. (Note that TSFR0
must be accessed to clear the flags.)

Figure 18.13 Operation on Receiving an IN Token (EP4-IN: Initial FIFO Is Empty)

USB Function Core
Receive an IN token packet
Send NAK to the host CPU
Send NAK to the slave CPU
Receive an IN token packet
Send an IN data
packet (64 bytes)
Receive ACK
Send ACK to the slave CPU
Section 18 Universal Serial Bus Interface (USB)
Core Interface
Disable data read because
the EP4 transmit buffer is empty
Request an USBID
interrupt (EP4TF) *
1
Write data to the EP4
transmit buffer (pre-read)
and request the RFU
transmission
Read data from the EP4
transmit buffer
Request RFU transmission
Modify the RFU pointer
Request an USBID interrupt
(EP4TS) *
2
Rev. 3.00 Jan 25, 2006 page 617 of 872
Slave CPU
Initiate the USBID interrupt
processing
Read USBIFR0 and check
if a TF interrupt occurs
or not
Read TSFR0 and check
if an EP2TF interrupt occurs
or not
Read the RFU pointer, write
data to EP4 RAM-FIFO for
the number of bytes which
can be written to, and modify
the RFU pointer
Set the EP4TE bit of
PTTER0 to 1
Clear the EP4TF bit of
TFSR0 to 0
Complete the USBID
interrupt processing
Read the RAM-FIFO, send
ACK, and write to the
transmit buffer
Modify the RFU pointer
and send ACK
Initiate the USBID interrupt
processing
The following procedure is
the same as that when
the initial FIFO is full.
REJ09B0286-0300

Advertisement

Table of Contents
loading

Table of Contents