EasyManua.ls Logo

ST STM32F101xx

ST STM32F101xx
1096 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
RM0008 USB on-the-go full-speed (OTG_FS)
Doc ID 13902 Rev 12 899/1096
Figure 313. Normal bulk/control OUT/SETUP and bulk/control IN transactions
The channel-specific interrupt service routine for bulk and control OUT/SETUP
transactions is shown in the following code samples.
Interrupt service routine for bulk/control OUT/SETUP and bulk/control IN
transactions
a) Bulk/Control OUT/SETUP
Unmask (NAK/TXERR/STALL/XFRC)
if (XFRC)
{
Reset Error Count
Mask ACK
A
C
K
HostApplication DeviceAHB USB
O
U
T
D
A
T
A
0
M
P
S
1
MPS
1
MPS
write_tx _fifo
(ch_1)
init_reg(ch_1)
set _ch_en
(ch_2)
init_reg(ch_2)
write_tx _fifo
(ch_1)
set _ch_en
(ch_2)
ch_2
ch_2
ch_1
ch_1
De-allocate
(ch_1)
I
N
ch_2
ch_2
ch_2
ch_1
A
C
K
O
U
T
set _ch_en
(ch_2)
Non-Periodic Request
Queu e
Assume that this queue
can hold 4 entries.
4
1
6
A
C
K
D
A
T
A
0
I
N
A
C
K
read_rx_sts
read_rx_fifo
1
MPS
set _ch_en
(ch_2)
1
MPS
read_rx_stsre
ad_rx_fifo
read_rx_sts
Disable
(ch_2)
1
2
3
4
5
6
7
De-allocate
(ch_2)
CHH interruptr
ch_2
2
3
5
7
8
9
12
13
read_rx_sts
10
11
D
A
T
A
1
M
P
S
D
A
T
A
1
ai15675
RXFLVL interrupt
XFRC interrupt
RXFLVL interrupt
RXFLVL interrupt
RXFLVL interrupt
XFRC interrupt

Table of Contents

Related product manuals