Reference.EEPROMWrite History

Hide minor edits - Show changes to markup

November 05, 2013, at 07:57 AM by Scott Fitzgerald -
Changed line 33 from:
  for (int i = 0; i < 512; i++)
to:
  for (int i = 0; i < 255; i++)
September 24, 2011, at 01:27 AM by Tom Igoe -
Changed lines 27-28 from:

[@

to:
Changed lines 40-41 from:

@]

to:
March 14, 2011, at 12:08 AM by David A. Mellis -
Changed lines 22-27 from:

The Atmega 168 datasheet says that EEPROM memory has a specified life of 100000 write/erase cycles, so there is a limit to how many times you can write information to that memory space. Keep this in mind for long-lived projects or fast-moving data.

The datasheet also specifies that a write cycle takes 3.3 ms to complete. Other EEPROM write and read requests will fail if executed in this time period. This delay appears to be built into the EEPROM library as a casual test shows each cycle taking 3.33 ms to execute.

Hence, you do not specifically need to add a delay to an EEPROM write, just be aware of the built-in time delay.

to:

Note

An EEPROM write takes 3.3 ms to complete. The EEPROM memory has a specified life of 100,000 write/erase cycles, so you may need to be careful about how often you write to it.

October 26, 2010, at 05:03 PM by David A. Mellis -
Changed lines 14-15 from:

address: the location to write to, from 0 to 511 (int)

to:

address: the location to write to, starting from 0 (int)

October 26, 2010, at 05:01 PM by David A. Mellis -
Changed lines 1-2 from:

EEPROM.write(address, value)

to:

EEPROM

write()

Added lines 9-11:

Syntax

EEPROM.write(address, value)

August 27, 2007, at 03:22 AM by Paul Badger -
Changed lines 19-20 from:

The datasheet also specifies that a write cycle takes 3.3 ms to complete. Other EEPROM write and read requests will fail if executed in this time period.

to:

The datasheet also specifies that a write cycle takes 3.3 ms to complete. Other EEPROM write and read requests will fail if executed in this time period. This delay appears to be built into the EEPROM library as a casual test shows each cycle taking 3.33 ms to execute.

Hence, you do not specifically need to add a delay to an EEPROM write, just be aware of the built-in time delay.

August 27, 2007, at 03:05 AM by Paul Badger -
Added lines 17-20:

The Atmega 168 datasheet says that EEPROM memory has a specified life of 100000 write/erase cycles, so there is a limit to how many times you can write information to that memory space. Keep this in mind for long-lived projects or fast-moving data.

The datasheet also specifies that a write cycle takes 3.3 ms to complete. Other EEPROM write and read requests will fail if executed in this time period.

March 04, 2007, at 06:20 PM by David A. Mellis -
Added lines 1-34:

EEPROM.write(address, value)

Description

Write a byte to the EEPROM.

Parameters

address: the location to write to, from 0 to 511 (int)

value: the value to write, from 0 to 255 (byte)

Returns

none

Example

#include <EEPROM.h>

void setup()
{
  for (int i = 0; i < 512; i++)
    EEPROM.write(i, i);
}

void loop()
{
}

See also

Share