In diesem aktualisierten Beitrag möchte ich dir zeigen, wie du einen Text auf dem 0,66 Zoll OLED Display für den Wemos D1 mini ausgeben kannst.
Ich hatte bereits einen Beitrag unter Wemos D1 mini Shield: 0,66 Zoll OLED Display dazu veröffentlicht, jedoch ist die aktuelle Bibliothek von Adafruit nicht mehr kompatibel. ABER es gibt einen Ersatz welcher sehr gut funktioniert.
Ich verwende die aktuelle Arduino IDE in der Version 1.8.13 welche du kostenfrei unter https://www.arduino.cc/en/Main/Software herunterladen kannst.
benötigte Bibliotheken für das OLED Display
Für den Betrieb des Displays benötigst du die Adafruit GFX Bibliothek und Adafruit SSD1306 Wemos Mini OLED Bibliothek. Beide Bibliotheken findest du im Bibliotheksverwalter der Arduino IDE.
Es ist wichtig das die Bibliothek “Adafruit SSD1306” nicht parallel installiert ist. Das würde dazu führen das die Display Abmaße nicht korrekt ermittelt werden können und der Vorgang des kompilierens abgebrochen wird.
Wenn noch die alte Bibliothek in der Arduino IDE enthalten ist kann diese einfach über dem Explorer unter C:\Users\<BENUTZERNAME>\Documents\Arduino\libraries gelöscht werden.
Beispiel – “Hallo Welt!”
Nachdem wir die neue Bibliothek “Adafruit SSD1306 Wemos Mini OLED” installiert und ggf. die alte Bibliothek gelöscht haben wollen wir einen einfachen Text auf dem Display ausgeben.
#include <SPI.h> #include <Wire.h> #include <Adafruit_GFX.h> #include <Adafruit_SSD1306.h> #define OLED_RESET 0 Adafruit_SSD1306 display(OLED_RESET); void setup() { Serial.begin(9600); display.begin(SSD1306_SWITCHCAPVCC, 0x3C); display.display(); delay(2000); display.clearDisplay(); } void loop() { display.clearDisplay(); display.setTextSize(1); display.setTextColor(WHITE); display.setCursor(0,0); display.println("Hallo Welt!"); display.display(); delay(2000); }
In dem nachfolgenden Video zeige ich dir den Upload des obrigen Beispieles mit dem Text “Hallo Welt!”. Leider ist dieser Text länger als die maximale Breite des Displays so dass, das Ausrufezeichen in die nächste Zeile umgebrochen wird.
Fazit
Mit der neuen Bibliothek “Adafruit SSD1306 Wemos D1 Mini OLED” ist es nun möglich Texte und Grafiken auf dem Display darzustellen ohne das man einen Offset für die Spalte verwenden muss. Man kann also direkt mit der Spalte 0 / Zeile 0 beginnen.
Ansonsten konnte ich für den ersten Test keine groben Änderungen erkennen.
Hallo,
ich habe einen Wemos D1 Mini und folgenden OLED Shield http://www.esp8266learning.com/wemos-oled-shield-example.php
Wenn ich deinen Code aber auf meinen D1 hochlade gibt es eine Fehlerhafte Darstellung. Man kann im oberen Drittel halb “adaFr” lesen und auf dem Rest des Displays sind ein paar weiße Pixel. Ich habe schon die Version aus deinem anderen Blog gelesen, welche allerdings auch nicht klappt. Ich benutze die Arduino IDE und habe die entsprechenden Libraries installiert. Andere Sketches klappen einwandfrei, nur das Display scheint ein Problem zu sein. Den gleichen Fehler habe ich auch schon bei anderen gesehen.
Hast du eine Idee, woran es liegen kann?
VG und einen schönen Sonntag,
Sebastian
Hallo,
ich habe einen Wemos D1 Mini und folgenden OLED Shield http://www.esp8266learning.com/wemos-oled-shield-example.php
Wenn ich deinen Code aber auf meinen D1 hochlade gibt es eine fehlerhafte Darstellung. Man kann im oberen Drittel halb “adaFr” lesen und auf dem Rest des Displays sind ein paar weiße Pixel. Ich habe schon die Version aus deinem anderen Blog gelesen, welche allerdings auch nicht klappt. Ich benutze die Arduino IDE und habe die entsprechenden Libraries installiert. Andere Sketches klappen einwandfrei, nur das Display scheint ein Problem zu sein. Den gleichen Fehler habe ich auch schon bei anderen gesehen.
Hast du eine Idee, woran es liegen kann?
VG und einen schönen Sonntag,
Sebastian