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...
Lesezeichen