mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik ROM Atmega128


Autor: Freudi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mal ne wahrscheinlich ganz doofe Frage. Ich chreibe hier nen Programm
für den Atmega128 mit Codevision AVR. Das inzwischen entstehende
HEX-File ist 112 kb gross und dass ROM-File 258 KB. Jetzt stellt sich
mir die Frage warum das ROM-File 258 KB ist, wenn der Atmega128 doch
nur 128 KB Programmspeicher hat ?  Kann mein HEX File dann doch größer
als 128 KB werden, das glaube ich fast garnicht, aber wo flasht der die
258 KB hin ?

Freudi

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das INTEL-HEX-Format (Google-Tip) ist eine Textdatei, die die Werte in
den einzelnen Bytes darstellt und dadurch einen großen Overhead hat.
Eine BIN-Datei würde der wahren Größe entsprechen.

Schau mal, ob und wo dein Compiler die Meldung ausgibt, wieviele Bytes
(Worte?) im Flash belegt sind.

...

Autor: Freudi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oh schnelle Antwort. Danke. Sitze gerade nicht vor dem PC mit dem
Compiler. Schau nachher mal. Aber ich weiss das der Chipprogrammer nach
dem ROM File und dem EEP File fragt. Das ROm File hat 258 KB wo flasht
der das hin ? Oder mal präziser gefragt. Was ist denn im ROM File. Bis
heute bin ich davon ausgegangen, das das sozusagen der Inhalt des Flash
ist. ABer das kann ja dann nicht sein wenn das doppelt so gross ist.

Freudi

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Was ist denn im ROM File. Bis
> heute bin ich davon ausgegangen, das das sozusagen der Inhalt des
> Flash ist.

In der Datei ist Text.
Und dieser Text beschreibt nach einem festgelegten Protokoll Adresse
und Inhalt jeder einzelnen Speicherzelle. Weiterhin enthält der Text
noch Prüfsummen.

Frage doch mal Google nach dem oben genannten Suchtipp. Dann fällt es
dir wie Schuppen von den Augen...

...

Autor: André K. (andre-)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es gibt ja 2 Rom Files. Im *.bin sind die reinen Rohdaten enthalten, wie
sie spaeter auch im Flash legen. D.h. Groesse *.bin = Programmgroesse.

im *.hex dagegen befinden sich zu den Rohdaten auch noch die Adressen,
an die die einzelnen Bytes bzw. Bloecke geschrieben werden (dazu,
Checksummen etc.). Diese Informationen brauchen natuerlich Platz,
weswegen das *.hex File immer das ca. 2,8-Fache der Groesse des *.bin
Files besitzt.

http://www.keil.com/support/docs/1584.htm

Die Dateien lassen sich uebrigens einfach ineinander umwandeln.

MfG

Autor: Freudi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die Infos werde mal googlen. Habe jetzt auch die Stelle
gefunden in der CodeVision anzeigt wieviel Flash belegt ist. Das ist
einfach ein Thema um das ich mich noch nie gekuemmert habe, der
Programmspeicher war immer gross genug.

Dank an alle
Freudi

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"HEX-File ist 112 kb"

Dann ist Dein Code etwa 40kB, hast also noch reichlich Platz im
128-er.


Peter

Autor: Freudi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hey Super Schätzung. 33% des Flashes sind belegt, das sind ca 40 KB. Na
da habe ich ja noch Luft.

Freudi

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.