Willst du lernen, wie du ein I2C-Display mit dem Raspberry Pi Pico und PicoMite / BASIC zum Laufen bringst? In diesem Artikel zeige ich dir einfache Schritte, um beeindruckende Ergebnisse zu erzielen. Egal, ob du ein Anfänger oder bereits erfahrener Raspberry Pi-Nutzer bist, meine detaillierte Anleitung hilft dir dabei, das Display anzuschließen und zu programmieren. Tauchen wir gleich ein und entdecke mit mir die faszinierende Welt der I2C-Displays mit Raspberry Pi Pico und PicoMite!
In vergangenen Beiträgen hatte ich dir bereits gezeigt, wie du eine RealTimeClock an den Pi Pico anschließt und programmierst, hier möchte ich an den Beitrag nun anknüpfen und die Werte für Datum & Uhrzeit auf dem Display anzeigen.
I2C Schnittstellen am Raspberry Pi Pico
Der Raspberry Pi Pico & Pico W haben mehrere I2C Schnittstellen, damit kannst du mehrere Displays betreiben (vorausgesetzt die Adressen sind verschieden).
Das Bild enthält das Pinout des Raspberry Pi Pico dieser Mikrocontroller ist das Vorgängermodell des Pico W. Jedoch ist die Pinbelegung gleich, daher ist das Bild noch aktuell (Stand 29.05.2023).
Einrichten der I2C Schnittstelle in PicoMite
Bevor wir die I2C Schnittstelle an den gewünschten Pins verwenden können, müssen wir diese konfigurieren.
In meinem Fall verwende ich ein I2C-Display mit dem Treiberchip SSD1306, dieser wird auch vom System unterstützt und kann mit dem nachfolgenden Befehl eingerichtet werden.
OPTION LCDPANEL SSD1306I2C, <<orientation>>, [offset]
Für den Platzhalter “<<orientation>>” setzt du den Wert für Hochform- oder Querformat.
- Hochformat = L,
- Querformat = P
Mit dem optionalen Parameter offset kannst du dein I2C-Display ausrichten. Wenn du ein 0,96″ OLED Display verwendest, dann ist dieser Parameter 0 (default, kann also entfallen). Solltest du jedoch ein 1,3″ OLED Display verwenden, so musst du als Parameter 2 wählen.
In meinem Fall nutze ich ein 1,3″ OLED Display im Querformat und muss dann nachfolgenden Befehl eingeben:
OPTION LCDPANEL SSD1306I2C, L, 2
Ausgeben von “Hello World!” auf dem I2C-Display
Starten wir zunächst recht einfach und geben die Textzeile “Hello World!” auf dem Display aus.
Der Basic Befehl für die Ausgabe von Text lautet “Text” und hat die Parameter:
- Position [X,Y],
- Ausrichtung,
- Schriftgröße,
- Schriftfarbe,
- Hintergrundfarbe
Wenn wir nun den Befehl Text mit dem nachfolgenden Parameter eingeben, dann wird ein Text “Hello World!” an der Position X=10, Y=0 im Querformat angezeigt (siehe Grafik oben).
Text 10, 0, "Hello World!", "L", 1, 1, RGB(WHITE), RGB(BLACK)
Mein OLED Display kann nur Schwarz & Weiß anzeigen, daher setzte ich in meinem Fall mit RGB lediglich White & Black. Solltest du ein Farbiges OLED Display verwenden, so kannst du hier auch andere Werte setzen.
Anzeigen von Datum & Uhrzeit auf dem I2C-Display mit BASIC am Raspberry Pi Pico
Wie du eine RTC an den Raspberry Pi Pico anschließt und mit PicoMite ausliest, habe ich dir bereits im Beitrag Raspberry Pi Pico BASIC #6 – RealTimeClock programmieren erläutert. In diesem Abschnitt möchte ich dir jetzt gerne zeigen, wie du diese Werte auf einem OLED Display anzeigen lassen kannst.
Im nachfolgenden YouTube-Video erläutere ich dir Schritt-für-Schritt, wie du die Schaltung aufbaust und das kleine Programm in Basic mit PicoMite programmierst.
Ausblick
In der offiziellen Dokumentation zu PicoMite unter https://geoffg.net/Downloads/picomite/PicoMite_User_Manual.pdf findest du viele Weitere GUI Elemente (Dialoge, Buttons, Diagramme, etc.) welche du auf deinem Display mit wenigen Zeilen programmieren kannst.
Im nächsten Beitrag möchte ich daher ein kleines Dashboard erzeugen, um dort Sensorwerte zu visualisieren, sei also gespannt …