Aus Raspberry Pi Geek 06/2022

Einstieg in die MCU-Programmierung mit Micropython

© Chanin Thienwiwatnukul / 123RF.com

Kleine Schlange

Martin Mohr

In der traditionellen Mikrocontrollerprogrammierung kommt üblicherweise C oder C++ zum Einsatz. Allerdings bietet sich auch Python als Alternative an.

Im Mittelpunkt dieser Versuchsreihe steht ein NodeMCU-Entwicklungs-Board mit einem ESP32, da AZ-Delivery [1] für knapp 12 Euro anbietet. Der allgemeine Chipmangel macht sich mittlerweile auch in der Bastlerwelt bemerkbar: Das Board gab es noch vor wenigen Monaten erheblich günstiger. Ein Artikel [2] aus RPG 01-02/2022, den Sie auch im Download-Bereich zu diesem Artikel finden, beschreibt die Leistungsmerkmale des NodeMCU-Boards mit dem ESP32 im Detail.

Als Bildschirm verwenden wir ein einfaches 0,96-Zoll-OLED-Display [3] für etwa 7 Euro. Damit es blinkt, kommen noch ein paar LEDs mit Vorwiderständen dazu. Setzt man Bargraph-LEDs ein, sieht der Aufbau aufgeräumt aus, es lassen sich aber auch einzelne Dioden verwenden. Damit etwas in der Anzeige des Displays erscheint, bauen wir noch einen Temperatursensor des Typs DS18B20 [4] mit ein. Im Zehnerpack kommt er auf etwa 1 Euro pro Stück, einzeln gekauft schlägt er mit 4,50 Euro zu Buche. Die Temperatursensoren lassen sich ohne Probleme in weiteren Projekten einsetzen.

Für einfache Eingaben kommen zu guter Letzt noch drei Taster hinzu (Abbildung 1). Der Schaltplan (Abbildung 2) zeigt, wie alle Komponenten zusammen gehören. Hierbei gilt es, zu beachten, dass die Software alle Pullup- und Pulldown-Widerstände über den ESP32 bereitstellt. Da immer noch NodeMCU-Boards mit einer fehlerhaften Upload-Funktion im Umlauf sind, kommt der Kondensator C1 zum Einsatz, um dieses Problem zu fixen. Im Download-Bereich zu diesem Artikel finden Sie die KiCad-Dateien mit dem Schaltplan.

Abbildung 1: Unser Versuchsaufbau mit Display, LEDs und Tastern.

Abbildung 1: Unser Versuchsaufbau mit Display, LEDs und Tastern.

Abbildung 2: Der Schaltplan für den Micropython-Versuchsaufbau.

Abbildung 2: Der Schaltplan für den Micropython-Versuchsaufbau.

Software

Micropython entstand speziell zum Programmieren von Mikrocontrollern. Die von Python 3 abgeleitete Skriptsprache verfügt über zusätzliche Module, die den Zugriff auf Hardware ermöglichen. Als IDE für Micropython bietet sich Thonny [5] an. Es besitzt einige Funktionen, die den Einstieg in in die Programmierung sehr erleichtern.

Die IDE steht für Linux, MacOS und Windows kostenfrei zum Herunterladen bereit, die Installation läuft sauber durch. Bei vielen Linux-Distributionen, etwa Ubuntu oder Pi OS, lässt sich die Installation einfach über den Paketmanager starten. Allerdings bekommt man auf diesem Weg nur veraltete Versionen. Daher starten Sie die Installation am besten mit dem Kommando aus Listing 1.

Listing 1

Thonny installieren

# bash <(wget -O - https://thonny.org/installer-for-linux)

Nach dem Abschluss der Installation müssen Sie noch ein Paket für den ESP32 installieren. Starten Sie dazu Thonny. In Menü unter Extras | Verwalte Pakete befindet sich der Paketmanager, mit dem Sie nun das Paket esptool suchen und installieren. Damit Thommy das installierte Paket verwenden kann, starten Sie die IDE neu.

Um Micropython auf dem ESP32 einzusetzen, benötigen Sie als Erstes das Image der passenden Firmware. Besuchen Sie dafür den Download-Bereich der Micropython-Homepage [6] und laden Sie das neueste Firmware-Image herunter. Achten Sie dabei darauf, die aktuellste Datei mit der Endung .bin zu verwenden.

Es gibt es verschiedene Wege, um das Image auf den ESP32 zu übertragen. Am einfachsten verwenden Sie die in Thonny integrierte Funktion. Navigieren Sie hierfür zum Menüpunkt Extras | Optionen | Interpreter. Wählen Sie dort MicroPython (ESP32) und den Port, an dem der ESP32 angeschlossen ist (Abbildung 3). Der Port trägt je nach Betriebssystem einen anderen Namen. Der Eintrag erscheint auch nur, wenn Sie das NodeMCU-Board über USB an ihren PC anschließen.

Abbildung 3: Die Einstellungen f&uuml;r den Firmware-Upload; hier als Beispiel die Settings f&uuml;r Ubuntu.

Abbildung 3: Die Einstellungen für den Firmware-Upload; hier als Beispiel die Settings für Ubuntu.

Klicken Sie jetzt unten im Fenster auf Installieren oder aktualisieren der Firmware. Falls die Software den Port nicht automatisch ausfüllt, wählen Sie ihn noch einmal aus. Im Feld Firmware tragen Sie den Pfad zum schon heruntergeladenen Image ein (Abbildung 4).

Abbildung 4: Die Installation des Micropython-Images erfordert nur wenige Mausklicks.

Abbildung 4: Die Installation des Micropython-Images erfordert nur wenige Mausklicks.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 6 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
RASPBERRY PI GEEK KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Raspberry Pi Geek bei Google Play Readly Logo
Nach oben