##目的
今回やったことについてまとめていきたいと思います。
当方電子工作初心者なので間違い等ありましたら指摘して頂くと助かります。
##環境
Arduino IDE 1.8.9
ELEGO UNO R3
HiLetgo 0.96" I2C シリアル 128×64 OLED LCDディスプレイSSD1306液晶 STM32/51/MSP430/Arduinoに対応 ホワイト(こちらで入手しました)
##やってみた
こちらを参考にさせて頂きました。
Adafruit SSD 1306(1.8.1)とAdafruit GFX Liblary(1.5.5)をライブラリーマネージャでインストール。
ヘッダーファイルの書き換えが必要なので、Adafruit_SSD1306.hの
// ONE of the following three lines must be #defined:
#define SSD1306_128_64 ///< DEPRECTAED: old way to specify 128x64 screen
//#define SSD1306_128_32 ///< DEPRECATED: old way to specify 128x32 screen
//#define SSD1306_96_16 ///< DEPRECATED: old way to specify 96x16 screen
を書き換えました。デフォルトでは128×32の方になっていたので今回使用する方に合わせます。今回のAdafruit_SSD1306.h(1.8.1)ではサンプルプログラムを動かすのにこの部分以外を変更する必要はありませんでした。
次にスケッチ例のサンプルプログラムのssd1306_128x64_i2cを0x3Dから0x3c以下のように書き換える。
if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) { // Address 0x3D for 128x64
この後VCCをArduinoの5V、GNDとGND、SCLとSCL、SDAとSDAをつないでコンパイルしてArduinoに入れると無事に動きました。
##備考
最初サンプルコードの方を書き換えずにコンパイルしてつないだところ液晶は何も起こりませんでした。
##参考にしたサイト
https://kokensha.xyz/arduino/arduino-hiletgo-i2c-128x64-oled-ssd1306/
##変更
6/25タイトルを小型液晶から小型OLEDに書き換えました。