Hey,

ich möchte gerne mit 2 tastern 2 verschiedene Programmabläufe ein und ausschalten können. Funktioniert auch soweit alles, blos muss ich beim aussschalten den Taster immer ziemlich lange gedrückt halten weil er erst das Programm zu ende laufen lässt. Ich denke mal das fehlen Interrupts oder? Wäre nett wenn jemand mal den Code Optimieren könnte bzw. das fehlene hinzufügen.

Code:
$regfile = M8def.dat
$crystal = 3638400

Ddrd = &B11100000
Portd = &B00001100

Declare Sub An
Declare Sub Aus
Declare Sub Prg1
Declare Sub Prg2


Dim T1 As Bit
Dim T2 As Bit


Do

Debounce Pind.2 , 0 , An , Sub
Debounce Pind.3 , 0 , Aus , Sub

If T1 = 1 Then
Gosub Prg1
End If

If T2 = 1 Then
Gosub Prg2
End If

Loop
End

An:
Toggle T1
Return

Aus:
Toggle T2
Return

Prg1:

 Portd.5 = 1
 Waitms 100
 Portd.5 = 0
 Portd.6 = 1
 Waitms 100
 Portd.6 = 0
 Portd.7 = 1
 Waitms 100
 Portd.7 = 0

 Return

Prg2:
 Portd.5 = 1
 Waitms 400
 Portd.5 = 0
 Portd.6 = 1
 Waitms 400
 Portd.6 = 0
 Portd.7 = 1
 Waitms 400
 Portd.7 = 0

 Return
Danke schonmal!