@ for_ro:
Genau wie Du schreibst, ist es!
Nochmal kurz erklärt, was ich eigentlich will:
Der "Mode"-Taster soll zwischen "Anzeigen-und Alarm-Ein" Mode" und " Stellen" Mode" umschalten.
Es könnte auch so gehen, das ich gleichzeitig Mode- und Stelltaster zum stellen drücken muß.
Ich glaube, das geht wohl am Einfachsten.
Das Debouncing stammt noch vom alten Codeschnipsel, das wird nicht nötig sein.
- - - Aktualisiert - - -
Ich hab das jetzt mal so gemacht:
und das geht so wie gewollt! Die zwei-Taster-Bedienung ist garnicht mal schlecht.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 Ta_std Alias Pinb.2 Ta_min Alias Pinb.3 Ta_mode Alias Pinb.4 Locate 1 , 1 : Lcd "Alarm " Do If Ta_mode = 0 Then Locate 1 , 13 : Lcd "Stellen" Else Locate 1 , 13 : Lcd "Ein " End If If Ta_min = 0 And Ta_mode = 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 And Ta_mode = 0 Then Al_std = Al_std + 1 'Stunde stellen If Al_std = 24 Then Al_std = 0 Waitms 200 End If '-------------- LCD rechtsbündige Anzeige ------------------------------------ Locate 1 , 7 If Al_Std < 10 Then Lcd " " ; Al_Std Else Lcd Al_Std ; " " Locate 1 , 9 If Al_Min < 10 Then Lcd ":0" ; Al_Min Else Lcd ":" ; Al_Min Waitms 50 Loop End
Jetzt brauch ich nur noch den Uhrzeit-Vergleich und die Ausgabe austüfteln.
Ich danke Euch für die hilfreichen Tipps, hab ich doch wieder was gelernt!
Joachim







Zitieren

Lesezeichen