You are reading a single comment by @Vishnu and its replies. Click here to read the full conversation.
  • @DrAzzy, afaiu, the WREN has to be sent before every PAGE PROGRAM command, because of the last sentence in this data sheet paragraph of the PAGE PROGRAM command description: ...before (PAGE PROGRAM) cycle completed and WEL bit is reset.

    As soon as S# is driven HIGH, the self-timed PAGE PROGRAM cycle is initiated; the cycles's duration is tPP. While the PAGE PROGRAM cycle is in progress, the status register may be read to check the value of the write in progress (WIP) bit. The WIP bit is 1 during the self-timed PAGE PROGRAM cycle, and 0 when the cycle is completed. At some un- specified time before the cycle is completed, the write enable latch (WEL) bit is reset.

    So this device is for sure a very interesting one...

    ...with the biggest draw-back that an in-place rewrite needs an erase of the whole page. For full page writes, this is not that an issue, but for partial ones where multiple logical data items share the page, the maximum write cycles of the device are reached in multiples earlier. Therefore, for data that is expected to be a memory extension and involve in continuous processing, EEPROM technology requires ahead determination of how many write cycles are to be expected in life time. Since this may be a daunting task - and a run away write loop may get there in 'no time', application of EEPROM technology in recurring processing is out.

  • Hi Drazzy and allObjects,
    eeprom.isBusy(); in this function i am using WREN that's why i commented it in write operation . As i am using

    AT25.prototype.writedata= function(add,data,num) 
    {
      
       eeprom.isBusy();
       eeprom.page_erase();
       console.log("\r\n page erased");
       eeprom.isBusy();
       eeprom.write(add,data); 
    };
    

    this one .In this first i am erasing the page and trying to write...

About

Avatar for Vishnu @Vishnu started