Habe erst kürzlich Erfahrungen mit diesen Displays sammeln dürfen. Habe
mir verschiedene Exemplare von verschiedenen ebay-Händlern bestellt
(1,3").
Meine Erfahrung ist, daß manchmal von den China-Händlern SSD1306
angegeben wird, aber ein SH1106 verbaut ist. Ist nicht weiter schlimm.
Die sind weitestgehend kompatibel, aber man muß sie kennen, um das
Display korrekt anzusteuern. Der SH1106 unterstützt nur die Page-weise
Addressierung und hat 132 Spalten, statt 128. Der Displayinhalt ist
mittig in diesen 132 Spalten positioniert, weshalb man immer mit einem
Spaltenoffset von 2 Arbeiten muß. Ansonsten einfach mal in den Quelltext
der u8glib schauen. Auch zu beachten ist die Beschaltung der Reset-Pins.
Manche haben bereits einen Pull-Up-Widerstand eingebaut, andere nicht.
Die Darstellungsqualität der 128x64 schwarz/weiß OLEDs ist super. Habe
sowohl SSD1306 und SH1106 erfolgreich (ohne lib, ich verwende eigenen
optimierten Code) per SPI und I2C ansteuern können (kann meistens über
Lötbrücken eingestellt werden).
Also bis 1MHz waren ohne Probleme möglich, ich steuere das Display in
meiner Anwendung per I2C und 200kHz an. Höhere Takte habe ich nicht
versucht. Der Stromverbrauch liegt üblicherweise bei < 20mA, je nach
Displayinhalt. I2C hat größeren Protokoll-Overhead, so daß die
Ansteuerung per SPI bei gleicher Frequenz schneller ist.
Ich betreibe die OLEDs mit 3,3V. Mit 5V wollten manche nicht so richtig
funktionieren, angeblich hilft ein Serienwiderstand in den
Datenleitungen, habe es aber nie probiert. Es gibt auch welche, die nur
den I2C-Bus nach außen geführt haben, aber kein ACK-Signal schicken. Das
muß bei der Ansteuerung berücksichtigt werden.