I2CのOLED液晶 SSD1306 を使ってみる
									小さなI2Cの液晶ディスプレイが欲しくて、AliExpress で1個149円の 128x32 サイズ を買ってみた。
SSD1306という型番で、多く出回ってるので、使うのは簡単。
Helixキーボードで使ってるアレ。
ちゃんとした日本のショップで買えば、1個700円台。
AliExpress で買うのはチャレンジなので、動かなくても泣かない。
今回、5個購入して最初の1個はちゃんと動いたので、ラッキー。
残り4個はまだ試してないけど、全部動くなら今年の運はもうないかも。
Arduino ライブラリ
Adafruit のライブラリを使った。 SSD1306 で検索。
アプリケーション
毎度おなじみ、M5StickC につないでみた。
I2CのPINは、以下の2つを利用。
- PIN G26 ... SDA
 - PIN G0 ... SDL
 
プログラム
上記のライブラリのサンプルを動かすために、I2CのPIN指定だけは修正が必要。
SSD1306の .begin の前にWireでPINを指定する。
void setup() {
  Serial.begin(9600);
  Wire.begin(26, 0);    // SDA: G26, SCL: G0
  // SSD1306_SWITCHCAPVCC = generate display voltage from 3.3V internally
  if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) { // Address 0x3C for 128x32
    Serial.println(F("SSD1306 allocation failed"));
    for(;;); // Don't proceed, loop forever
  }
...
表示
サンプルの OLED_featherwing を動かしてみた。
このくらいの情報が表示できると、色々使えそう。
サンプル ssd1306_128x32_i2c





