RM0033
Mask ACK
Unmask CHH
Disable Channel
if (STALL)
}
else
if (NAK or TXERR)
else
else
The application is expected to write the data packets into the transmit FIFO when the
space is available in the transmit FIFO and the Request queue up to the count
specified in the MCNT field before switching to another channel. The application uses
the NPTXFE interrupt in OTG_HS_GINTSTS to find the transmit FIFO space.
b)
Unmask (NAK/TXERR/XFRC/BBERR/STALL/FRMOR/DTERR)
if (XFRC)
{
Reset Error Count
Mask ACK
if (OTG_HS_HCTSIZx.PKTCNT == 0)
{
De-allocate Channel
}
else
{
{
Transfer Done = 1
}
{
Rewind Buffer Pointers
Reset Error Count
Mask ACK
Unmask CHH
Disable Channel
}
if (CHH)
{
Mask CHH
if (Transfer Done or (Error_count == 3))
{
De-allocate Channel
}
else
{
Re-initialize Channel (in next b_interval - 1 Frame)
}
}
if (ACK)
{
Reset Error Count
Mask ACK
}
Interrupt IN
USB on-the-go high-speed (OTG_HS)
RM0033 Rev 8
1219/1378
1258
Need help?
Do you have a question about the STM32F205 series and is the answer not in the manual?