CONTATORE CHIUSURA CONTATTO E VISUALIZZAZIONE SU DISPLAY

ciao a tutti... dovrei realizzare un contatore di chiusure di un contatto e visualizzare il conteggio su un dislay lcd... qualcuno ha un codice da cui prendere qualche spunto.
in pratica quando un pin di arduino cambia stato deve incrementare la numerazione sul display...

grazie.

Qunati pin vuoi controllare e quanto é la frequenza e durata della chiusura?
Ciao Uwe

studiati questo.
Invece del Serial.print, farai un Lcd.print

const int contatto = 2 ;

int statocontatto ;
int last_statocontatto ;
unsigned long contatoreimpulsi = 0; 


void setup(){
    Serial.begin(9600);
     pinMode(contatto, INPUT_PULLUP); // Attiva il Pullup sul pin scelto
  }
  
  void loop() {
    
statocontatto = digitalRead(contatto); // Leggi lo stato del contatto sul pin
  if (statocontatto!= last_statocontatto) { // confronta se diverso dall'ultima verifica
    if (statocontatto== LOW) { // il contatto e' stato messo a massa
      contatoreimpulsi++; // incrementa il conteggio 
         Serial.print("numero di impulsi:  ");
      Serial.println(contatoreimpulsi);
    } 
      }
  last_statocontatto = statocontatto ; // 
  
  delay(30); // Ritardo se non si fa' altro.
  // qui si mette altro codice che deve eseguire
  }

grazie brunetto, credo che le righe da te postate siano sufficienti per il mio scopo.....aggungerò solo la parte relativa al display ed il gioco è fatto, domani farò qualche prova.
per uwefed: devo controllare solo un contatto (sono un pin), la frequenza di chiusura è di circa una al secondo, la durata della chiusura non saprei... (è un contatto che viene chiuso e devo conteggiare il numero di chiusure) quanto può durare una pressione di un tasto, 10-50-100 mS?
grazie

Perche' non usi l'interrupt esterno?
void setup(){
attachInterrupt(0, count, FALLING);
....
}
void loop(){

....
}
la function count potrebbe essere questa:

void count(){
int n++;
}

In questo modo ogni volta che il piedino 2 si chiude verso massa, la variabile n si incrementa di uno.
Trascorso un tempo prestabilito, scrivi il suo valore sul display e la azzeri.

...grazie Paolo, proverò anche i tuoi suggerimenti...