Question
I2C address timeout: how to close communication correctly
Posted on April 21, 2012 at 11:27
Hi there,
I'm trying to implement an enumeration test on the I2C bus with my own driverbut I haven't figured out how to deal with a timeout on the address.After I send the address of the slave, if nobody respond within a certain timeout(25ms in my case) I'd like to close up the communication and go on with the nextaddress. I tried setting the stop bit on timeout but the bus keep staying busy and inmaster mode, and it locks everything up, because the next thing I do is sending a new start condition which won't happen due to the bus being buse.The spec says that after setting the STOP bit, the stop condition will be actually setafter the next byte. Does this mean that I have to send a dummy byte (which hopefullyis nobody address)? Or is there something I am missing?Thanks in advanced.S.