Запишет в EEPROM данные любого типа. В параметрах передается адрес EEPROM и объект, содержащий записываемые данные. Функция возвратит указатель на данные записываемого объекта. Синтаксис:
EEPROM.put(address, data)
Примечание: функция put использует EEPROM.update() для выполнения записи, поэтому она не перезаписывает значение, если оно не поменялось.
Пример использования:
#include < EEPROM.h>
struct MyObject
{
float field1;
byte field2;
char name[10];
};
void setup()
{
Serial.begin(9600);
while (!Serial)
{
; // ожидание соединения с последовательным портом. Это нужно
// только для плат со встроенным портом USB.
}
float f = 123.456f; // Переменная для сохранения в EEPROM.
int eeAddress = 0; // Адрес ячейки, куда мы хотим сохранить данные.
EEPROM.put(eeAddress, f);
Serial.println("Written float data type!");
/** Функция put была разработана так, чтобы можно было сохранять
и пользовательские структуры. **/
// Данные пользователя для сохранения:
MyObject customVar =
{
3.14f,
65,
"Working!"
};
eeAddress += sizeof(float); // перемещение адреса за следующий байт
// после float 'f'
EEPROM.put(eeAddress, customVar);
Serial.print("Written custom data type!\n");
Serial.print("View the example sketch eeprom_get\n")
Serial.print(" to see how you can retrieve the values!");
}
void loop(){ /* пустой цикл */ }