Ich hab jetzt mal versucht, die eingestellten Werte als Temp1 und 2 zu speichern, kein Erfolg, steht nur Null drin....
Es muß doch möglich sein, die engestellten Daten vor dem Verlassen der Schleife woanders zu speichern?
Ich hab auch schon die Stellen-Schleife als SUB deklariert. Dann kann er sie nicht mehr verlassen bzw. springt gleich
nach Mode-Taste wieder rein. So sieht das jetzt aus:
Code:
$regfile = "m8def.dat"
$crystal = 9830400
$hwstack = 40
$swstack = 16
$framesize = 32
$include "INIT_LCD20x4.bas"                                 'LCD an Port D
Pinb = &B11000000                                           'B  2,3,4 = Taster
Portb = &B00111100
Dim Al_min As Byte , Al_std As Byte , Temp1 As Byte , Temp2 As Byte
Ta_std Alias Pinb.2
Ta_min Alias Pinb.3
Ta_mode Alias Pinb.4
      Locate 1 , 1 : Lcd "Alarm "
      Locate 2 , 2 : Lcd Temp1
      Locate 3 , 2 : Lcd Temp2
'---------------Mode - Taster - Schleife --------------------------------
Do
      Locate 1 , 13 : Lcd "Ein    "
      Locate 1 , 7 : Lcd Al_std ; ":" ; Al_min
         If Ta_mode = 0 Then
            Waitms 10
            While Ta_mode = 0
               NOP                                          ' Debouncing
               Nop
            Wend
   Goto Set_alarm
         End If
Loop
'-------------- Stellen - Schleife ------------------------------------------
Set_alarm:
Do
            If Ta_min = 0 Then
               Al_min = Al_min + 1                          'Minute stellen
                  If Al_min = 60 Then Al_min = 0
                     Waitms 200
            End If
            If Ta_std = 0 Then
               Al_std = Al_std + 1                          'Stunde stellen
                  If Al_std = 24 Then Al_std = 0
                     Waitms 200
            End If
 '-----------------------------------------------------------------------------------------
      If Ta_mode = 0 Then Exit Do
 '-----------------------------------------------------------------------------------------
      Locate 1 , 13 : Lcd "Stellen"
      Locate 1 , 7 : Lcd Al_std ; ":" ; Al_min
Temp1 = Al_std                                              'geht auch nicht
Temp2 = Al_min                                              ' nur Nullen drin
Loop

Return

End

')
Ich weiß nicht mehr weiter, mit meinem Anfängerwissen bin ich am Ende...