Dateien speichern auf dem ESP32
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: