größe von speicher und hex.file

Gast #320012
Lesenswert?
• ▲
▼
Hi.
Ich hätte da mal ein Frage zur Größe von hex.files und der
Speichergröße von Microcontrollern.
Laut Datenblatt hat der ATmega169 16K Bytes In-System Programmable
Flash
und derATmega8 8K Bytes In-System Programmable Flash
Das sollte IMHO der Speicher sein, in dem mein Programm drin steht?
Jetzt habe ich mal ein kleines, wohl nicht ganz sauberes Programm
geschrieben das allerdings ein main.hex erzeugt, dass 32.2kB gross ist,
wenn man dem Dateimanager von Windows glauben darf.
Jetzt habe ich Angst, dass ich mir viel Mühe mit der Hardware mache und
das Programm am Ende da garnicht reinpasst.
Versuchsweise habe ich es jetzt mal in den 16K - Speicher des Butterfly
(ATmega169) geschrieben was zu meinem großen Erstaunen auch
funktionierte.
Das Hex-file. das ich zuvor zur Sicherheit von der Butterfly-Software
gelesen und danauch auch wieder dort reingeschrieben habe war mit 45KB
auch beutlich größer als die 16KB die laut Datenblatt in den controller
reinpassen.
Wie bekomme ich jetzt raus, ob mein programm in den Speicher passen
wird, oder nicht?

Das spuckt der compiler aus:
Size after:
main.elf  :
section             size       addr
.data              0xa54   0x800100
.text             0x283a        0x0
.bss                0xc9   0x800b54
.noinit              0x0   0x800c1d
.eeprom              0x0   0x810000
.debug_aranges      0x8c        0x0
.debug_pubnames    0x3db        0x0
.debug_info        0xb75        0x0
.debug_abbrev      0x406        0x0
.debug_line        0xeb0        0x0
.debug_str         0x3e0        0x0
Total             0x59c9

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