Seeeduino Nano mit M5Stack OLED UNIT SH1107

In diesem Beitrag möchte ich dir zeigen wie du die OLED UNIT SH1107 von M5Stack am Seeeduino Nano programmierst und dort Sensorwerte anzeigen lassen kannst.

M5Stack OLED UNIT SH1107
M5Stack OLED UNIT SH1107

Das 1,3″ OLED Display habe ich dir bereits im Beitrag Programmieren der OLED UNIT SH1107 am M5Stack ATOM vorgestellt und gezeigt wie du dieses am M5Stack ATOM Lite mit UIFlow programmieren kannst. Hier zeige ich dir jedoch einen Weg über die Arduino IDE.

Bezug einer OLED UNIT SH1107 & eines Seeeduino Nano

Das OLED Display bekommst du im offiziellen Shop von M5Stack für knapp 11 $ zzgl. Versandkosten. Den Seeeduino Nano bekommst du im Shop von Seeedstudio für 7.6 $ zzgl. Versandkosten. Da beide Shops aus dem Ausland versenden musst du die noch ggf. zusätzliche Einfuhrabgaben einberechnen, daher lohnt sich hier auch ein blick in deutsche Shops wie

  • https://eckstein-shop.de
  • https://www.roboter-bausatz.de/
  • https://www.ebay.de/
  • https://www.amazon.de/

Grove Shield Expansion Board

Für das Seeeduino Nano Board bekommst du zusätzlich ein Expansion Board welches zusätzliche Grove Schnittstellen bereitstellt.

Dieses nützliche Board bekommst du ebenfalls im Shop von Seeedstudio unter Grove Shield for Arduino Nano.

Aufbau der Schaltung

Da das OLED Display über eine Grove Schnittstelle verfügt ist der Aufbau recht einfach. Es muss lediglich das passende Kabel mit dem I²C Anschluss des Grove Shield Expansion Board verbunden werden.

Seeeduino Nano mit OLED Display SH1107 von M5Stack
Seeeduino Nano mit OLED Display SH1107 von M5Stack

Programmieren des OLED Displays SH1107 mit der Arduino IDE

Den Seeeduino Nano kannst du in der Arduino IDE programmieren, bzw. programmierst du mit diesem Programm die Sketche für den Mikrocontroller.

Einbinden der benötigten Bibliothek von Adafruit

Für das OLED Display gibt es auch einen passenden Treiber von Adafruit. Diese Firma bietet sehr viele und vor allem sehr gute Treiber für diverse Sensoren / Aktoren rund um den Arduino, ESPx und auch Raspberry PI Pico.

Diesen Treiber installierst du am einfachsten über den Bibliotheksverwalter, dieses Tool erreichst du über das Hauptmenü „Sketch“ > „Bibliothek einbinden“ > „Bibliotheken verwalten“.

Im Bibliotheksverwalter suchst du zunächst nach dem Schlagwort „sh1107“ (1) und wählst den Eintrag mit „Adafruit SH110X“ aus indem du die Schaltfläche „Installieren“ (2) betätigst.

installieren des Treibers "Adafruit SH110X" über den Bibliotheksverwalter der Arduino IDE
Installieren des Treibers „Adafruit SH110X“ über den Bibliotheksverwalter der Arduino IDE

Je nach Internetgeschwindigkeit kann dieser Vorgang etwas dauern.

einfaches „Hello World!“ auf dem Display anzeigen

Wollen wir mit einem einfachen Beispiel starten, das bekannte „Hello World!“.

Zeichenkette "Hello World!" auf dem OLED Display SH1107 von M5Stack mit dem Seeeduino Nano
Zeichenkette „Hello World!“ auf dem OLED Display SH1107 von M5Stack mit dem Seeeduino Nano

Das kleine Programm zu diesem Beispiel sieht wie folgt aus:

//Bibliotheken für die Kommunikation mit dem OLED Display
#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SH110X.h>

//initialisieren des Displays mit den abmaßen 128 x 64 Pixel
Adafruit_SH1107 display = Adafruit_SH1107(64, 128, &Wire);

void setup() {
  //Das OLED Display ist per
  //I2C angeschlossen und wird
  //mit der Adresse 0x3C angesprochen
  display.begin(0x3C, true);
  //leeren des Displays
  display.clearDisplay();
  display.display();
  //drehen der Anzeige um 90°
  display.setRotation(1);
  //Schriftgröße auf 2 setzen
  display.setTextSize(2);
  //Textfarbe "weiß"
  display.setTextColor(SH110X_WHITE);
  //eine Zeile Ausgeben und einen Zeilenumbruch
  //tätigen
  display.println("Hello");
  display.println("World!");
  //Text anzeigen
  display.display();
}

void loop() {//bleibt leer}

Ein Vorteil bei der Programmierung über der Arduino IDE ist es das die Textgröße angepasst werden kann, das Web-Tool UIFlow von M5Stack kann dieses beim OLED Display noch nicht. Aber da das Display gerade erst im Mai 2021 veröffentlicht wurde, wird bestimmt bald ein Update erscheinen, wo dieses gefixt wird.

Kommentar hinterlassen

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