Make Magazin 3/2024
S. 92
Make
Know-how

Speicherverbrauch in Mikrocontrollern

In der Make 2/24 haben wir erklärt, an welchen Stellen im Adressraum eines Mikrocontrollers RAM, ROM und I/O liegen. Nun erklären wir, wo im RAM Programme welche Art von Daten ablegen.

von Daniel Bachfeld

Wenn man in der Arduino IDE einfache Anwendungen wie LED-blinken-lassen und Servo-Motor-ansteuern programmiert, muss man sich in der Regel nicht mit Speicheraufteilungen beschäftigen. Bei längeren und komplexeren Programmen kann es aber passieren, dass die Ressourcen des gewählten Mikrocontrollers nicht ausreichen. Passt mein Programm in den Flash? Reicht der RAM, um Bilddaten zur Laufzeit zwischenzuspeichern? Nicht selten stürzt ein Programm erst nach einer gewissen Zeit ab, weil sein RAM voll ist.

Manche Programmierer probieren dann einfach einen Mikrocontroller mit mehr Flash und / oder RAM, manche optimieren hingegen den Speicherverbrauch ihres Programms. Bei Letzterem muss man verstehen, in welchem Teil des Speichers das Programm und die statischen oder dynamischen Daten abgelegt werden.