хранить несколько типов с плавающей запятой в EEPROM

У меня есть 7 переменных с плавающей запятой.

плавающая температура, дифференциал, калибровка,hta,lta,hha,lha;

Я хочу сохранить их все в памяти EEPROM, как мне рассчитать адреса, учитывая, что там тип float.

Спасибо!

, 👍0


2 ответа


1

С функцией sizeof:

int nrOfBytesOfTemperature = sizeof(temperature);

Вы также можете использовать тип напрямую:

int nrOfBytesOfFloat = sizeof(float);
,

2

создать структуру и сохранить ее

#include <EEPROM.h>

const int DATA_ADDR = 0;

struct MyData {
  float temperature, differential, calibration,hta,lta,hha,lha;
};

MyData data;

void setup() {
  data.temperature = 1.2;

  EEPROM.put(DATA_ADDR, data);

  EEPROM.get(DATA_ADDR, data);
}

void loop() {

}
,