www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Atmega128 Flash Beschreiben


Autor: Markus Haas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,


ich arbeite im Moment mit CodeVisionAVR und dem Atmega128. Leider muss
ich verschiedene Texte einstellbar gestalten, sodaß die 4k EEPROM
Speicher dafür nicht mehr ausreichen.

Da ich im Flash selbst noch ziemlich viel frei habe, würde ich diesen
freien Speicherbereich gerne zur Abspeicherung meiner Texte hernehmen.
Die mir bekannten Methoden zum Beschreiben des Flash aus dem Programm
heraus funktionien alle jedoch nur über einen Bootloader, was ich
eigentlich nicht haben möchte, da die Texte mitten in der Bedienung
durch den Benutzer modifiziert werden.

Gibt es eine Möglichkeit, Flash Pages von "normalem" Code aus zu
schreiben, d.h. nicht über den Bootloader?


Danke im Voraus,
    Markus Haas

Autor: Wolfgang Weinmann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
<<Gibt es eine Möglichkeit, Flash Pages von "normalem" Code aus zu
schreiben, d.h. nicht über den Bootloader?>>

Hallo,
also ich kann aus dem Stegreif nur etwas ungenau antworten. Aber der
Bootloader benutzt ja dann bestimmte Befehle (LPM,SPM) um das download
abzuspeichern. Im Manual des uC ist dann sicher eine kurze
Assemblerroutine beschrieben, wie man das einsetzt. Das müßte
wahrscheinlich auch für Dich einsetzbar sein. Da würde ich mal
nachschauen.

Gruß

Wolfgang Weinmann

--
www.ibweinmann.de
Mikrocontrollersysteme

Autor: Markus Haas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es gibt einige Beschreibungen dazu, aber in den meisten steht drin, dass
die Beschreibe-Befehle aus dem Bootloader Bereich aufgerufen werden
müssen, und dass diese Befehle wirkungslos sind, wenn sie aus einem
anderen Codebereich aufgerufen werden.

Kann das sein?

Autor: Wolfgang Weinmann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

also (nur leider wieder kurz - habe ja auch noch andere Dinge zu tun
:-)) ich setze den ATMEGA88 ein.
Da steht auch im Manual, daß diese Instruktionen nur in der
Boot-Loader-Section eingesetzt werden können.
ABER: Es steht auch drin, Entering the Boot-Loader takes place by a
jump or call from the application programm --> es kann also von deinem
normalen Programm dorthin verzweigt werden. Dort dann die Routinen
einhängen, die den Flash beschreiben. Den Weg würde ich mal verfolgen.

Die Größe der Boot-Loader Section ist auch einstellbar.

Hoffentlich hilfts weiter.

Gruß

Wolfgang

--
www.ibweinmann.de
Mikrocontrollersysteme

Autor: Markus Haas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
OK, das müsste ich einmal probieren.

Eine Automatisierung der von mir gewünschten Funktionalität (also z.B.
eine fertige C-Funktion, welche automatisch in den Bootstrap Modus
wechselt, den Flash beschreibt und wieder in den eigentlichen
Programmcode zurück springt) gibt es also eher nicht?

Autor: Wolfgang Weinmann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

so aufs erste wohl nicht. Aber das einzige, wad Du machen mußt ist ja
dafür zu sorgen, daß die Routine in der Bootloader-Section ist und dann
einen call daruf zu machen. Das hört sich durchaus als machbar an :-)

Gruß

Wolfgang Weinmann
--
www.ibweinmann.de
Mikrocontrollersysteme

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.