"residuati bellici"

alla fine ho assemblato questo scketc lo metto qui se a qualcuno puo servire

basta caricarlo aprire il seria monitor e mettere il codice 12345 pochi secondi mette a zero tutte le memorie e da anche il messaggio di ok per operazione avvenuta
ho verificato e funziona correttamente sull'arduino uno

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//                   USARE IN QUESTO MODO:  CARICARE QUESTO  SKETCH 
//                   APRIRE IL MONITOR SERIALE ASSICURARSI CHE SIA IMPOSTATO A 9600baud  
//                   IMMETTERE IL CODICE 12345  NELLA RIGA DI COMANDO, PREMERE INVIO
//                   ATTENDERE QUALCHE SECONDO
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//                  QUESTO PROGRAMMA SERVE PER METTERE TUTTE LE EEPROM DELL'ARDUINO UNO  A "ZERO"
//                  LE MEMORIE EEPROM POTREBBERO AVERE "DATI" MEMORIZZATI IN PRECEDENZA
//                  CARICARE UN NUOVO SKETCH NON PULISCE AUTOMATICAMENTE LA EEPPROM 
//
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////





















/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
long vet[9] = {
  -2, -2, -2, -2, -2, -2, -2, -2, -2 };  //numero arbitrario, usato per vedere se è stato inserito un numero o  tre cifre, 
//il -2 non centra niente con la dimensione dell'array)
//non ho usato -1 perchè significa che non ci sono dati da leggere (secondo la serial available) quindi si poteva fare confusione
long cont = 0;
long x = 0;
#include <EEPROM.h>
byte ciliegia=1;
byte mela=1;
byte pera=1;
int numem=0;
void setup()
{
  // start serial port at 9600 bps:
  Serial.begin(9600);



}

void loop()
{
  while (Serial.available() > 0)
  {
    vet[cont] = Serial.read()-48; 
    cont++;
    delay(60); 
   
  }

  if (vet[0] < -2 || vet[1] < -2 || vet[2] < -2 || vet[3] < -2 || vet[4] < -2 || vet[5] < -2 || vet[6] < -2 || vet[7] < -2 || vet[8] < -2) 
    Serial.println(" ATTENZIONE DEVI  INSERIRE SOLO IL NUMERO 12345 ");

  if (vet[0] > 9 || vet[1] > 9 || vet[2] > 9 || vet[3] > 9 || vet[4] > 9 || vet[5] > 9 || vet[6] > 9 || vet[7] > 9 || vet[8] > 9) 
    Serial.println(" ATTENZIONE DEVI  INSERIRE SOLO IL NUMERO 12345 ");



  if(cont > 0)
  {
    cont = 0;


    if (vet[8] == -2 && vet[7] == -2 && vet[6] == -2 &&  vet[5] ==  -2  && vet[4] ==  -2  && vet[3] ==  -2  && vet[2] ==  -2  && vet[1] ==  -2 ) 
   
    {                                                                         
        x = vet[0];                                                           
    }
    else

        if (vet[8] == -2 && vet[7] == -2 && vet[6] == -2 && vet[5] ==  -2  && vet[4] ==  -2  && vet[3] ==  -2  && vet[2] ==  -2 ) //  
      {
        x = (vet[0]* 10 +   vet[1]    );
      }
      else
        if  (vet[8] == -2 && vet[7] == -2 && vet[6] == -2 &&  vet[5] ==  -2  && vet[4] ==  -2  && vet[3] ==  -2 ) //
        {
          x = (vet[0] * 100 + vet[1]* 10+ vet[2]);
        } 
        else
          if  (vet[8] == -2 && vet[7] == -2 && vet[6] == -2 && vet[5] ==  -2  && vet[4] ==  -2  )
          {
            x = (vet[0] * 1000 + vet[1] * 100 + vet[2]* 10 + vet[3]);  
          } 
          else
            if  (vet[8] == -2 && vet[7] == -2 && vet[6] == -2 && vet[5] ==  -2   )
            {
              x = (vet[0] * 10000 + vet[1] * 1000 + vet[2]* 100 + vet[3]* 10 + vet[4]);  

            } 
            else
              if  (vet[8] == -2 && vet[7] == -2 && vet[6] == -2 )
              {
                x = (vet[0] * 100000 + vet[1] * 10000 + vet[2]* 1000 + vet[3]* 100 + vet[4]* 10 + vet[5]);  

              } 
              else 

                if  (vet[8] == -2 && vet[7] == -2 )
              {
                x = (vet[0] * 1000000 + vet[1] * 100000 + vet[2]* 10000 + vet[3]* 1000 + vet[4]* 100 + vet[5]* 10+ vet[6]);  

              } 
              else  

                if  (vet[8] == -2 )
              {
                x = (vet[0] * 10000000 + vet[1] * 1000000 + vet[2]* 100000 + vet[3]* 10000 + vet[4]* 1000 + vet[5]* 100 + vet[6]* 10+ vet[6]);  

              } 
              else 



                x = (vet[0] * 100000000 + vet[1] * 10000000 + vet[2]* 1000000 + vet[3]* 100000 + vet[4]* 10000 + vet[5]* 1000 + vet[6]* 100 + vet[7] * 10 + vet[8]); 


    if (vet[0] < -2 || vet[1] < -2 || vet[2] < -2 || vet[3] < -2 || vet[4] < -2 || vet[5] < -2 || vet[6] < -2 || vet[7] < -2 || vet[8] < -2 ) x = 0;
    if (vet[0] > 9 || vet[1] > 9 || vet[2] > 9 || vet[3] > 9 || vet[4] > 9 || vet[5] > 9 || vet[6] > 9 || vet[7] > 9 || vet[8] > 9)  x = 0;

    if (x == -2 || x== -1) x=0;


    if (vet[0] >= -2 && vet[1]  >= -2 &&  vet[2]  >= -2 &&  vet[3] >= -2 && vet[4] >= -2 && vet[5] >= -2 && vet[6] >= -2 && vet[7] >= -2 && vet[8] >= -2 &&
      vet[0] <= 9 && vet[1] <= 9 &&  vet[2] <= 9 &&  vet[3] <= 9 &&  vet[4] <= 9 &&  vet[5] <= 9 &&  vet[6] <= 9 &&  vet[7] <= 9 &&  vet[8] <= 9 ) 
      Serial.println(" NUMERO INSERITO  "),   Serial.println(x);

    if (x > 12345 ) Serial.println(" INSERISCI 12345  E  ATTENDI ")  ;
    if (x < 12345 ) Serial.println(" INSERISCI 12345  E  ATTENDI ")  ;

    vet[0] = -2;  
    vet[1] = -2;
    vet[2] = -2;
    vet[3] = -2;
    vet[4] = -2; 
    vet[5] = -2; 
    vet[6] = -2; 
    vet[7] = -2;
    vet[8] = -2;       
  }
  
  
    if ( x==12345  && ciliegia ==1)  EEPROM.write(1023, 3 ),ciliegia =0;

 
  if ( mela==1 && x==12345 && EEPROM.read (1023) == 3)   Serial.println("ATTENDI QUALCHE SECONDO"), mela=0;

  if ( pera==1 && x==12345 )  EEPROM.write(numem, 0 ); 
  if ( pera==1 && x==12345 )  numem ++ ;
  if (numem>1022 && pera==1) Serial.println(" "); 
  if (numem>1022 && pera==1) Serial.println(" OK MEMORIA RIPULITA"),pera=0;


 }