The USCI gives no explicit indicator that a byte has been shifted out (and has been ACK-ed). You might get some use out of UCSCLLOW [Ref UG Sec 38.3.5.1], since the clock will be stretched once the shift-out is done (if UCTXIFG=1). Since all that bit indicates is that SCL is low, you'll still need to calibrate (guess) what a "long time" is, but that would be based on the I2C bit-time, and thus much shorter (and slightly less arbitrary).
↧