masabuana
10.07.2007, 15:38
Hallo Leute!
Folgendes Problem:
Ich will einige Werte zwecks Stromausfallsicherheit im EEPROM meines Atmega32 abspeichern. Um das EEPROM nicht unnötig zu strapazieren soll das
ganze alle Viertelstunde (:timer mit 100Hz / 90000) ablaufen. Bevor geschrieben wird soll überprüft werden ob sich die Werte geändert haben - wenn ja: schreiben...wenn nein: wieder viertelstunde warten.
Funzt mein Code soweit? [-o<
Dim Z As Long
Dim Zuspeichernderwert As Single
'Timer mit 100 Hz
Config Timer0 = Timer , Prescale = 1024
On Timer0 Timer_irq
Const Timervorgabe = 100
Enable Timer0
Enable Interrupts
Do
Z = Z / 90000 'alle Viertelstunde: Z>1
If 1 <= Z Then
Dim K As Word
Dim Speicher As Eram Word
K = Zuspeichernderwert
If Speicher <> K Then 'Schreibe Zuspeichernderwert in EEPROM
Speicher = K 'falls irgendwelche Änderungen da sind
End If
End If
'Hauptprogramm
Loop
Timer_irq:
Timer0 = Timervorgabe
Incr Z
Return
Danke fürs Weiterhelfen!
MfG
Sascha
Folgendes Problem:
Ich will einige Werte zwecks Stromausfallsicherheit im EEPROM meines Atmega32 abspeichern. Um das EEPROM nicht unnötig zu strapazieren soll das
ganze alle Viertelstunde (:timer mit 100Hz / 90000) ablaufen. Bevor geschrieben wird soll überprüft werden ob sich die Werte geändert haben - wenn ja: schreiben...wenn nein: wieder viertelstunde warten.
Funzt mein Code soweit? [-o<
Dim Z As Long
Dim Zuspeichernderwert As Single
'Timer mit 100 Hz
Config Timer0 = Timer , Prescale = 1024
On Timer0 Timer_irq
Const Timervorgabe = 100
Enable Timer0
Enable Interrupts
Do
Z = Z / 90000 'alle Viertelstunde: Z>1
If 1 <= Z Then
Dim K As Word
Dim Speicher As Eram Word
K = Zuspeichernderwert
If Speicher <> K Then 'Schreibe Zuspeichernderwert in EEPROM
Speicher = K 'falls irgendwelche Änderungen da sind
End If
End If
'Hauptprogramm
Loop
Timer_irq:
Timer0 = Timervorgabe
Incr Z
Return
Danke fürs Weiterhelfen!
MfG
Sascha