ov150’s diary

言語理解凹処理速度凸のレアケース アラフォーで初めて発達障害わかったよね

7pinのssd1306がうまくいかない件(未解決)

以前、ついでに購入したssd1306のディスプレイが上手くいきません。
まだ試行錯誤中だけど、途中経過を書きます。

"ssd1306"
ssd1306(小さくてかわいい)

購入したもの

購入したのは、ssd1306の7pinモデル。いろいろ選択肢はあったのだけれど、安直に「i2cもspiも繋げられるそうだしお得やん?」と選びました。

"ssd1306_SPIver."
元(spi接続用)の状態

ja.aliexpress.com
初期設定は、spi接続になっていて、背面の抵抗を付けたり外したりすることで、i2c接続もできるそう。

やってみたこと

  • spi接続で動かす(→できた)
  • 背面の抵抗(R3を外す、R1とR8をはんだでブリッジ)

苦戦していること

  • spi接続したものの、ライブラリの使い方が良くわからない
  • i2c接続用に背面の抵抗を変えたものの、i2c接続が上手くいかない。

1.ライブラリの使い方が良くわからない

spi接続して表示はできるようになったのだけれど、ライブラリの使い方が良く分かっていないようで、テキストしか表示できない…。一応お決まりの「hello world」と、温度表示(ピコパイ(raspberry pi pico)の温度センサー利用)はできるのだけれど、四角形とか直線とかもちろん画像も表示できない…。
おまけにframebufferとかの使い方もわかっていないので、詰まった。

2.i2c接続ができない

spi接続はライブラリが少なかったのと、もう一つ同時期に買ったtft液晶モジュールがspi接続なので、「こちらのssd1306はi2c接続に変えてしまおう」と思い立って、ただでさえ小さい本液晶モジュールの背面チップ抵抗を、はんだごてを使って外したり付けたりした。
多分「0」てことは抵抗値が0(ゼロ)なんだろうと思う。R3に付いていたチップ抵抗は、はんだ作業しているうちにどこかへ消えた。溶けた?
そしてR1のふたつの端子をはんだでブリッジ…としたけど、なかなかうまくはんだが乗らなかったので、その辺にあったジャンパ線を乗せて、はんだ付けした。R8も同じく。
そして、「i2cdetect」でi2c接続を確認すると、「0X3d」と出てきたので、多分i2c接続はできているのだろう。なのに画面が映らない…。
「errno.ENODEV」→そのようなデバイスはありません、とのこと。うーん。

もうちょっとがんばってみます。