Writing data into buffer when BUSY bit is set

Question: The EZ-USB TRM page 6-2, states that the 8051 should never read or write an endpoint buffer or byte count register while the endpoint's busy bit is set. If I write "IN2BUF[i]=..." without checking the Busy bit,what will happen if the Busy bit is still 1? Will it overwrite the buffer? Or Is the new data not written into the buffer?

 

Answer:

Writing to an endpoint when the busy bit is set, could corrupt the data that you are trying to write to the endpoint's buffer. Reading from the endpoint when the busy bit is set, may give you unexpected results.

Essentially, reading/writing to or from an endpoint when the busy bit is set may cause unexpected results. We recommend to check the busy bit before filling/writing to the endpoint .