[RISOLTO]EEPROM CONTATORE.


salve,a tutti sono sempre quello nuovo,.

1)se salvo solo uno funziona  se voglio salvare entrabbi  due contatori mi danno sempre 0 
 

code: [select]

#include <eeprom.h>

#include <bridge.h>


int buttonpin = 7;   
char buttonstate = 0;
int contatore =0;
int addr_a = 0;
int buttonpin6 = 6;   
char buttonstate6 = 0;
int contatore6 = 0;
int addr_ b = 0;>>>>>>>>>era qui dove sbagliavo   (addr_b = 1;

void setup()
{
   bridge.begin();   
    delay(1000);
    bridge.put("contatore", string(addr_a)); 
    bridge.put("contatore6", string(add_b));
    contatore = eeprom.read (addr_a);
    contatore6 = eeprom.read(addr_b);
}

void loop() {
    buttonstate = digitalread(buttonpin);
    /* every 200ms: */
  if (buttonstate == low) { 
     contatore = contatore +1; eeprom.write(addr_a,contatore);
     delay(500);
     bridge.put("contatore", string(contatore));
     
     
  }
   bridge.put("contatore",string(contatore));
   
       buttonstate6 = digitalread(buttonpin6);
    /* every 200ms: */
  if (buttonstate6  == low) { 
     contatore6 = contatore6 +1; eeprom.write(addr_b,contatore6);
      delay(500); 
     bridge.put("contatore6", string(contatore6));
  }
 
     bridge.put("contatore6", string(contatore6));
}
   





la prima cosa da fare è salvare due contatori indirizzi diversi della eeprom, al momento li salvi entrambi 0, per cui l'ultimo che vai scrivere sovrascriverà il precedente.

oltre questo, se il tuo contatore è un int, devi usare eeprom.put() invece di eeprom.write(), visto che un int occupa più di un byte. di conseguenza, anche gli indirizzi dovranno essere sufficientemente distanti per permettere la scrittura del dato intero.


Arduino Forum > International > Italiano > Generale (Moderator: leo72) > [RISOLTO]EEPROM CONTATORE.


arduino

Comments