I can't get an ADuC7026 to relaibly write to a serial EEPROM, specifically the Microchip 24LC16. It works when I connect an Aardvark I2C bus monitor but not without the monitor connected. My suspicion is that there is a problem with the bit timings and the EEPROM doesn't recognise the stop condition. I'm certainly concerned that the SDA hold time is about 0 nsec after SCL falls as the SMBUS specifies a minimum of 300 nsec. The datasheet hints that the I2CxCCNT register may be involved in bit timings, but fails to describe the effect of the register.
Has anyone sucessfully interfaced an ADuC7026 to a 24LC16 (or similar, I'm happy to change to a different part)?
Does anyone know what the I2CxCCNT register does?