diff options
Diffstat (limited to 'libraries/EEPROM/examples/eeprom_get')
| -rw-r--r-- | libraries/EEPROM/examples/eeprom_get/eeprom_get.ino | 63 | 
1 files changed, 63 insertions, 0 deletions
diff --git a/libraries/EEPROM/examples/eeprom_get/eeprom_get.ino b/libraries/EEPROM/examples/eeprom_get/eeprom_get.ino new file mode 100644 index 0000000..58475fd --- /dev/null +++ b/libraries/EEPROM/examples/eeprom_get/eeprom_get.ino @@ -0,0 +1,63 @@ +/*** +    eeprom_get example. +  +    This shows how to use the EEPROM.get() method. +     +    To pre-set the EEPROM data, run the example sketch eeprom_put. +    This sketch will run without it, however, the values shown  +    will be shown from what ever is already on the EEPROM. +     +    This may cause the serial object to print out a large string +    of garbage if there is no null character inside one of the strings +    loaded. +     +    Written by Christopher Andrews 2015 +    Released under MIT licence.       +***/ + +#include <EEPROM.h> + +void setup(){ +   +  float f = 0.00f;   //Variable to store data read from EEPROM. +  int eeAddress = 0; //Location of the IP address inside the class. +   +  Serial.begin( 9600 ); +  Serial.print( "Read float from EEPROM: " ); +   +  //Get the float data from the EEPROM at position 'eeAddress' +  EEPROM.get( eeAddress, f ); +  Serial.println( f, 3 );  //This may print 'ovf, nan' if the data inside the EEPROM is not a valid float. +   +  /*** +    As get also returns a reference to 'f', you can use it inline. +    E.g: Serial.print( EEPROM.get( eeAddress, f ) ); +  ***/ +   +  /***  +    Get can be used with custom structures too.  +    I have separated this into an extra function. +  ***/ +   +  secondTest(); //Run the next test. +} + +struct MyObject{ +  float field1; +  byte field2; +  char name[10]; +}; + +void secondTest(){ +  int eeAddress = sizeof(float); //Move address to the next byte after float 'f'. + +  MyObject customVar; //Variable to store custom object read from EEPROM. +  EEPROM.get( eeAddress, customVar ); +   +  Serial.println( "Read custom object from EEPROM: " ); +  Serial.println( customVar.field1 ); +  Serial.println( customVar.field2 ); +  Serial.println( customVar.name ); +} + +void loop(){ /* Empty loop */ }
\ No newline at end of file  | 
