EEPROM + BASCOM +

Gast #63049
Lesenswert?

HAllo Leute,

wer kann mir weiterhelfen mit BAscom und ATMEGA 8 !?

Ich möchte im EEPROM Wertee hineinschreiben mit denen der
Microcontroller beim erstmaligen Start initialisiert wird.
Wenn ich nun während dem Betrieb diese Werte ändere ( hier
bei mir geschieht dies dadurch das wenn ich eine Taste drücke
der betreffende Wert um 1 erhöht wird) soll dies im EEPROM gespeichert
werden. Wenn ich nun den Controller ausschalte und wieder einschalte
sollen aber nicht die Initialisierungswerte sondern die geänderten
Werte gelesen werden

z.B. erstmaliger Start : A = 10

dann erhöhe ich Wert auf A = 12

nun schalte ich Controller aus und ein

jetzt soll A = 12 sein


Würde mich freuen wenn mir jemand weiterhelfe könnte

Ich habe es mit Dim A As eram byte probiert aber das bring nichts
weilich ja immer den allerersten Wert beim Neustart erhalte

Vielen Dank

Tobi
Gast #63050
Lesenswert?

einfach die zu speichernden variablen als

Dim test As Eram Byte

deklarieren. dann bleibt der variablen-wert auch beim ausschalten
erhalten, da er ja im eeprom gespeichert ist. habs zwar noch nicht
asuprobiert, müsste aber funktionieren.
Gast #63053
Lesenswert?

Wenn "A" als Eram deklariert wird wird immer auf dem EEprom Inhalt
zugegriffen. Wird "A" verändert ist dieser Wert auch nach dem
einschalten vorhanden.

Tücke bei Bascom: Nicht alle Funktionen laufen auch mit EEprom
Variablen. Mal Funktionierts, mal nicht, manchmal auch ohne
Fehlermeldung. Steht aber auch in der Hilfedatei.

Lösung:
EEprom Variablen beim Start in normale Variablen kopieren und damit
arbeiten. Werden die Werte der normalen Variablen geändert, so muss
auch die EEprom Variable geändert werden.

Dim EETestVar as Eram Byte  ' EEprom Variable
Dim  TestVar as byte        ' normale Var

TestVar = EETestVar   ' gespeicherten Wert kopieren

do  ' irgend was sinnvolles
  if pind.0 = 0 then  ' jetzt Wert verändern und speichern
     Incr TestVar
     EETestVar = TestVar
  Endif

loop

Bernd (gehört nicht mehr zum Programm :-)
Gast #63054
Lesenswert?

wie ist es denn mit dem überschreiben von werten durch neustart?
die ersten speicherstellen des eeprom sollen beim neustart teilweise
überschrieben werden (quelle: bascombücher von C.Kühnel)- wer kennt
sich da aus?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren