#include <LiquidCrystal.h>

const int butpin = 8;
int buttonState = HIGH;
int lastbuttonState = HIGH;
unsigned long lastDebounceTime = 0;
unsigned long debounceDelay = 50;
int butVal;
int pressCounter;
const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);

void setup(){

  pinMode(8, INPUT);

  lcd.begin(16, 2);
  Serial.begin(9600);

}

void loop(){

  butVal = digitalRead(butpin);

  if(butVal != lastbuttonState){

    lastDebounceTime = millis();

  }

  if((millis() - lastDebounceTime) > debounceDelay){

    if(butVal != buttonState){
      buttonState = butVal;

      if(buttonState == LOW){
       pressCounter++;
       lcd.setCursor(0, 0);        
       lcd.print("Steps: ");
       lcd.print(pressCounter);
     }
    }

    
  }
  
  lastbuttonState = butVal;


}