O que é a função EEPROM.get()?

A função EEPROM.get() é um método baseado em templates da biblioteca do Arduino que permite ler de forma transparente quaisquer tipos de dados complexos ou múltiplos bytes armazenados de forma contínua na EEPROM.

Vantagens e Aplicações da Função EEPROM.get()

Comandos simples como EEPROM.read() limitam-se a carregar apenas um único byte por vez. Para ler variáveis com mais de 8 bits em projetos usando o Arduino Uno R3 SMD ou ESP32, o uso de EEPROM.get() é essencial:

  • Leitura de Tipos Próprios: Permite carregar diretamente tipos de dados maiores como inteiros (2 bytes), floats (4 bytes), variáveis double ou strings completas de forma direta.
  • Recuperação de Estruturas (Structs): Permite carregar estruturas de dados inteiras (contendo valores de vários sensores, senhas e configurações agrupadas) de uma só vez.
  • Sintaxe Eficiente: Requer o endereço inicial de leitura e o nome da variável de destino da informação (ex: EEPROM.get(address, custom_variable)).

A função calcula dinamicamente o número exato de bytes a ler baseando-se no tamanho em memória do tipo de variável informada.

Perguntas Frequentes (FAQ)

Posso carregar uma estrutura struct personalizada com a função EEPROM.get()?
Sim. Desde que a estrutura struct de dados tenha sido definida no código, você pode buscar todos os seus dados agrupados especificando apenas o endereço inicial de gravação da tabela.
A função EEPROM.get() atualiza o cursor de endereço de leitura de forma automática?
Não. O desenvolvedor deve calcular o tamanho da variável (usando o operador sizeof(variable)) e incrementar manualmente o endereço caso queira ler dados sequenciais subsequentes.
Voltar para o blog