AnsweredAssumed Answered

I2C busy flag not cleared  immediately after stop condition

Question asked by Brian Smith on Jun 15, 2019
Latest reply on Jun 16, 2019 by Mark Butcher

Hello,

 

I noticed that my function to send data sometimes fails at busy flag check but every write/read ends up with stop condition so next one shouldn't get BUSY FLAG(it's  not multimaster), seems like burning some cycles(around 20 NOPS) after stop condition helps and then it never happens that function fails on busy flag check.

 

Is it possible that update of the busy flag is somehow delayed(queued in some kind of pipeline) and another function call will check busy flag before it actually gets updated? Is there any solution to this problem other than burning some cycles after generating stop condition?

Outcomes