in my I2C current read operation .. i cant read the current adress (valu where stored).
i have done the write operation and stored a value 41h at 30h address of 24c08 eeprom. but at the time or current read i want to read that value from 41h adress but it pointed to 42h and gives out put 00h. so how i read 41h .. at one program. here i am using asembly language and at89s52 mc.
As you already found out, the current address is auto-incremented after a read- or write operation. To read-back a memory location you have just written, the address must be send to the device once more, then perform the read. The sequence is shown as "random access read" in the datasheet.
random read :--------- dummy write followed by current address read
Dummy write is except stop and data you give all things as it is..
{Start}{Devaddress + Wr}{memlocation addres} {Start}{Devaddress + Rd}{read the data+NACK}{stop}