Skip to content

Commit cab5790

Browse files
committed
2 parents 7027958 + cc566b8 commit cab5790

File tree

3 files changed

+60
-31
lines changed

3 files changed

+60
-31
lines changed

examples/Example1_BasicReadWrite/Example1_BasicReadWrite.ino

Lines changed: 32 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
By: Nathan Seidle
44
SparkFun Electronics
55
Date: December 11th, 2019
6-
License: This code is public domain but you buy me a beer if you use this
6+
License: This code is public domain but you buy me a beer if you use this
77
and we meet someday (Beerware license).
88
Feel like supporting our work? Buy a board from SparkFun!
99
https://www.sparkfun.com/products/14764
@@ -31,6 +31,35 @@ void setup()
3131

3232
Wire.begin();
3333

34+
// 24xx00 - 128 bit / 16 bytes - 1 address byte, 1 byte page
35+
// 24xx01 - 1024 bit / 128 bytes - 1 address byte, 8 byte page
36+
// 24xx02 - 2048 bit / 256 bytes - 1 address byte, 8 byte page
37+
// 24xx04 - 4096 bit / 512 bytes - 1 address byte, 16 byte page
38+
// 24xx08 - 8192 bit / 1024 bytes - 1 address byte, 16 byte page
39+
// 24xx16 - 16384 bit / 2048 bytes - 1 address byte, 16 byte page
40+
// 24xx32 - 32768 bit / 4096 bytes - 2 address bytes, 32 byte page
41+
// 24xx64 - 65536 bit / 8192 bytes - 2 address bytes, 32 byte page
42+
// 24xx128 - 131072 bit / 16384 bytes - 2 address bytes, 64 byte page
43+
// 24xx256 - 262144 bit / 32768 bytes - 2 address bytes, 64 byte page
44+
// 24xx512 - 524288 bit / 65536 bytes - 2 address bytes, 128 byte page
45+
// 24xx1024 - 1024000 bit / 128000 byte - 2 address byte, 128 byte page
46+
// 24xxM02 - 2097152 bit / 262144 byte - 2 address bytes, 256 byte page
47+
48+
// 24xx16 - 16384 bit / 2048 bytes - 1 address byte, 16 byte page size
49+
//myMem.setAddressBytes(1);
50+
//myMem.setPageSizeBytes(16);
51+
//myMem.setMemorySizeBytes(2048);
52+
53+
// 24xx04 - 4096 bit / 512 bytes - 1 address byte, 16 byte page
54+
//myMem.setAddressBytes(1);
55+
//myMem.setPageSizeBytes(16);
56+
//myMem.setMemorySizeBytes(2048);
57+
58+
// 24xx02 - 2048 bit / 256 bytes - 1 address byte, 8 byte page
59+
myMem.setAddressBytes(1);
60+
myMem.setPageSizeBytes(8);
61+
myMem.setMemorySizeBytes(256);
62+
3463
if (myMem.begin() == false)
3564
{
3665
Serial.println("No memory detected. Freezing.");
@@ -73,9 +102,9 @@ void setup()
73102
Serial.print("I read: ");
74103
Serial.println(myRead4);
75104
Serial.print("Next available EEPROM location: ");
76-
Serial.println(nextEEPROMLocation);
105+
Serial.println(nextEEPROMLocation);
77106
}
78107

79108
void loop()
80109
{
81-
}
110+
}

examples/Example2_DetectSettings/Example2_DetectSettings.ino

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -4,24 +4,24 @@
44
Created: June 23, 2023
55
License: Lemonadeware. Buy me a lemonade (or other) someday.
66
7-
This sketch demonstrates how to detect memory size, address bytes,
7+
This sketch demonstrates how to detect memory size, address bytes,
88
page size, and write time. You can also pre-assign these specs to avoid
99
the start up delay caused by the detection routines.
1010
1111
Known/compatible memory types (basically all I2C EEPROMs):
12-
24XX00 - 128 bit / 16 bytes - 1 address byte, 1 byte page size
13-
24XX01 - 1024 bit / 128 bytes - 1 address byte, 8 byte page size
14-
24XX02 - 2048 bit / 256 bytes - 1 address byte,
15-
24XX04 - 4096 bit / 512 bytes - 1 address byte, 16 byte page size
16-
24XX08 - 8192 bit / 1024 bytes - 1 address byte,
17-
24XX16 - 16384 bit / 2048 bytes - 1 address byte, 16 byte page size
18-
24XX32 - 32768 bit / 4096 bytes - 2 address bytes, 32 byte page size
19-
24XX64 - 65536 bit / 8192 bytes - 2 address bytes, 32 byte page size
20-
24XX128 - 131072 bit / 16384 bytes - 2 address bytes,
21-
24XX256 - 262144 bit / 32768 bytes - 2 address bytes,
22-
24XX512 - 524288 bit / 65536 bytes - 2 address bytes, 128 byte page size
23-
24XX1024 - 1024000 bit / 128000 byte - 2 address bytes, 128 byte page size
24-
24XXM02 - 2097152 bit / 262144 byte - 2 address bytes, 256 byte page size
12+
24xx00 - 128 bit / 16 bytes - 1 address byte, 1 byte page size
13+
24xx01 - 1024 bit / 128 bytes - 1 address byte, 8 byte page size
14+
24xx02 - 2048 bit / 256 bytes - 1 address byte, 8 byte page size
15+
24xx04 - 4096 bit / 512 bytes - 1 address byte, 16 byte page size
16+
24xx08 - 8192 bit / 1024 bytes - 1 address byte, 16 byte page size
17+
24xx16 - 16384 bit / 2048 bytes - 1 address byte, 16 byte page size
18+
24xx32 - 32768 bit / 4096 bytes - 2 address bytes, 32 byte page size
19+
24xx64 - 65536 bit / 8192 bytes - 2 address bytes, 32 byte page size
20+
24xx128 - 131072 bit / 16384 bytes - 2 address bytes, 64 byte page size
21+
24xx256 - 262144 bit / 32768 bytes - 2 address bytes, 64 byte page size
22+
24xx512 - 524288 bit / 65536 bytes - 2 address bytes, 128 byte page size
23+
24xx1024 - 1024000 bit / 128000 byte - 2 address bytes, 128 byte page size
24+
24xxM02 - 2097152 bit / 262144 byte - 2 address bytes, 256 byte page size
2525
*/
2626

