Raspberry Pi: Bare Metal CircuitPython programmieren

Zum Programmieren eines Raspberry Pi mit der Bare-Metal-Version von CircuitPython eignet sich die Entwicklungsumgebung Thonny Python IDE. Sie bietet eine einfache Oberfläche, um Code zu schreiben, zu speichern und auszuführen.

Für die Programmierung wird der Raspberry Pi über USB mit einem Host-Computer verbunden. Diese Verbindung erfüllt dabei zwei Funktionen gleichzeitig:

  • Der Raspberry Pi wird über das USB-Kabel mit Strom versorgt.
  • Über diese logische Verbindung werden die Programme übertragen und mit dem Gerät kommuniziert.

Durch diese Kombination aus Stromversorgung und Datenverbindung lässt sich der Raspberry Pi direkt vom Host-Computer aus programmieren und steuern.

Thonny Python IDE

Thonny Python IDE

Die Thonny Python IDE ist ein Editor zum Programmieren mit Python, MicroPython und CircuitPython. Es gibt ihn für verschiedene Betriebssysteme zum Download.

Verbindung

Raspberry Pi Zero

Bei einem Raspberry Pi Zero, Zero W und Zero 2 W verbindet man ein USB-Kabel mit dem linken Micro-USB-Anschluss. Darüber wird der Raspberry Pi mit Strom versorgt und gleichzeitig die logische Datenverbindung realisiert.

Bei einem Raspberry Pi 4 verbindet man ein USB-C-Kabel mit dem USB-C-Stromanschluss, der gleichzeitig auch Endgeräte-fähig ist. Es wird empfohlen, einen USB-Hub zu verwenden, der den Raspberry Pi mit Strom versorgt, bevor er mit einem Computer zum Programmieren verbunden wird.

Bei einem Raspberry Pi CM4 IO Board verbindet man ein USB-Kabel mit dem Micro-USB-Anschluss. Darüber läuft die Stromversorgung und die Datenverbindung.

Einschränkungen

Leider werden nicht alle Bestandteile von CircuitPython auf dem Raspberry Pi unterstützt. Beispielsweise fehlen wichtige Module wie „analogio“, „pwmio“, „wifi“ und weitere, weshalb manche Dinge einfach nicht realisierbar sind. Konkret bedeutet das bei diesen 3 Modulen, dass die Unterstützung für ADC, PWM und WLAN nicht vorhanden ist. Wegen der Hardware-Nähe lässt sich auch nicht einfach Software nachinstallieren. Wir haben hier kein Betriebssystem.

Empfehlung: Adafruit CircuitPython Bundle installieren

Das „Adafruit CircuitPython Bundle“ ist eine Sammlung von nützlichen CircuitPython-Bibliotheken in einer einfach zu ladenden ZIP-Datei. Insbesondere wenn man externe Geräte, Module und Boards verbinden möchte, wird man diese Sammlung häufig benötigen, da sie fertige Treiber und Hilfsbibliotheken für viele Sensoren, Displays und andere Hardware-Komponenten enthält.
Die ZIP-Datei ist zu entpacken und das Verzeichnis „lib“ in das Laufwerk „CIRCUITPY“ zu kopieren.

Hinweis: Die richtige Datei ist in der Regel „adafruit-circuitpython-bundle-XX.X-mpy-XXXXXXXX.zip“

GPIOs mit CircuitPython als digitale Eingänge und Ausgänge programmieren

Die GPIO-Pins (General Purpose Input/Output) des Raspberry Pi ermöglichen es, externe elektronische Bauteile direkt über Programme zu steuern oder Signale von ihnen zu empfangen.

HDMI-Ausgabe mit CircuitPython programmieren

Einer der Hauptvorteile von Bare Metal CircuitPython auf dem Raspberry Pi ist die einfache Verwendung eines angeschlossenen HDMI-Displays. CircuitPython verfügt mit dem integrierten displayio-Modul über eine native Unterstützung für viele Displays.

Weitere verwandte Themen:

Frag Elektronik-Kompendium.de

Elektronik-Set Raspberry Pi Edition
Elektronik-Set Raspberry Pi Edition

Elektronik erleben mit dem Raspberry Pi mit Python und GPIO Zero

  • Leichter Einstieg ins Hardware-nahe Programmieren mit Python und GPIO Zero
  • Experimentieren und Programmieren ohne Vorkenntnisse
  • Sofort Loslegen mit All-in-one-Set

Elektronik-Set jetzt bestellen

Elektronik-Fibel

Elektronik einfach und leicht verständlich

Die Elektronik-Fibel ist ein Buch über die Grundlagen der Elektronik, Bauelemente, Schaltungstechnik und Digitaltechnik.

Das will ich haben!