Timer Stoppuhr ist ungenau
Ich habe diesen Code mit einem ATmega8, intern auf 1Mhz getaktet:
Code:
'===============================================================================
' Compiler
'===============================================================================
$regfile = "m8def.dat" 'Mega32
$crystal = 1000000
'-------------------------------------------------------------------------------
'=============================================================================
'Hier wird der Timer und der Teiler festgelegt
Config Timer1 = Timer , Prescale = 64
On Timer1 Timer_irq
Const Timervorgabe = 49911
Dim Sekunden As Integer
'===============================================================================
Enable Timer1
Enable Interrupts
'===============================================================================
' Hauptschleife
'===============================================================================
Do
Loop
End
'===============================================================================
Timer_irq:
Timer1 = Timervorgabe
Decr Sekunden
Return
Jedoch hat er auf 300 Sekunden ca. 2 Sekunden abweichung.
Was ist falsch?
Gruß, Björn