> diese Bibliothek
Beim Suchen habe ich 4 Github Projekte und ein paar Blogs gefunden aber teilweise mit erheblichem Versionsunterschied.
Wenn du also verraten kannst welche Version und von wo könnte man vielleicht etwas besser antworten
Hallo zusammen,
habe mal wieder ein kleine Frage.
Ich benutze seit einiger Zeit diese Bibliothek für mein OLED-Display (128x64), an einem Arduino Pro Mini und auch an einer NodeMCU.
Läuft soweit zu meiner vollen Zufriedenheit.
Jetzt möchte ich zur Abrundung meines aktuellen Projektes etwas für die Lebensdauer des OLED tun, indem ich es nachts ausschalte und morgens wieder ein (Uhr ist drin).
Leider kenne ich nicht die passenden Befehle (sofern die überhaupt existieren).
In der SSD1306init.h taucht z.B. mal folgendes auf: #define SSD1306_DISPLAYON 0xAF.
Ich bin daher mal davon ausgegangen das es sowas wie ein DisplayON und DisplayOFF geben könnte.
Wer ist mit der Lib besser vertraut als ich und kann mir einen Hinweis geben wie ich diese Befehle einsetzen muß??
Gruß Volker
> diese Bibliothek
Beim Suchen habe ich 4 Github Projekte und ein paar Blogs gefunden aber teilweise mit erheblichem Versionsunterschied.
Wenn du also verraten kannst welche Version und von wo könnte man vielleicht etwas besser antworten
Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
nicht.
Im Datenblatt zum SSD1306, Rev 1.1 vom Apr 2008, © 2008 Solomon Systech Limited, steht in der Table 9-1: Command Table unter anderem :.. diese Bibliothek für mein OLED .. Läuft soweit zu meiner vollen Zufriedenheit .. Leider kenne ich nicht die passenden Befehle (sofern die überhaupt existieren) ..
In der von Dir zitierten Headedateien steht ja passend ein on-Befehl, oder? In (m)einer cpp-Headerdatei steht jedenfalls so was praktisches wieCode:.. Entire Display ON A4h, X0=0b: Resume to RAM content display (RESET) Output follows RAM content A5h, X0=1b: Entire display ON Output ignores RAM content Set Display ON/OFF AEh, X[0]=0b:Display OFF (sleep mode) (RESET) AFh X[0]=1b:Display ON in normal mode
Wie das im arduinocode verwendet wird kann ich Dir aber nicht schreiben. Ich programmiere in C und Cpp. Vielleicht mal Datenblatt lesen, zumindest aber die ganze Headerdatei und die Bibliothek selbst.Code:#define SSD1306_DISPLAYOFF 0xAE .. #define SSD1306_DISPLAYON 0xAF
Ciao sagt der JoeamBerg
Hallo, und Danke für eure Mühe.
Ich dachte SSD1306Ascii wäre eindeutig genug. Soweit ich weiß gibt es davon nur eine vom Bill Greimann.
Aber wie das manchmal so ist, habe tagelang nach einer Lösung gesucht und nicht gefunden, zumal in der Doku zur Library auch nichts zielführendes steht.
Gestern dann durch Zufall den nachfolgenden Link entdeckt. Ich denke das probiere ich mal aus.
https://forums.adafruit.com/viewtopic.php?f=47&t=45520
Gruß Volker
- - - Aktualisiert - - -
Bin schon wieder da,
hab mal einen der Befehle in meinen Sketch eingebaut und versucht zu compilieren, das ist das Ergebnis:
Was mache ich da falsch?
Die Bibliothek ist übrigens diese hier:
https://github.com/greiman/SSD1306Ascii
Gruß Volker
So ihr Lieben,
wollte euch noch kurz Rückmeldung geben, wie die richtigen Befehle heißen:
oled.ssd1306WriteCmd(SSD1306_DISPLAYOFF);
oled.ssd1306WriteCmd(SSD1306_DISPLAYON);
Damit hat es jetzt funktioniert. Die Info stammt direkt von Greimann.
Gruß Volker
Lesezeichen