Unlogische Speicherausnutzung

Gast #181710
Hallo!
Brauch mal wieder eure Hilfe. Und zwar wenn ich in WinAvr mein kleines
Programm compiliere (MAKE ALL) zeigt der Compiler mir eine
Speicherausnutzung des AVRs von über 100% an.
Ich fänds vorteilhaft, wenn da die wirkliche Auslastung stehen würde.
Muß ich da evtl. was im MAKEFILE ändern? Hab das MAKFILE mit dem
Programm "MAKEFILE [WinAVR]" erstellt.
Als Ergebnis kommt folgendes:

----------------------------------------------------------
Size after:
main.elf  :
section           size      addr
.text             2718         0
.data                0   8388704
.bss                 0   8388704
.noinit              0   8388704
.eeprom              0   8454144
.debug_aranges      20         0
.debug_pubnames     27         0
.debug_info        291         0
.debug_abbrev      101         0
.debug_line        212         0
Total             3369


AVR Memory Usage:
-----------------
Device: attiny26

Program:    2718 bytes (132.7% Full)
(.text + .data + .bootloader)

Data:          0 bytes (0.0% Full)
(.data + .bss + .noinit)


-------- end --------


> Process Exit Code: 0
----------------------------------------------------------

Der Controllertyp stimm schon...
Was muß ich ändern um die Speicherauslastung richtig angezeigt zu
bekommen?

Mit freundlichen Grüßen
Matthias
Gast
Was ist daran denn unlogisch?  Du versuchst, in einen Controller
mit 2 KB ROM mehr als 2700 Bytes reinzublasen, damit ist er wohl
,,zu 132 % voll'' (sprich: unbenutzbar).
Gast
Hallo!
Danke für die Antwort!
Würde ich auch vermuten. Nur wenn ich das hex-File über PonyProg
einspiele funktioniert alles wunderbar!
Übrings besteht das Programm nur aus ein paar einfachen Befehlen.

Gruß Matthias
Gast
Sorry, aber wenn ich das einfach nur kopiere, ein Makefile mit "MFile"
erstelle und make all ausführe, bekomme ich folgendes Ergebnis:

AVR Memory Usage:
-----------------
Device: attiny26

Program:     128 bytes (6.2% Full)
(.text + .data + .bootloader)

Data:          0 bytes (0.0% Full)
(.data + .bss + .noinit)

bzw.:

Size after:
main.elf  :
section           size      addr
.text              128         0
.data                0   8388704
.bss                 0   8388704
.noinit              0   8388704
.eeprom              0   8454144
.debug_aranges      20         0
.debug_pubnames     27         0
.debug_info        116         0
.debug_abbrev       65         0
.debug_line        197         0
.debug_str         100         0
Total              653
Gast
...möglicherweise hast Du irgend ein printf/scanf Derivat oder gar
beides in Deinem Makefile eingeschaltet. Oder aber auch die Optimierung
abgeschaltet.

Mit printf + scanf "minimalistic" komme ich auf 128.7% bzw 2636bytes.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 21 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.