diff options
Diffstat (limited to 'libraries/EEPROM/examples')
3 files changed, 100 insertions, 0 deletions
| diff --git a/libraries/EEPROM/examples/eeprom_clear/eeprom_clear.pde b/libraries/EEPROM/examples/eeprom_clear/eeprom_clear.pde new file mode 100644 index 0000000..d1e29bd --- /dev/null +++ b/libraries/EEPROM/examples/eeprom_clear/eeprom_clear.pde @@ -0,0 +1,23 @@ +/* + * EEPROM Clear + * + * Sets all of the bytes of the EEPROM to 0. + * This example code is in the public domain. + + */ + +#include <EEPROM.h> + +void setup() +{ +  // write a 0 to all 512 bytes of the EEPROM +  for (int i = 0; i < 512; i++) +    EEPROM.write(i, 0); +     +  // turn the LED on when we're done +  digitalWrite(13, HIGH); +} + +void loop() +{ +} diff --git a/libraries/EEPROM/examples/eeprom_read/eeprom_read.pde b/libraries/EEPROM/examples/eeprom_read/eeprom_read.pde new file mode 100644 index 0000000..88e3488 --- /dev/null +++ b/libraries/EEPROM/examples/eeprom_read/eeprom_read.pde @@ -0,0 +1,39 @@ +/* + * EEPROM Read + * + * Reads the value of each byte of the EEPROM and prints it  + * to the computer. + * This example code is in the public domain. + */ + +#include <EEPROM.h> + +// start reading from the first byte (address 0) of the EEPROM +int address = 0; +byte value; + +void setup() +{ +  Serial.begin(9600); +} + +void loop() +{ +  // read a byte from the current address of the EEPROM +  value = EEPROM.read(address); +   +  Serial.print(address); +  Serial.print("\t"); +  Serial.print(value, DEC); +  Serial.println(); +   +  // advance to the next address of the EEPROM +  address = address + 1; +   +  // there are only 512 bytes of EEPROM, from 0 to 511, so if we're +  // on address 512, wrap around to address 0 +  if (address == 512) +    address = 0; +     +  delay(500); +} diff --git a/libraries/EEPROM/examples/eeprom_write/eeprom_write.pde b/libraries/EEPROM/examples/eeprom_write/eeprom_write.pde new file mode 100644 index 0000000..ae7c57e --- /dev/null +++ b/libraries/EEPROM/examples/eeprom_write/eeprom_write.pde @@ -0,0 +1,38 @@ +/* + * EEPROM Write + * + * Stores values read from analog input 0 into the EEPROM. + * These values will stay in the EEPROM when the board is + * turned off and may be retrieved later by another sketch. + */ + +#include <EEPROM.h> + +// the current address in the EEPROM (i.e. which byte +// we're going to write to next) +int addr = 0; + +void setup() +{ +} + +void loop() +{ +  // need to divide by 4 because analog inputs range from +  // 0 to 1023 and each byte of the EEPROM can only hold a +  // value from 0 to 255. +  int val = analogRead(0) / 4; +   +  // write the value to the appropriate byte of the EEPROM. +  // these values will remain there when the board is +  // turned off. +  EEPROM.write(addr, val); +   +  // advance to the next address.  there are 512 bytes in  +  // the EEPROM, so go back to 0 when we hit 512. +  addr = addr + 1; +  if (addr == 512) +    addr = 0; +   +  delay(100); +} | 
