Skip to content

Technik Blog

Programmieren | Arduino | ESP32 | MicroPython | Python | Raspberry Pi | Raspberry Pi Pico

Menu
  • Smarthome
  • Arduino
  • ESP32 & Co.
  • Raspberry Pi & Pico
  • Solo Mining
  • Über mich
  • Deutsch
  • English
Menu

I2C OLED-Display mit Raspberry Pi Bookworm steuern – So geht’s heute

Posted on 23. Dezember 202422. Dezember 2024 by Stefan Draeger

In diesem Beitrag zeige ich dir, wie du im neuen Betriebssystem Raspbian 12 (Bookworm) ein OLED-Display via I2C mit Python 3 programmierst. In meinem früheren Beitrag „OLED Display am Raspberry Pi anschließen und per I2C steuern: So geht’s!„ hatte ich bereits erklärt, wie das mit der Vorgängerversion funktioniert. Doch die Technik hat sich weiterentwickelt, und es gibt einige Änderungen und Optimierungen, die ich in diesem überarbeiteten Leitfaden mit dir teilen möchte. Egal ob du ein Einsteiger bist oder dein Wissen auffrischen willst – hier findest du alle wichtigen Informationen, um dein OLED-Display mit einem Raspberry Pi und Raspbian Bookworm erfolgreich in Betrieb zu nehmen.

I2C OLED-Display am Raspbian Bookworm mit Python3 steuern
Dieses Video auf YouTube ansehen.

Bei der Programmierung des OLED-Displays mit Python 3 am Raspberry Pi gibt es im Umgang mit dem LUMA-Modul keine grundlegenden Änderungen. Auch unter Raspbian 12 (Bookworm) wird dieses Modul verwendet. Allerdings unterscheidet sich der Installationsprozess leicht. In meinem Fall war Python 3 bereits vorinstalliert, sodass ich nur das Modul LUMA mit dem folgenden Befehl nachinstallieren musste:

 sudo apt install python3-luma.oled

Das Modul LUMA bietet eine umfassende Unterstützung für die Programmierung der gängigsten OLED-Displays. Dazu gehören unter anderem Modelle wie SSD1306, SSD1309, SSD1322, SSD1325, SSD1327, SSD1331, SSD1351, SSD1362, SH1106, WS0010 und WEH001602. Mit diesen Treibern deckt das Modul eine breite Palette von Displays ab, die häufig in Projekten mit dem Raspberry Pi zum Einsatz kommen.

0,42" OLED-Display - SSD1306
0,42″ OLED-Display – SSD1306
0,96" OLED-Display - SSD1306
0,96″ OLED-Display – SSD1306
1,3" OLED-Display - SH1106
1,3″ OLED-Display – SH1106

Beispiel – „Hello World!“ auf einem SH1106 OLED-Display

Mit nachfolgendem Code zeigst du den Text „Hello World!“ auf dem 1,3″ OLED-Display für 5 Sekunden an. Das Display wird via I2C & SH1106 Treiberchip angesprochen.

import time
from luma.core.interface.serial import i2c, spi, pcf8574
from luma.core.interface.parallel import bitbang_6800
from luma.core.render import canvas
from luma.oled.device import sh1106
from PIL import ImageFont

serial = i2c(port=1, address=0x3C)

device = sh1106(serial)

font = ImageFont.truetype('FreeSans.ttf', 14)

with canvas(device) as draw:
    draw.rectangle(device.bounding_box, outline="white", fill="black")
    draw.text((25, 25), "Hello World!", font=font, fill="white")
time.sleep(5)

Wenn du ein anderes Display hast, wie das SSD1306,
so musst du den Import anpassen:

from luma.oled.device import sh1106
device = sh1106(serial)

from luma.oled.device import ssd1306
device = ssd1306(serial)
Text "Hello World!" auf dem 1,3" OLED-Display am Raspberry Pi
Text „Hello World!“ auf dem 1,3″ OLED-Display am Raspberry Pi

