#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd (0x27, 20, 4);
#define clk 25
#define dt 26
#define sw 27
int old_clk, new_clk;
int dat;
int old, new1;
int count = 0;

void setup() {
  pinMode(clk, INPUT_PULLUP);
  pinMode(dt, INPUT_PULLUP);
  pinMode(sw, INPUT_PULLUP);
  Serial.begin(115200);
  lcd.init();
  lcd.backlight();
  lcd.setCursor(4, 0);
  lcd.print("Light status");
  old_clk = digitalRead(clk);
}
void loop() {
  new_clk = digitalRead(clk);
  if (old_clk != new_clk) {
    dat = digitalRead(dt);

    if (new_clk != dat && new_clk == 0) {
      if(count < 10){
      // int count = 0; count < 20 ; count++;
      count++;
      lcd.setCursor(count+4, 1);
      lcd.print("*");
      delay(200);
      Serial.println(count);
      }
  if(count==10){
    lcd.setCursor(8,3);
    lcd.print("MAX");
    delay(4000);
    lcd.setCursor(8,3);
    lcd.print("   ");
  }
    }
  }

    if (new_clk == dat && new_clk == 0) {
      if(count > 0){
      // int count = 0; count < 20 ; count++;
      
      count--;
      lcd.setCursor(count+5, 1);
      lcd.print(" ");
      delay(200);
      Serial.println(count);
      }
       if(count==0){
    lcd.setCursor(8,3);
    lcd.print("MIN");
    delay(4000);
    lcd.setCursor(8,3);
    lcd.print("   ");
       }
  }
  old_clk = new_clk;
  delay(10);
  // for (int i = 0; i < 20 ; i++) {
  //   lcd.setCursor(i, 1);
  //   lcd.print(">");
  //   delay(500);
  //   lcd.setCursor(i, 1);
  //   lcd.print(" ");
  // }
  // for (int i = 19; i >= 0 ; i--) {
  //   lcd.setCursor(i, 1);
  //   lcd.print("<");
  //   delay(500);
  //   lcd.setCursor(i, 1);
  //   lcd.print(" ");
  // }
}