Exemplo de como gravar na EEPROM uma variavel de 32 bytes

//**************************************************************************
// Flavio Fernandes
// 16/04/2022
// Exemplo de como gravar na EEPROM uma variavel de 32 bytes
//**************************************************************************
#include <EEPROM.h>

byte Var_32_Part_0, Var_32_Part_1, Var_32_Part_2, Var_32_Part_3, endereco = 0;
uint32_t var_32_bits = 3213254719, var_32_bits_out = 0;
void setup()
{

Serial.begin(115200);
// Truncamento da variavel de 32 para 8 bytes
Var_32_Part_3 = var_32_bits >> 24;
Var_32_Part_2 = var_32_bits >> 16;
Var_32_Part_1 = var_32_bits >> 8;
Var_32_Part_0 = var_32_bits;

EEPROM.write(endereco + 3, Var_32_Part_3);
EEPROM.write(endereco + 2, Var_32_Part_2);
EEPROM.write(endereco + 1, Var_32_Part_1);
EEPROM.write(endereco + 0, Var_32_Part_0);

Serial.print("Var_32_Part_3 → ");
Serial.println(Var_32_Part_3);
Serial.print("Var_32_Part_2 → ");
Serial.println(Var_32_Part_2);
Serial.print("Var_32_Part_1 → ");
Serial.println(Var_32_Part_1);
Serial.print("Var_32_Part_0 → ");
Serial.println(Var_32_Part_0);
Serial.print("Var_32 → ");
Serial.println(var_32_bits);
Serial.print("Var_32_OUT → ");
var_32_bits_out = (uint32_t)EEPROM.read(endereco + 0) |
((uint32_t)EEPROM.read(endereco + 1) << 8) |
((uint32_t)EEPROM.read(endereco + 2) << 16) |
((uint32_t)EEPROM.read(endereco + 3) << 24);

Serial.println(var_32_bits_out);

}

void loop()
{

}

Voce tem que dividir o valor dessa variavel para valores que possam ser decodificador em 1 byte. Vou dar um exemplo que eu fiz de 3 var float que guarda temperatura e decodifica em 2 bytes . transformando em variavel int e depois em byte
int temp_ajustada_int = temperatura_ajustada ;
int temp_ajustada_dec = (temperatura_ajustada-temp_ajustada_int)*10;
int temperatura_int = temperatura;
int temperatura_dec = (temperatura-temperatura_int)*10;
int temp_boiler_int = temperatura_boiler ;
int temp_boiler_dec = (temperatura_boiler-temp_boiler_int)*10;
byte temperatura_ajustada_int_send = temp_ajustada_int;
byte temperatura_ajustada_dec_send = temp_ajustada_dec;
byte temperatura_int_send = temperatura_int;
byte temperatura_dec_send = temperatura_dec ;
byte temperatura_boiler_int_send = temp_boiler_int;
byte temperatura_boiler_dec_send = temp_boiler_dec;

byte msg [7] = {temperatura_ajustada_int_send,temperatura_ajustada_dec_send,temperatura_int_send,temperatura_dec_send,temperatura_boiler_int_send,temperatura_boiler_dec_send,ligado};