Hallo!
Ich versuche die Uhrzeit am LCD darzustellen. Aber bei den Sekunden
bleibt beim umschalten z.B. von 23:59:59 auf 0:0:0 jedesmal die 59
bei den sekunden stehen.
Das schaut dann so aus: 0:0:0:59
Sonst läufts aber.
Was mach ich da falsch, weiß das jemand?

Das ist der Code:
Code:
' ATMEGA8- SelbstBauModul
$regfile = "m8def.dat"
$crystal = 14745600           'ext. Quarz
' /// UHR 
Dim Sekunde As Word
Dim Minute As Word
Dim Stunde As Word

'// Zum setzten von Stunde Minute Sekunde setzen
Sekunde = 55
Minute = 59
Stunde = 23

'/// LCD ///
Config Lcd = 20 * 4
Config Lcdbus = 4

' LCD im 4Bit I/O Mode
Config Lcdpin = Pin , Db4 = Portd.2 , Db5 = Portd.3 , Db6 = Portd.4
Config Lcdpin = Pin , Db7 = Portd.5 , E = Portd.7 , Rs = Portd.6
Cls
'/// TIMER ////

Config Timer1 = Timer , Prescale = 256
Const Startwert = 7936

On Timer1 Ontimer1            'Interrupt-Routine für Timer1-Overflow
Enable Timer1                 'Timer1-Overflow-Interrupt einschalten
Enable Interrupts             'Interrupts global zulassen
'-------------------------------------------------------------------------------
Main:
Do
'Uhrzeit in Sekunde Minute Stunde
If Sekunde = 60 Then
   Sekunde = 0
   Incr Minute
End If

If Minute = 60 Then
   Minute = 0
   Incr Stunde
End If

If Stunde = 24 Then
   Stunde = 0
End If

'/// LCD Anzeige Stunde Minute Sekunde 
Cursor Off Noblink
 Home
 Lcd Stunde ; ":" ; Minute ; ":" ; Sekunde
 Waitms 100
Loop
Goto Main

End
'//////////////////
Ontimer1:              
    Timer1 = Startwert
    Incr Sekunde
Return