diff options
author | Martino Facchin <facchinm@users.noreply.github.com> | 2015-03-24 09:24:00 +0000 |
---|---|---|
committer | Martino Facchin <facchinm@users.noreply.github.com> | 2015-03-24 09:24:00 +0000 |
commit | f2debfa2555fe26f72832378d3fd7e78fe881e0c (patch) | |
tree | 56df9b9963f902cd9565eb4708cf3ff2dff22588 /libraries/EEPROM/examples/eeprom_put | |
parent | 8fcf5c94067a052c2c7ead3c2ebcd1381ed37888 (diff) | |
parent | d8656b8c5249c9d06cd8ed96b2061759ab69b5bf (diff) |
Merge pull request #2812 from facchinm/test_pr2794
EEPROM library V2
Diffstat (limited to 'libraries/EEPROM/examples/eeprom_put')
-rw-r--r-- | libraries/EEPROM/examples/eeprom_put/eeprom_put.ino | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/libraries/EEPROM/examples/eeprom_put/eeprom_put.ino b/libraries/EEPROM/examples/eeprom_put/eeprom_put.ino new file mode 100644 index 0000000..186cf95 --- /dev/null +++ b/libraries/EEPROM/examples/eeprom_put/eeprom_put.ino @@ -0,0 +1,56 @@ +/*** + eeprom_put example. + + This shows how to use the EEPROM.put() method. + Also, this sketch will pre-set the EEPROM data for the + example sketch eeprom_get. + + Note, unlike the single byte version EEPROM.write(), + the put method will use update semantics. As in a byte + will only be written to the EEPROM if the data is actually + different. + + Written by Christopher Andrews 2015 + Released under MIT licence. +***/ + +#include <EEPROM.h> + +struct MyObject{ + float field1; + byte field2; + char name[10]; +}; + +void setup(){ + + Serial.begin(9600); + while (!Serial) { + ; // wait for serial port to connect. Needed for Leonardo only + } + + float f = 123.456f; //Variable to store in EEPROM. + int eeAddress = 0; //Location we want the data to be put. + + + //One simple call, with the address first and the object second. + EEPROM.put( eeAddress, f ); + + Serial.println("Written float data type!"); + + /** Put is designed for use with custom structures also. **/ + + //Data to store. + MyObject customVar = { + 3.14f, + 65, + "Working!" + }; + + eeAddress += sizeof(float); //Move address to the next byte after float 'f'. + + EEPROM.put( eeAddress, customVar ); + Serial.print( "Written custom data type! \n\nView the example sketch eeprom_get to see how you can retrieve the values!" ); +} + +void loop(){ /* Empty loop */ }
\ No newline at end of file |