
iXPeRiPheRaLMoDuLes7(usB):usBFunCtionContRoLLeR(usB)
iX-1-68
ePson
s1C33L17teChniCaLManuaL
0x300939:eP0Control(eP0Control)
name
address
Registername
Bit
setting
init. R/W
Remarks
inxout
–
ReplyDescriptor
D7
D6–1
D0
0
–
0
R/W
–
W
0 when being read.
00300939
(B)
1 IN
0 OUT
1 Replydescriptor
0 Donothing
–
eP0Control
(eP0control)
This register sets up the endpoint EP0.
D7
inxout
Set the transfer direction of the endpoint EP0.
Judging from the request received at the setup stage, set a value in this bit.
If the data stage exists, set the transfer direction at the data stage into this bit. As the setup of the
ForceNAK bits of the EP0ControlIN and EP0ControlOUT registers completes when the setup stage
completes, clear them during execution of the data stage or the status stage.
After the data stage is completed, set this bit again conforming to the direction of the status stage. When
the transfer direction of the data stage is IN, the transfer direction of the status stage is OUT. Therefore,
set this bit to 0. When the transfer direction of the data stage is OUT, or there is no data stage, the
transfer direction of the status stage is IN. Therefore, clear the FIFO of the endpoint EP0, and set this
bit to 1.
For the IN or OUT transactions which have a transfer direction different from that of this bit, NAK
response is done. However, if the ForceSTALL bit of the EP0ControlIN or EP0ControlOUT register
with the transaction direction corresponding to the above one, is set, the STALL response will be done.
D[6:1]
Reserved
D0
ReplyDescriptor
Executes the Descriptor reply function.
If this bit is set to 1, this bit replies as much Descriptor data as specified as MaxPacketSize from the
FIFO, responding to the IN transaction of the endpoint EP0. The Descriptor data start from the address
specified in the DescAdrs_H, L register, and its data size is specified in the DescSize_H, L register.
Since these setting values are updated during execution of the Descriptor reply function, set these
setting values every time setting the ReplyDescriptor bit.
In every transaction, the DescAdrs_H, L register is incremented as many as the number of data that
were sent, while the DescSize_H, L register is decremented as many as the number of data that were
sent.
When the data transmission ends after sending as many data as specified in the DescSize_H, L or
when a transaction other than the IN transaction is done, the Descriptor reply function ends, the
ReplyDescriptor bit is set to 0 (to be cleared) and the IN_TranACK bit of the EPnIntStat register is set
to 1.
Refer to the section describing operations, for details.