mirror of
https://github.com/RobTillaart/I2C_EEPROM.git
synced 2026-07-27 20:06:07 +00:00
* Update I2C_eeprom.cpp Added page sizes for larger memory sizes (still deriving from the ATxxCxxx datasheets) * Update I2C_eeprom.cpp * Update I2C_eeprom.cpp * Added the cyclic store implementation. * Added an example * Removed redundant #ifdef in include file. Added an incude directive for base "I2c_eeprom.h" file to get the Arduino IDE of the Github workflow to compile the file properly. Added entries to keywords.txt for syntax highlighting the new class and it's members. * Removed debug code that shouldn't have been left in there. * Removed reduntant member and changed the type of the _pageSize to 8-bits. * Changed signature of begin() to match page size data type. * Made the initialization propagate read failures. Added method to get metrics. Fixed bugs in binary search and wrapping of slot index. Tidied up comments. * Added the getMetrics() method to keywords.txt for highlighting * Changed the way getMetrics() works when eeprom is empty. * Titantompa/readme (#7) * Added readme for the cyclic store * Added link from main readme to cyclic store readme.
1.2 KiB
1.2 KiB
I2C_EEPROM
Arduino Library for external I2C EEPROM - 24LC256, 24LC64
Description
Library to access external I2C EEPROM.
The interface is pretty straightforward
- begin() constructor
- begin(sda, scl) constructor for ESP32
- writeByte(address, value) write a single byte
- writeBlock(address, buffer, length)
- setBlock(address, value, length) e.g. use to clear I2C EEPROM
- readByte(address) - read a single byte from a given address
- readBlock(address, buffer, length)
- updateByte(address, value) write a single byte, but only if changed.
- determineSize()
The I2C_eeprom_cyclic_store interface is documented here
Limitation
The library does not offer multiple EEPROMS as one continuous storage device.
Operational
See examples