xmc4800 gets stuck at XMC_USIC_CH_GetTransmitBufferStatus(channel) == XMC_USIC_CH_TBU

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Level 1
Level 1

XMC4800 is the I2C_Slave. Transmission is configured in Direct (polling mode).
In callback function of the I2C_SLAVE_lProtocolHandler, we are transmitting messages to the I2C_MAster.
Btw, protocol_event is XMC_I2C_CH_EVENT_SLAVE_READ_REQUEST.

This scheme works fine. the problem occurs when we want to debug. When I hit a breakpoint or halt execution,
the execution gets stuck at " while(XMC_USIC_CH_GetTransmitBufferStatus(channel) == XMC_USIC_CH_TBUF_STATUS_BUSY)"
in XMC_I2C_CH_SlaveTransmit().

Btw, our IDE is IAR 8.50.9.

What is the problem? We are not able to debug our code due to the execution being stuck at that location when we hit a breakpoint.

please help.
0 Replies