Für dieses Forum muß Javascript im Browser aktiviert werden!
Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C2 Quellcode formatieren: <code>Quellcode</code> ASM Quellcode formatieren: <asm>Quellcode</asm> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! > Hallo André, > > danke für die schnelle und sehr ausführliche Antwort - du hast mich überzeugt, dass der > Anschluß eines I2C-EEPROM wirklich sinniger ist. Selbst wenn mit viel Trickserei die Nutzung > des Flash-ROM möglich sein sollte, wäre der Aufwand doch völlig unverhältnismäßig! > > Glückwunsch auch zu der hervorragenden und absolut informativen Seite!!! > > Gruß Klaus B. > > > Hallo Klaus, > > > > So einfach ist es nicht. > > Im einem Flash-Speicher(Flash-ROM) kann man keine Werte einfach ändern. > > Der Speicher muß dafür vorher gelöscht werden. > > Auch das Schreiben neuer Werte geht nur, wenn der Bereich vorher einmal > > gelöscht wurde. Löschen kann man den Flash jedoch nur Segmentweise.(1Seg.=64kB) > > Außerdem, und hier liegt die Schwierigkeit, darf der Code, der löschend und oder > > schreibend auf den Flash zugreift sich nicht im Flash(egal, welches Seg.) befinden. > > Der Code dafür wird immer aus dem internen RAM des Controllers ausgeführt. > > Beim Laden des OS wird z.B. erst ein Bootloader(boot.hex) in den int. RAM geladen, > > bevor das OS galaden werden kann. > > Beim Laden von Konstanten, VMC und HEX-Code(eigene Systeroutinen) wird vom OS > > ebenfalls ein Programmcode (änhlich wie der Bootloader) in den internen RAM > > des Controllers geladen und dieser dort ausgeführt. > > Für solche Routinen würden allerhöchstens 254 Byte internen RAM zur Verfügung stehen, > > während ein Programm läuft. > > Wer Lust (und viel Zeit) hat, kann gerne das OS-Listing durchstöbern. > > (Die Hostmode-Routinen befinden sich ab 0x2276) > > Es haben sich schon genug Leute daran die Zähne ausgebissen. > > Es sollte nämlich mit ins Buch "MSR mit CC2". Aber auch B.Kainka hat sich > > dabei die Zähne ausgebissen. Ich hatte mich zu dem Zeitpunkt, als ich zusammen > > mit B.Kainka das Buch geschrieben habe, noch nicht viel mit ASM beschäftigt. > > > > Darum ist das Speichern von ausfallsicheren Konfigurationsdaten in einem > > externen Speicher viel leichter, günstiger und weniger Nerven aufreibend. :-) > > Hier bieten sich am besten immernoch serielle EEProm an. > > Diese sind bis 512kBit(64kByte) erhältlich. > > > > Jedoch wird der Punkt zum Thema Ausfallsicheres Speichern von Werten > > natürlich mit in die FAQ kommen. > > > > MfG André H. > > > > > > > Hallo liebe Leute, > > > > > > zum Problem "Daten/Variablen dauerhaft speichern" und der Antwort "geht nicht" der Hinweis, > > > dass das Betriebssystem doch bereits sowohl die Routinen zum Lesen von Konstanten enthält, > > > als auch bei jeder VMC-Übertragung das EEPROM-Konstantensegment beschrieben wird > > > (allerdings wird hier offensichtlich stets ab Adresse 0 eine bestimmte Länge beschrieben). > > > > > > Warum also nicht eine kleine Routine schreiben, die gezielt Konstanten verändert, indem auf deren > > > EEPROM-Adresse zugegriffen wird. Frage: geht das analog zum Lesen, oder spricht irgendetwas > > > prinzipiell gegen ein Schreibzugriff auf das EEPROM zur Programmlaufzeit? > > > > > > Wäre toll, wenn jemand dieses Problem bereits gelöst hätte (?) > > > > > > Gruß, > > > Klaus B. > > >