Suma de tiempos

Buen día.

Hola, soy nuevo en Arduino. Pretendo hacer una especie de timer de maquina arcade, con las siguientes características:

La idea es tener una entrada y una salida, la entrada será para agregar tiempo al contador y la salida unicamente se activa cuando hay algun tiempo que cumplir, y se desactiva cuando el tiempo ya transcurrió.

Entonces se requiere qué al activar la entrada, mi salida se activará durante 5 minutos, y transcurridos estos, se desactivará.

en donde realmente tengo el problema es en que si activo mi entrada, se agregan 5 minutos y la salida se activa, pero si quiero activar la entrada cuando esos 5 minutos esten pasando, se deben de agregar a la cuenta otros 5 minutos.

Es decir, por cada pulso que se de al boton, se agregan 5 minutos al tiempo, pero si la entrada se pulsó cuando el timer iba en 2 min, mi tiempo debería quedar en 3 min + 5 min = 8min, y claro. mi salida se desactivaría hasta que transcurrieran esos 8 minutos.

Cómo les comenté desde el principio, soy nuevo en Arduino y no sé si sea posible hacer esto, espero puedan apoyarme con pistas que me hacerquen al resultado que quiero, sé que no están para resolver problemas de los demás.

muchas gracias!

Hola RikBren, bienvenido al foro.
Si quieres saber si se puede hacer, claro que se puede.

Ahora si no sabes nada, lo mejor que puedes hacer es comenzar a aprender a programar enfocado en tu idea.

Te recomiendo para comenzar que estudies la funcion millis().
Tambien ve el ejemplo BlinkWithoutDelay.ino que esta en el ide. Búscalo. Es un ejemplo para hacer lo mismo que hace delay pero usando millis().

millis() devuevle un valor unsigned long que puede usarse casi ilimitadamente.
Cuando arduino se energiza ese valor es 0 y con cada milisegundo aumenta.
Entonces es como disparar un cronometro de milisegundos
Como debes usarlo. Pues bien, cuando presiones el pulsador leeras que valor tiene y le vas a sumar 5601000 mseg o sea 300000 miliseg

Entonces con cada pulsación se incrementarán los 5 min que tu quieres.

Pero no comiences por esto ya que no sabes como.
Lee el ejemplo
Y vamos ajustando el mismo a tu necesidad.

Paso a paso.