This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Will successful IN or OUT transaction (with zero-length packet) set the interrupt flag(USBIEPIFG/USBOEPIFG)?

For register USBIEPIFG, as described in user guide, "These bits are set by the UBM when a successful completion of a transaction occurs for this endpoint."

However, tests showed that

1) Interrupt does occur after a successful IN transaction on data (in) stage.

2) Interrupt does NOT occur after a successful IN transaction (with zero-length packet) on status (in) stage.

This is also applied for OUT transaction.

Question: For the USB module itself, will IN/OUT transaction (with ZLP) set the corresponding bit in USBIEPIFG/USBOEPIFG?

Some operation may need to take effect only after Acked the zero-length packet on status stage, for example, when received set_address request from host.

thanks.

 

Roger

**Attention** This is a public forum