Hans schrieb:
> Ne die ist Konstante 5V wiso?
Wegen dem hier
> .... Nach abschalten .....
D.h. du hast den µC den Saft abgedreht. Wenn die Versorgungsspannung
einbricht, während der µC gerade den EEPROM beschreibt, dann ist nicht
vorhersehbar was da passiert.
Im Momment umgehst du das, weil du nur dann schreibst, wenn sich der
Wert auch tatsächlich ändert. Die Wahrscheinlichkeit des zeitlichen
Zusammentreffens eines Tastendrucks und des Einbrechens der
Versprungsspannung ist in deinem jetzigen Programm praktisch 0. Daher
funktioniert es.
In der alltagstauglichen Programmierung (zb beim Speichern von
Messwerten) muss man aber auch damit rechnen, das es diesen Fall gibt:
das der Strom just in dem Moment ausfällt, in dem der µC den letzten
Messwert im EEPROM speichern will.
Dazu gibt es die Brown Out Fuse. UNbedingt auf den höchsten
Spannungswert hochstellen! Dann stellt der µC die Arbeit ein, noch ehe
die Spannung weit genug gefallen ist um Fehlfunktion auszulösen.