habs gerade nochmal überarbeitet:
Code:
$regfile = "m8def.dat"
$crystal = 1000000
$baud = 19200
$hwstack = 32
$swstack = 10
$framesize = 40



Config Lcd = 16 * 2
Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5 , E = Portc.1 , Rs = Portc.0
Config Lcdbus = 4
Cursor Off
Ddrb = &B11111111
Ddrd = &B00000000
Portd.2 = 1
Portd.3 = 1
Portd.4 = 1
Portd.5 = 1
Portd.6 = 1
Portd.7 = 1

Enable Interrupts
Config Clock = Soft
Declare Sub Stunde
Declare Sub Minute
Declare Sub Ausgabe
Declare Sub Menue
Dim Modus As Byte
Declare Sub Einstellen
Cls

Time$ = "00:00:00"

Do
   Locate 1 , 1
   Lcd Time$ ; "  " ;
   Debounce Pind.3 , 0 , Stunde , Sub
   Debounce Pind.4 , 0 , Minute , Sub
   Debounce Pind.2 , 0 , Menue , Sub
   Debounce Pind.7 , 0 , Einstellen , Sub
Loop





Menue:
Incr Modus
   If Modus = 4 Then Modus = 0
   Locate 2 , 1
   If Modus = 0 Then
      Locate 2 , 1
      Wait 1
      Lcd "Aus  "
   End If


   If Modus = 1 Then
      Locate 2 , 1
      Wait 1
      Lcd "MP3  "
      Portb.0 = 1
   Else
      Portb.0 = 0
   End If



   If Modus = 2 Then
      Locate 2 , 1
      Wait 1
      Lcd "Radio"
      Portb.1 = 1
   Else
      Portb.1 = 0
   End If



   If Modus = 3 Then
      Locate 2 , 1
      Wait 1
      Lcd "AUX  "
      Portb.2 = 1
   Else
      Portb.2 = 0
   End If
Return



'Stunde
Sub Stunde
   Incr _hour
   If _hour > 23 Then
      _hour = 00
   End If
End Sub




'Minute
Sub Minute
   Incr _min
   If _min > 59 Then
      _min = 00
   End If
End Sub

Return

nun muss ich irgendwie die weckzeit einstellen und ausgeben wie gehe ich da vor zwecks variablen und so?