Schreibe einen Kommentar Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Fragen oder Feedback?

Du hast eine Idee, brauchst Hilfe oder möchtest Feedback loswerden?
Support-Ticket erstellen

Newsletter abonnieren

Bleib auf dem Laufenden: Erhalte regelmäßig Updates zu neuen Projekten, Tutorials und Tipps rund um Arduino, ESP32 und mehr – direkt in dein Postfach.

Jetzt Newsletter abonnieren

Unterstütze meinen Blog

Wenn dir meine Inhalte gefallen, freue ich mich über deine Unterstützung auf Tipeee.
So hilfst du mit, den Blog am Leben zu halten und neue Beiträge zu ermöglichen.

draeger-it.blog auf Tipeee unterstützen

Vielen Dank für deinen Support!
– Stefan Draeger

Kategorien

Tools

  • Unix-Zeitstempel-Rechner
  • ASCII Tabelle
  • Spannung, Strom, Widerstand und Leistung berechnen
  • Widerstandsrechner
  • 8×8 LED Matrix Tool
  • 8×16 LED Matrix Modul von Keyestudio
  • 16×16 LED Matrix – Generator

Links

Blogverzeichnis Bloggerei.de TopBlogs.de das Original - Blogverzeichnis | Blog Top Liste Blogverzeichnis trusted-blogs.com

Stefan Draeger
Königsberger Str. 13
38364 Schöningen

Tel.: 01778501273
E-Mail: info@draeger-it.blog

Folge mir auf

  • Impressum
  • Datenschutzerklärung
  • Disclaimer
  • Cookie-Richtlinie (EU)
©2025 Technik Blog | Built using WordPress and Responsive Blogily theme by Superb
Cookie-Zustimmung verwalten
Wir verwenden Technologien wie Cookies, um Geräteinformationen zu speichern und/oder darauf zuzugreifen. Wir tun dies, um das Surferlebnis zu verbessern und um personalisierte Werbung anzuzeigen. Wenn Sie diesen Technologien zustimmen, können wir Daten wie das Surfverhalten oder eindeutige IDs auf dieser Website verarbeiten. Wenn Sie Ihre Zustimmung nicht erteilen oder zurückziehen, können bestimmte Funktionen beeinträchtigt werden.
Funktional Immer aktiv
Die technische Speicherung oder der Zugang ist unbedingt erforderlich für den rechtmäßigen Zweck, die Nutzung eines bestimmten Dienstes zu ermöglichen, der vom Teilnehmer oder Nutzer ausdrücklich gewünscht wird, oder für den alleinigen Zweck, die Übertragung einer Nachricht über ein elektronisches Kommunikationsnetz durchzuführen.
Vorlieben
Die technische Speicherung oder der Zugriff ist für den rechtmäßigen Zweck der Speicherung von Präferenzen erforderlich, die nicht vom Abonnenten oder Benutzer angefordert wurden.
Statistiken
Die technische Speicherung oder der Zugriff, der ausschließlich zu statistischen Zwecken erfolgt. Die technische Speicherung oder der Zugriff, der ausschließlich zu anonymen statistischen Zwecken verwendet wird. Ohne eine Vorladung, die freiwillige Zustimmung deines Internetdienstanbieters oder zusätzliche Aufzeichnungen von Dritten können die zu diesem Zweck gespeicherten oder abgerufenen Informationen allein in der Regel nicht dazu verwendet werden, dich zu identifizieren.
Marketing
Die technische Speicherung oder der Zugriff ist erforderlich, um Nutzerprofile zu erstellen, um Werbung zu versenden oder um den Nutzer auf einer Website oder über mehrere Websites hinweg zu ähnlichen Marketingzwecken zu verfolgen.
Optionen verwalten Dienste verwalten Verwalten von {vendor_count}-Lieferanten Lese mehr über diese Zwecke
Einstellungen anzeigen
{title} {title} {title}