ArduinoでOLED (128x64)を使う

前回の記事でOLEDをRaspberry Piで使っていましたが今回はArduinoで動作させてみます。 www.oki-lab.net

まずはArduino IDEを起動してライブラリをインストールします。
スケッチ→ライブラリをインクルード→ライブラリを管理でライブラリマネージャを起動。
SSD1306を検索してAdafruit SSD1306 by Adafruitをインストールします。
f:id:oki-lab:20190413223717p:plain:w400

同様にGFXと検索して、Adafruit GFX Library by Adafruitをインストールします。
f:id:oki-lab:20190413224132p:plain:w400

Arduinoのフォルダ内のlibraries→Adafruit_SSD1306内のAdafruit_SSD1306.hを開き、
最初の方にある定義部分を以下のように書き換えます。
f:id:oki-lab:20190413224420p:plain

今回はライブラリのスケッチ例で動作させます。
ファイル→スケッチ例→Adafruit SSD1306→ssd1306_128x64_i2cを開き、
名前をつけて保存します。

OLEDの裏側を見て、スケッチのvoid setup()内のdisplay.beginの部分を書き換えます。
私の場合は0x78と書かれていたので、下記のようにしました。

if(!display.begin(SSD1306_SWITCHCAPVCC, 0x78>>1)) { // Address 0x3D for 128x64
    Serial.println(F("SSD1306 allocation failed"));
    for(;;); // Don't proceed, loop forever
}

後はスケッチを書き込むと、アニメーションが始まります。 f:id:oki-lab:20190413225421j:plain