Duda sobre codigo de reloj con botones en lcd

Hola amigos, espero que se encuentren bien.
Estoy haciendo la programación de un reloj con 2 botones que puedan configurar la hora (un botón para las horas y otro para los minutos). ya tengo el código pero al momento de ejecutar el botón este me incrementa y me vuelve a tomar el valor inicial de la hora, que puedo hacer para arreglar ese problema?

#include <LiquidCrystal.h> 

LiquidCrystal lcd(3, 2, 4, 5, 6, 7); 

int segundos=0;
int minutos=0;
int horas=0;
boolean boton_horas, boton_minutos;

void setup() {
lcd.begin(16, 2); 
pinMode(8, INPUT);
pinMode(9, INPUT);
}

void loop() {
segundos = (millis()/1000);
minutos=(segundos/60);
horas=(minutos/60);
boton_horas= digitalRead(8);
boton_minutos= digitalRead(9); 
if(segundos>59){
    segundos= ((millis()/1000)-(60*minutos)) ;
    if(10>(millis()/1000)-(60*minutos)){ 
     lcd.setCursor(11, 1); 
     lcd.print(" ");
    }
  }

if(minutos>59){
   minutos=(minutos-(60*horas));
   if(10>(minutos-(60*horas))){ 
     lcd.setCursor(8, 1); 
     lcd.print(" ");
   }
  }
if(horas>=24)
  {
   horas=(horas-(24*(horas/24)));
    if(10>(horas-(24*(horas/24)))){ 
     lcd.setCursor(5, 1); 
     lcd.print(" ");
    }
  }
if(boton_horas==HIGH){
   
   horas++;
   
}

if(boton_minutos==HIGH){
    minutos++ ;
}

  
lcd.setCursor(2, 0); 
lcd.print("RELOJ DIGITAL"); 
lcd.setCursor(4, 1); 
lcd.print(horas); 
lcd.setCursor(6, 1); 
lcd.print(":"); 
lcd.setCursor(7, 1); 
lcd.print(minutos); 
lcd.setCursor(9, 1);
lcd.print(":"); 
lcd.setCursor(10, 1); 
lcd.print(segundos); 

}

Moderador:
Un doble posteo es una de las peores faltas en este foro.
La razón es que alguien que te responda en tu otro hilo (como fue el caso de @gatul) se tomará el tiempo de darte una buena respuesta sin saber lo que se ha escrito en el otro sitio. Lo que consituye una perdida de tiempo para ambos foreros.
Por respeto a ellos es que te pido que no lo vuelvas a hacer y que leas las normas.
La proxima que veo, te sanciono con un baneo.

Normas del foro

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.