I'm using UCB1 in 400kHz I2C master mode, and after a few bytes are read, the I2C engine appears to hang with the busy bit set. If you look at the SCL line on a scope, you can see 400kHz SCL pulses going on forever. If I remove the external device so that nothing is on the bus, the pulses continue, so the pulses are coming from the MSP430.
This doesn't seem to happen with write transactions or with 100kHz I2C. I can't think of a reason why the bus would get stuck in this state. Any suggestions for debugging this issue? Any experiments I should run or data I should collect?
Thanks,
Michael