Der von mir verwendete ESP32 hat einen Speicher von 4 MB. Durch die Installation von MicroPython wird auf dem ESP32 ein FAT-Dateisystem erzeugt. Dateien können mit ampy, Thonny oder Pymakr vom PC auf den ESP32 kopiert werden (siehe hierzu Ein weiterer Microcontroller: Der ESP32 ). So werden auch die Programmdateien - insbesondere die boot.py und die main.py auf den ESP32 kopiert.

Es ist aber auch möglich, Dateien aus MicroPython-Programmen heraus zu erzeugen, zu schreiben und zu lesen. So können beispielsweise auch Messwerte in Dateien geschrieben werden, sofern die Datenmenge kleiner als der vorhandene Speicher ist.

Eine neue Datei kann wie folgt erzeugt werden:

file = open ("test.txt", "w")
file.write("Das Pferd frisst keinen Gurkensalat.")
file.close()

Zunächst muss die Datei geöffnet werden. Das erste Argument ist dabei der Dateinamen, das zweite Argumente der Modus, in dem die Datei geöffnet wird. Es gibt:

  • r -Lesen
  • rb - binäres lesen
  • w - Schreiben
  • wb - binäres Schreiben
  • a - Anhängen

Zum Schreiben von Text wählen wir den Modus 'w'. Anschließend wird mit write der Text in die Datei geschrieben und diese dann mit close wieder geschlossen.

Nun lesen wir die Inhalte aus der Datei:

file = open ("test.txt", "r")
print(file.read())
file.close()

Wir können auch Inhalte anhängen:

file = open ("test.txt", "a")
file.write("\n"+"Das Pferd frisst keinen Tomatensalat.")
file.close()

Wenn der zusätzliche Inhalt in der nächsten Zeile anfangen soll, müssen wir Dabei mit \n einen Zeilenumbruch einfügen.

Zur Verwaltung der Dateien wird das Modul os benötigt:

import os

Dann können wir den Verzeichnisinhalt auflisten:

os.listdir()

Dateien umbenennen:

os.rename('test.txt', 'new.txt')

Dateien löschen:

os.remove('new.txt')

Verzeichnis anlegen:

os.mkdir('ordner1')

Verzeichnis wechseln:

os.chdir('ordner1')

Weitere Infos: