Ja,
DIM y AS ERAM BYTE ' IM EEPROM
DIM x AS BYTE ' SRAM
Y= X ' speichern
X=Y 'wieder lesen
Solche Namen müssen innerhalb des Programmes natürlich eindeutig sein, logo.
Direkt im ERAM arbeiten tu' aber nicht, der Zugriff ist zu langsam.
Hallo,
so ganz hab ich das mit den Variablen im EEPROM noch nicht verstanden.
Ich nehme an, dass die Variablen im SRAM und im EEPROM verschiedene Namen haben müssen.
Wenn ich also schreibe :
DIM X SRAM
DIM Y ERAM
Y=X
.....
.....
X=Y
werden dann die Variablen automatisch vom SRAM ins EEPROM geschrieben bzw. umgekehrt ?
Ich will einfach nach dem Ausschalten einige Werte im EEPROM speichern und beim Einschalten wieder zurücklesen.
Gruss
Wolfgang
"Jedes hinreichend mächtige formale System ist entweder widersprüchlich oder unvollständig"
Kurt Gödel
Ja,
DIM y AS ERAM BYTE ' IM EEPROM
DIM x AS BYTE ' SRAM
Y= X ' speichern
X=Y 'wieder lesen
Solche Namen müssen innerhalb des Programmes natürlich eindeutig sein, logo.
Direkt im ERAM arbeiten tu' aber nicht, der Zugriff ist zu langsam.
mfg robert
Wer glaubt zu wissen, muß wissen, er glaubt.
Vielen Dank für die schnelle Antwort.
Wäre es unverschämt, wenn ich noch ne Frage dranhänge ?
Wie mache ich es beim ersten mal ? Woher weiss ich, dass ich schon mal einen Wert ins ERAM geschrieben hab? Ich könnte das ERAM ja auslesen, aber wenn ich es noch nicht beschrieben hab gibts wohl ne Fehlermeldung (oder gibt der Compiler 0 zurück, dann wäre das Problem gelöst) ?
Gruss
Wolfgang
"Jedes hinreichend mächtige formale System ist entweder widersprüchlich oder unvollständig"
Kurt Gödel
Ein Leerer/geköschter EEPROM steht normalerweise alles auf &HFF
Mir reicht es oft, wenn ich mache
Man kann auch ein eigenes Kontroll-Zeichen im Eram anlegen, noch besser natürlich eine Kontrollsumme, falls der Eprom irgendwie vernudelt worden istCode:IF erambyte <> &Hff then variable = erambyte else variable = defaultwert end if
mfg robert
Wer glaubt zu wissen, muß wissen, er glaubt.
@PicNick
wenn Du schreibst, dass es so funktioniert, werde ich das übernehmen. Womit ich ein Problem habe: wenn im ERAM lauter FFs oder Nullen stehen, woher weiss der Compiler dann, wo die Variable liegt ? Ich dachte, zu Beginn baut der Compiler eine Tabelle auf mit den Zeigern zu den declarierten Variablen. Deshalb die Frage nach der Fehlermeldung.
Gruss
Wolfgang
"Jedes hinreichend mächtige formale System ist entweder widersprüchlich oder unvollständig"
Kurt Gödel
Neinein, der ERAM ist genauso mit Adresse 0 - juchuu
Bascom legt für
DIM Muh AS ERAM BYTE ' (EEPROM) adresse 0
DIM Kuh AS ERAM BYTE ' (EEPROM) adresse 1
usw.
Da und auch fürs SRAM gibt's keine Tabellen, die Adressen stecken direkt in den Befehlen drin.
mfg robert
Wer glaubt zu wissen, muß wissen, er glaubt.
@PicNick
ich danke Dir für die Hilfe und wünsche Dir noch einen schönen Abend.
Gruss
Wolfgang
P.S. Wenn es denn die Möglichkeit gäbe, würde ich Dir jetzt ein Glas Kölsch rübermailen
"Jedes hinreichend mächtige formale System ist entweder widersprüchlich oder unvollständig"
Kurt Gödel
exzellenter Gedanke !..ein Glas Kölsch rübermailen ..
mfg robert
Wer glaubt zu wissen, muß wissen, er glaubt.
Lesezeichen