-         

Ergebnis 1 bis 5 von 5

Thema: gefühlter Ram

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    06.02.2007
    Beiträge
    139

    gefühlter Ram

    Anzeige

    Hallo

    Ich wollte einmal Fragen wie bekomme ich ein Gefühl dafür wie viel Ram ich gerade verbrauche (in der Software) weil ich es oft schwär einschätzen kann welchen controller ich benutzen soll bzw wo ich jetzt im Programm an zb Funktionsaufrufen sparen soll...

    LG manhunt

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    21.05.2008
    Ort
    Oststeinbek
    Alter
    28
    Beiträge
    607
    Wenn du nicht allzuheftige Programme schreibst, dann sollte der RAM (SRAM) von 512Byte eigentlich ausreichen.
    Aber wenn du dich so sehr daführ interessierst, gibt es 2 Möglichkeiten: Lerne Assembler und schau dir das compilierte Programm an, und zähl, wieviel gerade im SRAM gespeichert ist.
    Oder: du lädst dir einen Debugger runter, und lässt dir zu allen möglichen Zeitpunkten anzeigen, wieviel gerade im SRAM steht.

    Grüße, Yaro

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.07.2004
    Ort
    Südhessen
    Beiträge
    1.312
    Verwende am Ende des Compiliervorgangs einfach AVR-size, dann sagt er Dir genau, wieviel KB RAM du verwendest und wieviel % das von Deinem Controller ist.
    Bei AVR-Studio mit GCC sollte das automatisch passieren, ansonsten muss es irgendwo eingestellt werden.

    Bei mir sieht das z.B. heute so aus:
    Code:
    AVR Memory Usage
    ----------------
    Device: atmega1280
    Program:    6670 bytes (5.1% Full)
    (.text + .data + .bootloader)
    Data:         11 bytes (0.1% Full)
    (.data + .bss + .noinit)
    Der Teil mit "data" entspricht dem RAM.

  4. #4
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    06.02.2007
    Beiträge
    139
    gibt AVR size nicht einfach nur auskunft über auslasstung von flash und eeprom?

    Ram auslastung ist ja dynamisch und kann ja nur zur Laufzeit benutzt werden...

    lg manhunt

  5. #5
    Erfahrener Benutzer Robotik Einstein Avatar von SprinterSB
    Registriert seit
    09.06.2005
    Ort
    An der Saar
    Beiträge
    2.801
    Für die statische RAM-Analyse ist avr-size in Ordnung.

    Um ein Gefühl für den dynamischen Speicherverbrauch zu bekommen (ohne malloc et al., brauch man für AVR eh nicht) mach ich das wie in
    http://www.roboternetz.de/wissen/ind...en_mit_avr-gcc
    beschrieben.

    Die notwendigen Routinen brauchen zwar auch etwas RAM, aber wenn man es geschickt macht nur ein paar Byte.

    Der dynamische RAM-Verbrauch ist abhängig von der Verschachtelungstiefe der Funktionen, von deren Frame-Größe sowie von der Anzahl der zugelassenen Interrupt-Ebenen (in den meisten meiner Anwendungen brauch ich kaskadierende IRQs), welche sich auf die Stack-Größe auswirken.
    Disclaimer: none. Sue me.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •