Also ... Du brauchst eine Zeit, 5Minuten = 300 Sekunden.
Dann haste noch nen Taster, soweit klar.
Beim Tasterdruck soll etwas ausgelöst werden, nämlich
Deine Zeitmessung. Wenn die Zeitmessung auch nach dem
Tastendruck weiter laufen soll muss sich die Kiste merken, das die
Taste gedrückt war, soweit klaro denk ich. Du brauchst also ein
sog. Flag, ein Zeichen das gesetzt wird, Jawoll, die Taste war gedrückt.
Ich verwende dafür gerne ne Variable namens Flag um das
zu erhalten. Die andere Variante ist, Du merkst Dir den Start in dem zu messenden Wert selbst, weil dieser den Endpunkt einfach noch nicht erreicht hat

Code:
$regfile = "m8def.dat"
$crystal = 1000000
$baud = 9600
Config Timer0 = Timer , Prescale = 64
Start Timer0
Enable Timer0
Enable Interrupts
On Timer0 Timer0_isr
Config Portb.0 = Output
Config Portb.0 = Output
Config Pinc.0 = Input
Config Portb.1 = Output
Config Portb.4 = Output
Config Pinc.2 = Input

Portc.0 = 1
Portc.2 = 1

Dim Intzaehler As Byte
Dim Zehntelsek As Byte
Dim Sekunde As Byte
Dim Minute As Byte
dim sec_counter as word

ausgang alias Portb.1
taste alias Pinc.2
Led3 Alias Portb.4

Do

Loop


Timer0_isr:
Tcnt0 = 194

       incr Intzaehler 

       If Intzaehler > 25 Then
       Zehntelsek = Zehntelsek + 1
       If Zehntelsek < 5 Then
            Led3 = 1
       Else
            Led3 = 0
       End If
       If Zehntelsek > 9 Then
            Zehntelsek = 0
       End If
       If Zehntelsek > 9 Then
       Zehntelsek = 0
       Sekunde = Sekunde + 1
       gosub tastenabfrage
       End If
       If Sekunde > 59 Then
       Sekunde = 0
       Minute = Minute + 1
       End If
       If Minute > 4 Then
       Minute = 0
       End If
       Intzaehler = 1

End If
Return
End

tastenabfrage:
       if taste = 1 then
            sec_counter=0
       endif
       
       if sec_counter < 301 then  ' 300 Sekunden nicht erreicht
              incr sec_counter               
              Ausgang=1  ' Tu halt irgendwas
       else
              Ausgang=0  ' Schalts wieder ab
       endif

return
end
Man kann im Übrigen mit nem Uhrenquarz und nem Mega auch ganz einfach ne Uhr generieren ... aber schön, das du's noch zum lernen zufuß machst.
Man kann auch den Timer langsamer laufen lassen über den Prescale, also den Vorteiler und mit dem 16-Bit Timer1 lassen sich auch direkt Sekundentakte erzeugen.