Raspberry Pi Pico: Speicher

Wie jeder Mikrocontroller hat der Raspberry Pi Pico zwei Speicher. Man unterscheidet den Arbeitsspeicher, oft mit RAM abgekürzt, was für Random Access Memory steht. Und der Programm- und Datenspeicher in Form eines Flash-Memorys zur dauerhaften Datenhaltung. Der Arbeitsspeicher wird vom Prozessor genutzt, um Daten und das Programm zur Verarbeitung bereitzuhalten. Er ist schnell, aber die Daten sind bei einem Stromverlust weg. Im etwas langsameren Flash-Memory befinden sich die Firmware mit der Laufzeitumgebung, die Programmcodes und eventuell gespeicherte Daten.

  • Arbeitsspeicher (RAM): 264 kByte SRAM
  • Programmspeicher: 2 MiByte Q-SPI-Flash

Hinweis: Tatsächlich kann der Mikrocontroller RP2040 bis zu 16 MiB QSPI-Flash adressieren. Der RP Pico hat aber nur 2 MiB Flash-Memory.

Wie viel freien Speicher hat der Raspberry Pi Pico?

Da ist zuerst die Frage, welcher Speicher gemeint ist. Arbeitsspeicher oder Flash-Speicher?

Wie viel freien Arbeitsspeicher hat der Raspberry Pi Pico?

Der folgende Programmcode ermittelt die Größe des Arbeitsspeichers und wie viel noch frei ist.

# Bibliotheken laden
import gc

# Funktion: Arbeitsspeicher
def free(full=False):
    gc.collect()
    F = gc.mem_free()
    A = gc.mem_alloc()
    T = F + A
    P = '{0:.2f}%' . format(F / T * 100)
    if not full: return P
    else : return ('Gesamt: {0} kByte / Frei: {1} kByte ({2})' . format( T, F, P ) )

print('Arbeitsspeicher', free(True))

Wie viel freien Flash-Speicher hat der Raspberry Pi Pico?

Der folgende Programmcode ermittelt die Größe des Flash-Speichers und wie viel noch frei ist.

# Bibliotheken laden
import os

# Funktion: Flash-Memory
def df():
    mebibyte = 1024 * 1024
    s = os.statvfs('//')
    return ('Gesamt: {0} MiByte / Frei: {1} MiByte' . format( (s[0] * s[2]) / mebibyte, (s[0] * s[3]) / mebibyte ) )

print('Flash-Memory', df())

Warum zeigt mein Pico nicht mehr als 2 MByte Flash-Speicher an?

Es gibt auch von anderen Herstellern Mikrocontroller-Boards mit dem RP2040, die über mehr als 2 MByte Flash-Speicher verfügen. Da erwartet man natürlich, dass auch mehr als 2 MByte Flash-Speicher angezeigt werden. Das funktioniert natürlich nur, wenn auch die richtige Firmware vom betreffenden Hersteller aufgespielt wurde. Denn nur dann kann der gesamte Flash-Speicher angesprochen und die richtigen Werte angezeigt werden.

Mein Pico zeigt im Dateimanager mehr als 2 MiByte Flash-Speicher an.

Wenn man den Pico mit gedrückter BOOTSEL-Taste mit dem USB verbindet, dann wird er als Laufwerk ins Dateisystem eingebunden. Die Speichergröße liegt dann deutlich über 2 MiByte.
Grundsätzlich gilt, dass der Pico nur ein Dummy-FAT12-Dateisystem hat. Das ist kein richtiges Dateisystem. Es dient nur dazu, dass man die Firmware durch Kopieren auf den Pico schreiben kann. Dabei wird irgendeine Laufwerksgröße angezeigt, um das Laufwerk für das Betriebssystem zu simulieren. Der vom Dateimanager angezeigte Wert ist also Fake.

Weitere verwandte Themen:

Teilen:

Hardware-nahes Programmieren mit dem Raspberry Pi Pico und MicroPython

Elektronik-Set Pico Edition

Das Elektronik-Set Pico Edition ist ein Bauteile-Sortiment mit Anleitung zum Experimentieren und Programmieren mit MicroPython.

  • LED: Einschalten, ausschalten, blinken und Helligkeit steuern
  • Taster: Entprellen und Zustände anzeigen
  • LED mit Taster einschalten und ausschalten
  • Ampel- und Lauflicht-Steuerung
  • Elektronischer Würfel
  • Eigene Steuerungen programmieren

Elektronik-Set jetzt bestellen Online-Workshop buchen

Programmieren mit dem Raspberry Pi Pico
Online-Workshop

Hardware-nahes Programmieren mit dem Raspberry Pi Pico

Gemeinsam mit anderen und unter Anleitung experimentieren? Wir bieten unterschiedliche Online-Workshops zum Raspberry Pi Pico und MicroPython an. Einführung in die Programmierung, Sensoren programmieren und kalibrieren, sowie Internet of Things und Smart Home über WLAN und MQTT.

Online-Workshop buchen

Für Ihre Fragen zu unseren Online-Workshops mit dem Raspberry Pi Pico besuchen Sie unseren PicoTalk (Online-Meeting). (Headset empfohlen)

Zum PicoTalk

 

Elektronik-Set Pico Edition
Elektronik-Set Pico Edition

Raspberry Pi Pico: Hardware-nahes Programmieren mit MicroPython

Leichter Einstieg mit All-in-one-Set zum sofort Loslegen, um eigene Steuerungen programmieren.

Elektronik-Set jetzt bestellen

 

Elektronik-Set Pico WLAN Edition
Elektronik-Set Pico WLAN Edition

Raspberry Pi Pico W: IoT und Smart Home mit WLAN und MQTT

Betreibe Deinen Raspberry Pi Pico W als drahtloser Sensor in Deinem WLAN, versende E-Mails mit Daten und kommuniziere per MQTT im Internet of Things oder Smart Home.

Elektronik-Set jetzt bestellen

 

Elektronik-Set Sensor Edition
Elektronik-Set Sensor Edition

Erweiterung zu den Elektronik-Sets Pico Edition und Pico WLAN Edition

Elektronik-Set mit den beliebtesten Sensoren zum Messen von Temperatur, Helligkeit, Bewegung, Lautstärke und Entfernung.

Elektronik-Set jetzt bestellen