- Библиотеки
- Операторы
- Sketch
- Управляющие операторы
- Синтаксис
- Арифметические операторы
- Операторы сравнения
- Логические операторы
- Указатели доступа
- Битовые операторы
- Составные операторы
- Данные
- Типы данных
- Преобразование типов данных
- Область видимости переменных и квалификаторы
- Утилиты
- Функции
- Цифровой ввод/вывод
- Аналоговый вход/выход
- Расширенный ввод/вывод
- Время
- Математические функции
- Тригонометрические функции
- Символы
- Случайные числа
- Биты и байты
- Внешние Прерывания
- Прерывания
- Функции передачи данных
- Функции
- get()
get()
Описание
Считывает любой тип данных или объект из EEPROM.
Синтаксис
EEPROM.get(address, data)
Параметры
address: адрес чтения, начиная с 0 0 (int)
data: данные для чтения.
Возвращаемые значения
Ссылка на передаваемые данные
Пример
#include <EEPROM.h>
struct MyObject{
float field1;
byte field2;
char name[10];
};
void setup(){
float f = 0.00f; //Переменная для хранения данных от EEPROM.
int eeAddress = 0; //Адрес EEPROM для начала чтения
Serial.begin( 9600 );
while (!Serial) {
; // Ожидание подключения последовательного порта. Требуется только для Leonardo
}
Serial.print( "Чтение float с EEPROM: " );
//Получить float данные с EEPROM с позиции 'eeAddress'
EEPROM.get( eeAddress, f );
Serial.println( f, 3 ); //Может написать 'ovf, nan' если данные внутри EEPROM не являются допустимым значением float.
// get() может также использоваться с пользовательскими операторами.
eeAddress = sizeof(float); //Переместить адрес в следующий байт после float 'f'.
MyObject customVar; //Переменная для хранения пользовательского объекта чтения из EEPROM.
EEPROM.get( eeAddress, customVar );
Serial.println( "Прочитайте пользовательский объект из EEPROM: " );
Serial.println( customVar.field1 );
Serial.println( customVar.field2 );
Serial.println( customVar.name );
}
void loop(){ /* Пустой цикл */ }