none
Problem in EEPROM Sequential read RRS feed

  • Question

  • Hi all.

    I'm working with EEPROM (through I2C) driver.

    I can write and read a single byte from EEPROM.

    However, if i try "Sequential Read" (Multibyte Read),

    I face problem in reading:

    I can read values from Address: 0x000 to 0x0FF correctly.

    But all values beyond 0x0FF will be wrong (shows all values as 0xFF).

    Even if i read from , say ,  0x0FA to 0x105,

    values from 0x0FA to 0x0FF will be correct, but values from 0x100 to 0x105 will be wrong. (ie: 0xFF).

    It is NOT the problem with EEPROM WRITE. Because if i use "Selective Read" (Single Byte Read), I'm getting correct read data.

    Lines from EEPROM datasheet:

    Sequential Read

    If, after receiving data sent by the Slave, the Master
    responds with ACK, then the Slave will continue
    transmitting until the Master responds with NoACK
    followed by STOP. During Sequential Read the
    internal byte address is automatically incremented up to the
    end of memory, where it then wraps around to the beginning
    of memory.

    (My EEPROM Memory is from 0x000 to 0x7FF)


    What may be the problem here?

    Thanks.

    Regards,

    Keshava G N


    Keshava G N ( keshavagn@iwavesystems.com ), Member - Technical, iWave Systems ( http://iwavesystems.com )

    Tuesday, February 26, 2013 2:15 PM

Answers

  • It is difficult to answer if i don't have the data sheet. still i can try few suggestions for you :

    Few suggestions if 0xff is the page boundary then i guess you are having the issue with reading the next page.

    Try reading the second page alone (0x100 to few bytes)

    Re Check the command for sequential  read if it is correct or is it for page read ?

    If it still doesnt work you can post the code snippet and data sheet details ?

    --- Misbah


    Senior Design Engineer T.E.S Electroni Solutions (Bangalore-India) www.tes-dst.com email-misbah.khan@tes-dst.com

    • Marked as answer by Keshava GN Thursday, March 14, 2013 6:33 AM
    Tuesday, February 26, 2013 6:22 PM

All replies

  • It is difficult to answer if i don't have the data sheet. still i can try few suggestions for you :

    Few suggestions if 0xff is the page boundary then i guess you are having the issue with reading the next page.

    Try reading the second page alone (0x100 to few bytes)

    Re Check the command for sequential  read if it is correct or is it for page read ?

    If it still doesnt work you can post the code snippet and data sheet details ?

    --- Misbah


    Senior Design Engineer T.E.S Electroni Solutions (Bangalore-India) www.tes-dst.com email-misbah.khan@tes-dst.com

    • Marked as answer by Keshava GN Thursday, March 14, 2013 6:33 AM
    Tuesday, February 26, 2013 6:22 PM
  • Hi Misbah,

    Thank you for quick response..

    I will do the tests you suggested and will let you know the results.

    Thanks.

    With regards,

    Keshava G N


    Keshava G N ( keshavagn@iwavesystems.com ), Member - Technical, iWave Systems ( http://iwavesystems.com )


    • Edited by Keshava GN Wednesday, February 27, 2013 4:16 AM
    Wednesday, February 27, 2013 4:12 AM