kuroの覚え書き

96の個人的覚え書き

Raspberry Pi PicoでI2C OLED

ようやくI2Cで接続して通信できるようになったPicoだが、OLED (SSD1306)に表示するのにはなかなか成功していなかった。
Adafruit_SSD1306.hをつかってみたり、ACROBOTIC_SSD1306.hを使ってみたりしたが、いずれもコンパイルでエラーとなって表示できなかった。
最終的にはU8g2ライブラリを使って表示に成功した。

テストコードは

#include <Wire.h>
#include <U8g2lib.h>
U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0, /* reset=*/U8X8_PIN_NONE);

void setup() {
  Serial.begin(115200);
  Wire.setSDA(16);
  Wire.setSCL(17);
  Wire.begin();

  u8g2.begin();  // OLED初期化
  u8g2.setContrast(1);

  u8g2.clearBuffer();
  u8g2.setFont(u8g2_font_crox1hb_tf);
  u8g2.drawStr(0, 17, "Hello world");
  u8g2.sendBuffer();

}

void loop() {
  // put your main code here, to run repeatedly:

}

参考にしたページは
aloseed.com