// LCD1602 to Arduino Uno connection example

#include <LiquidCrystal.h>

LiquidCrystal lcd(12, 11, 10, 9, 8, 7);
int b=4;
int n=3;
unsigned long mosse;
unsigned long tempob;
unsigned long tempon;
unsigned long dtb;
unsigned long dtn;
unsigned long tempozero;
unsigned long tempopartita;
unsigned long totb;
unsigned long totn;
void setup() {
  lcd.begin(16, 2);
  pinMode(6, INPUT_PULLUP);
  pinMode(5, INPUT_PULLUP);
  pinMode(4, OUTPUT);
  pinMode(3, OUTPUT);

}

void loop() {


  if (digitalRead(6) == LOW)
  {
    digitalWrite(n, HIGH);
    digitalWrite(b, LOW);
    delay(500);
  }
  if (digitalRead(5) == LOW)
  {
    digitalWrite(3, LOW);
    digitalWrite(4, HIGH);
    mosse = mosse + 1;
    delay(500);
  }
if (mosse==0)
{
tempozero=millis();
tempon=millis();
delay(5);
}
  else
  {
    lcd.setCursor(7, 0);
    lcd.print(mosse);
    lcd.setCursor(6, 1);
    tempopartita = (millis() - tempozero);
    lcd.print(tempopartita/1000);
    if (digitalRead(n)==HIGH)
    {
         totb=totb+dtb;
         dtn=millis()-tempob;
         tempon=tempob+dtn;
         
    lcd.setCursor(13, 1);
    lcd.print(dtn/1000);
    lcd.setCursor(2, 0);
    lcd.print(totb/1000);
     delay(5);
     dtb=0;
     lcd.setCursor(2, 1);
    lcd.print("   ");
    }
    if (digitalRead(b)==HIGH)
    {
         totn=totn+dtn;
         dtb=millis()-tempon;
         tempob=tempon+dtb;
         lcd.setCursor(2, 1);
    lcd.print(dtb/1000);
    lcd.setCursor(12, 0);
    lcd.print(totn/1000);
    delay(5);
    dtn=0;
    lcd.setCursor(13, 1);
    lcd.print("   ");
    }
     }
}
uno:A5.2
uno:A4.2
uno:AREF
uno:GND.1
uno:13
uno:12
uno:11
uno:10
uno:9
uno:8
uno:7
uno:6
uno:5
uno:4
uno:3
uno:2
uno:1
uno:0
uno:IOREF
uno:RESET
uno:3.3V
uno:5V
uno:GND.2
uno:GND.3
uno:VIN
uno:A0
uno:A1
uno:A2
uno:A3
uno:A4
uno:A5
lcd:VSS
lcd:VDD
lcd:V0
lcd:RS
lcd:RW
lcd:E
lcd:D0
lcd:D1
lcd:D2
lcd:D3
lcd:D4
lcd:D5
lcd:D6
lcd:D7
lcd:A
lcd:K
r1:1
r1:2
btn1:1.l
btn1:2.l
btn1:1.r
btn1:2.r
btn2:1.l
btn2:2.l
btn2:1.r
btn2:2.r
led1:A
led1:C
led2:A
led2:C
r2:1
r2:2
r3:1
r3:2