I am using a LPC18S37 together with an NXP A700x controller via I2C bus. I assume the I2C controller inside of the LPC18S37 is the same for all LPC family members.
In my reading sequence I terminate each byte with setting AA bit in CONSET and setting SI in CONCLR register. This generates an ACK on the bus. The last byte must be terminated with a NACK (this is a requirement of the A700x controller). To achieve this, I set AA in CONCLR (this should generate a NACK), set STO in CONSET and set SI in CONCLR. STO is required to terminate the sequence and SI to set the state to the bus. But my analyzer show me that the bus is terminated always with ACK and STO set, not with NACK and STO.
Is here something which I make wrong?
Thank you for a hint.