arduino como guardar valores de pushbutton

#include <bounce.h> // biblioteca utilizada
// definição dos pinos de ligação
#define LED_PIN 11
#define AUMENTAR_PIN 8
#define DIMINUIR_PIN 7
byte brilho = 0; // valor do brilho do LED entre 0 e 255
#define DEBOUNCE_TIME 5 // tempo em ms
Bounce aumentar = Bounce(AUMENTAR_PIN, DEBOUNCE_TIME);
Bounce diminuir = Bounce(DIMINUIR_PIN, DEBOUNCE_TIME);
void setup() {
pinMode(LED_PIN, OUTPUT)
pinMode(AUMENTAR_PIN, INPUT_PULLUP);
pinMode(DIMINUIR_PIN, INPUT_PULLUP);

Serial.begin(9600);
Serial.println(“Tutorial Botao”);
}
void loop() {
analogWrite(LED_PIN, brilho);

if (aumentar.update() ) {
if (aumentar.read() == LOW ) {
aumentar.rebounce(250);

if (brilho < 255)
brilho ++;

Serial.print("Aumentar o brilho do LED: ");
Serial.println(brilho);
}
}
if (diminuir.update() ) {
if (diminuir.read()== LOW )
{
diminuir.rebounce(250);

if (brilho > 0)
brilho --;
Serial.print("Diminuir o brilho do LED: ");
Serial.println(brilho);
}
}
}

//eu quero que guarde os dados quando o arduino e desligado nao sei como fazer sou novo no assunto

define melhor o que entendes por "o arduino e desligado "...

Ola, Arduino, como qualquer outro computador que use memória volátil como ram, esquece tudo quando a sua alimentação e cortada, ou seja quando o mesmo e desligado (em um reset também tem o mesmo efeito). Em um computador (smartphone, tablet, etc) quando queremos guardar uma informação gravamos eles em um arquivo que fica armazenado em uma unidade de armazenamento em massa (hd, cartão sd, pendrive, etc). Então, para que o Arduino armazene uma informação de forma permanente e necessário gravar essa informação em algum tipo de memória que não perca sua informação quando a alimentação e interrompida. Existem alguns tipos de memória que podem ser usando para essa finalidade. NVRAM (Non Volatile Randon Access Memory), normalmente usa uma bateria para manter a memória. Por exemplo e usando para manter a configuração da BIOS em um computador pessoal (PC, MAC). FRAM (Ferroelectric Randon Access Memory). EEPROM (Electrically Erasable Programmable Read-Only Memory) e o tipo de memória mais utilizado quando se necessita armazenar alguma informação de forma semi-permanente.

Dessas a placa do Arduino possui somente a EEPROM, que pode ser manipulado usando a biblioteca eeprom.h. Mas, a EEPROM não suporta muitos ciclos de gravação (ou regravação), então, deve se evitar ao máximo gravar nela. Externamente, a mais facilmente acessível e a NVRAM, presente nos RTC (Real Time Clock) como o DS1307.

A EEPROM só deve ser usando para armazenar informações que serão atualizadas ocasionalmente.

Por Arduino neste texto entenda como sendo o Arduino uno e as variações que usem AVR similar ao ATmega328P.

pksato: Ola, Arduino, como qualquer outro computador que use memória volátil como ram, esquece tudo quando a sua alimentação e cortada, ou seja quando o mesmo e desligado (em um reset também tem o mesmo efeito). Em um computador (smartphone, tablet, etc) quando queremos guardar uma informação gravamos eles em um arquivo que fica armazenado em uma unidade de armazenamento em massa (hd, cartão sd, pendrive, etc). Então, para que o Arduino armazene uma informação de forma permanente e necessário gravar essa informação em algum tipo de memória que não perca sua informação quando a alimentação e interrompida. Existem alguns tipos de memória que podem ser usando para essa finalidade. NVRAM (Non Volatile Randon Access Memory), normalmente usa uma bateria para manter a memória. Por exemplo e usando para manter a configuração da BIOS em um computador pessoal (PC, MAC). FRAM (Ferroelectric Randon Access Memory). EEPROM (Electrically Erasable Programmable Read-Only Memory) e o tipo de memória mais utilizado quando se necessita armazenar alguma informação de forma semi-permanente.

Dessas a placa do Arduino possui somente a EEPROM, que pode ser manipulado usando a biblioteca eeprom.h. Mas, a EEPROM não suporta muitos ciclos de gravação (ou regravação), então, deve se evitar ao máximo gravar nela. Externamente, a mais facilmente acessível e a NVRAM, presente nos RTC (Real Time Clock) como o DS1307.

A EEPROM só deve ser usando para armazenar informações que serão atualizadas ocasionalmente.

Por Arduino neste texto entenda como sendo o Arduino uno e as variações que usem AVR similar ao ATmega328P.

Falta apenas ao Arduino detectar que foi desligado e guardar os dados na EEPROM sem energia para tal.