* Improved determineNoWrite, now works with larger EEPROMS. tested with AT24C02, AT24C23 and AT24C256
* Added loop exit, updated license and changelog
---------
Co-authored-by: Roeland Kluit <roeland@kluit.net>
- add setDeviceSize()
- add setPageSize()
- use setDeviceSize() in constructor to force power of 2.
- update unit test
- update GitHub actions
- update license
- update readme.md
- minor edits
Added test cases for I2C_eeprom initialization to verify that the page size is chosen correctly and that it sets the address size properly.
Fixed a bug with the larger eeprom sizes having incorrect intervals.
Added unit tests for I2C_eeprom_cyclic_store and fixed a bug in the format() method and a possible bug with the "empty" marker literal being expressed as ~0UL (which isn't necessarily the same size as a uint32_t).
* 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.
I2C_eeprom
* Added page sizes for larger memory sizes (still deriving from the ATxxCxxx datasheets)
I2C_eeprom_cyclic_store
* Add the cyclic store implementation.
* Add an example for cyclic use of EEPROM.
* Update keywords.txt for syntax highlighting the new class and it's members.
* Changed signature of begin() to match page size data type.
* Add getMetrics() to have an indication about lifetime