Forum: Mikrocontroller und Digitale Elektronik Mit arm-elf-size belegten Speicher in % ausgeben?


von Jens (Gast)


Lesenswert?

Hallo,

anscheinen kann arm-elf-size nicht den belegten Flash und RAM in % 
ausgeben.
Gibt es einen anderen weg?

Ich suche so eine Ausgabe die ich beim AVR mit avr-size --mcu=$(MCU) -C 
$(TARGET).elf erhalte.

Gruß
Jens
von Xenu (Gast)


Lesenswert?

Soweit ich weiß ist in einer ELF-Datei die Flash/ROM-Größe der 
Zielplattform nicht kodiert, also kann das gar nicht funktionieren.

Musst Du Dir halt ein kleines Skript schreiben das die size-Ausgabe 
interpretiert und in Prozent ausgibt.
von Jens (Gast)


Lesenswert?

Beim AVR geht es mit dem .ELF file
von Xenu (Gast)


Lesenswert?

Bei avr-size geht das deshalb, weil die "mcu"-Option mit in avr-size 
eingebaut wurde, bei der alle existierenden AVRs berücksichtigt werden. 
Aber bei der ARM-Variante hast Du diese Option nicht.
von Xenu (Gast)


Lesenswert?

Nachtrag:

Das avr-size hat die Größe des Controllers nicht aus der ELF-Datei, 
sonst müsste man ja nicht explizit den Controller mit angeben.
von Jens (Gast)


Lesenswert?

Ah ok.
Reicht es denn so zu rechnen für den statischen Verbrauch, oder fehlt da 
noch was Entscheidenes?

Flash: Text + Data
RAM: Data + Bss
von Martin T. (mthomas) (Moderator) Benutzerseite


Lesenswert?

Entscheidendes fehlt nicht, sofern ein übliches Speicherlayout im 
Linkerscript definiert wird. Für Abweichungen, z.B. so etwas wie "BIOS", 
Bootloader, EEprom-Emulation, die nicht in der .text output-section für 
NV-Speicher gelistet sind oder spezielle RAM-Speicherbereiche (z.B. für 
DMA, Ethernet, USB...), für die andere output-sections als .data und 
.bss in einem RAM-Adressbereich definiert werden, müsste das 
Speicherbelegungskript dann erweitert werden.
von Kai O. (kaio)


Angehängte Dateien:

Lesenswert?

Moin,

ich benutzte angehängtes Shell-Script unter Linux. Ist ursprünglich 
nicht von mir, habe es aber geringfügig angepasst.
von Lowtzow .. (lowtzow)


Lesenswert?

und sowas für windows gibt auch?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.