venerdì 30 novembre 2012

Incrementa

 # define TASTOQ   7
 # define LED1     8
 # define RELE     9
 int  ValueQ     = 0;
 long Tempo1     = 0;
 long Tempo2     = 50; 
 int  ValueCombQ =20;

 void setup() 
     { pinMode(TASTOQ,INPUT );
       pinMode(LED1,  OUTPUT);
       pinMode(RELE,  OUTPUT);  
       Serial.begin(9600);    }

 void loop() {
//********** TASTO Q  ***************** 
  int StatoTastoQ;             
  int StatoTastoQa = LOW;  
  int valoreTastoQ = digitalRead(TASTOQ);
//-------- ANTIRIMBALZO-----------
  if (valoreTastoQ != StatoTastoQa)
     {Tempo1 = millis();} 
  if ((millis() - Tempo1) > Tempo2)
      {StatoTastoQ = valoreTastoQ;}
             StatoTastoQa = valoreTastoQ;
             
             
//--------INIZIO ESECUZIONE ------------  

  if (valoreTastoQ == HIGH)
       {digitalWrite(LED1, HIGH);
        delay (75);
        digitalWrite(LED1, LOW);
        ValueQ = (ValueQ + 1);
        Serial.print("APRI ");  
        Serial.println(ValueQ);
        delay (350);   }
  
  if (ValueQ == ValueCombQ)
          { digitalWrite(RELE, HIGH);
            Serial.println(ValueQ);
            delay (350); }
  else    { delay (350);  } 
}



Pigiando il tasto il led si accende per una frazione di secondo ad indicare l'avvenuta pressione, il relè si ecciterà dopo aver premuto 20 volte il pulsante.

Nessun commento:

Posta un commento