2727
#include <Wire.h>
@@ -58,7 +58,7 @@ void setup()
5858
//Page size detection is limited by the platform. For example, the Uno has a I2C buffer
5959
//that is 32 bytes. Therefor, page sizes above 16 bytes cannot be detected or used. For maximum
6060
//write speeds to an EEPROM, use a platform with a large I2C buffer (ie ESP32 is 128 bytes)
61-
//and an EEPROM with a large page size (24XX512 is 128 bytes).
61+
//and an EEPROM with a large page size (24XX512 is 128 bytes).
6262
Serial.print("Detected pageSizeBytes: ");
6363
Serial.println(myMem.detectPageSizeBytes());
6464

examples/Example8_AutoDetectionTest/Example8_AutoDetectionTest.ino

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -9,19 +9,19 @@
99
the start up delay caused by the detection routines.
1010
1111
Known/compatible memory types (basically all I2C EEPROMs):
12-
24XX00 - 128 bit / 16 bytes - 1 address byte, 1 byte page size
13-
24XX01 - 1024 bit / 128 bytes - 1 address byte, 8 byte page size
14-
24XX02 - 2048 bit / 256 bytes - 1 address byte, 8 byte page size
15-
24XX04 - 4096 bit / 512 bytes - 1 address byte, 16 byte page size
16-
24XX08 - 8192 bit / 1024 bytes - 1 address byte, 16 byte page size
17-
24XX16 - 16384 bit / 2048 bytes - 1 address byte, 16 byte page size
18-
24XX32 - 32768 bit / 4096 bytes - 2 address bytes, 32 byte page size
19-
24XX64 - 65536 bit / 8192 bytes - 2 address bytes, 32 byte page size
20-
24XX128 - 131072 bit / 16384 bytes - 2 address bytes, 64 byte page size
21-
24XX256 - 262144 bit / 32768 bytes - 2 address bytes, 64 byte page size
22-
24XX512 - 524288 bit / 65536 bytes - 2 address bytes, 128 byte page size
23-
24XX1024 - 1024000 bit / 128000 byte - 2 address bytes, 128 byte page size
24-
24XXM02 - 2097152 bit / 262144 byte - 2 address bytes, 256 byte page size
12+
24xx00 - 128 bit / 16 bytes - 1 address byte, 1 byte page size
13+
24xx01 - 1024 bit / 128 bytes - 1 address byte, 8 byte page size
14+
24xx02 - 2048 bit / 256 bytes - 1 address byte, 8 byte page size
15+
24xx04 - 4096 bit / 512 bytes - 1 address byte, 16 byte page size
16+
24xx08 - 8192 bit / 1024 bytes - 1 address byte, 16 byte page size
17+
24xx16 - 16384 bit / 2048 bytes - 1 address byte, 16 byte page size
18+
24xx32 - 32768 bit / 4096 bytes - 2 address bytes, 32 byte page size
19+
24xx64 - 65536 bit / 8192 bytes - 2 address bytes, 32 byte page size
20+
24xx128 - 131072 bit / 16384 bytes - 2 address bytes, 64 byte page size
21+
24xx256 - 262144 bit / 32768 bytes - 2 address bytes, 64 byte page size
22+
24xx512 - 524288 bit / 65536 bytes - 2 address bytes, 128 byte page size
23+
24xx1024 - 1024000 bit / 128000 byte - 2 address bytes, 128 byte page size
24+
24xxM02 - 2097152 bit / 262144 byte - 2 address bytes, 256 byte page size
2525
*/
2626

2727
#include <Wire.h>

0 commit comments

Comments
 (0)