A library to read and write all 25* serial SPI eeprom devices from Microchip (from 25xx010 to 25xx1024).
Dependents: RobotRic VITI2_ihm_2
Revision 1:c29a67c7034d, committed 2011-02-03
- Comitter:
- hlipka
- Date:
- Thu Feb 03 20:31:08 2011 +0000
- Parent:
- 0:238ca4fdef8c
- Child:
- 2:3a3404dbd3eb
- Commit message:
- bugfix: clearPage did hang with 25LC1024
Changed in this revision
Ser25lcxxx.cpp | Show annotated file Show diff for this revision Revisions of this file |
--- a/Ser25lcxxx.cpp Wed Jan 26 22:14:41 2011 +0000 +++ b/Ser25lcxxx.cpp Thu Feb 03 20:31:08 2011 +0000 @@ -115,7 +115,7 @@ bool b=writePage(_pageSize*pageNum,_pageSize,s); delete s; return b; - } else { + } else if (_size<131072) { // everything up to 512k _enable->write(0); wait_us(1); _spi->write(0x42); @@ -125,7 +125,20 @@ _enable->write(1); waitForWrite(); + } else { // 25xx1024, needs 3 byte address + _enable->write(0); + wait_us(1); + _spi->write(0x42); + _spi->write((_pageSize*pageNum)>>16); + _spi->write(HIGH(_pageSize*pageNum)); + _spi->write(LOW(_pageSize*pageNum)); + wait_us(1); + _enable->write(1); + + waitForWrite(); } + + return true; }