Posted on March 11, 2015 at 14:07Hi,I'm developing an I2C driver for a SPC560B54L5 micro, and I have problems generating the stop bit.At the end of a write operation, I run the following pseudo code: while (0 == IBSR. IBIF) { /* wait */ } IBCR....
Posted on March 24, 2015 at 10:31Problem was solved by waiting for TCF: while (0 == IBSR.IBIF) { /* wait */ } while (0 == IBSR.TCF) { /* wait */ } IBCR.MSSL = 0 /* generate stop bit */ while (1 == IBSR.IBB) { /* wait */ }
Posted on March 17, 2015 at 15:43Hello Erwan,Thanks for your reply. Unfortunately, it does not look like an arbitration loss, since IBSR.IBAL is not set when the software is stuck waiting for IBB to drop. Also, there is only one (other) device on th...