キノコの自省録

日々適当クリエイト

RaspberryPiを使ってHiLetgo 0.91" I2C シリアルLCDモジュールを表示させてみる

送料無料の上にとても安価なHiLetgo品をAmazonでたまに買うのですが、HiLetgo製品の中に、420円で買えるLCDモジュールがあります。

HiLetgo 0.91" IIC I2C シリアルOLED液晶ディスプレイモジュール 128x32 3.3V/5V AVR PIC Arduino UNO MEGA [並行輸入品]

カスタマーコメントにも、RaspberryPiでも表示できた旨のコメントがありましたので、購入して表示させてみました。とっても簡単です。このエントリも覚書程度。

まずこれは何物?

ドライバIC SSD1306で制御されるLCDモジュールです。ということで、SSD1306を制御してやればよいということです。これはAdafruit製のようですね。データシートはこちら。

https://cdn-shop.adafruit.com/datasheets/SSD1306.pdf

かなり親切なチュートリアルもあります。

https://learn.adafruit.com/ssd1306-oled-displays-with-raspberry-pi-and-beaglebone-black?view=all

配線

I2Cです。電源電圧は3.3Vでも5Vでもいいようです。必要な電流値はMax15mAとなってますので、3.3Vからの給電で十分です(RaspberryPiの3.3Vピンは最大50mAなので)。あとは普通にI2C接続をすればOKです。raspi-configから、I2Cを有効にするのを忘れないようにしましょう。結線完了したら、

$ i2cdetect -y 1

で確認。アドレス3cが見えていたら成功です。

表示

チュートリアルのUsageの通りです。抜粋しておきます。なお、これらはRaspberryPi上で実行します。

$ sudo apt-get update

$ sudo apt-get install build-essential python-dev python-pip

$ sudo pip install RPi.GPIO

$ sudo apt-get install python-imaging python-smbus

ビルドツールやらpipやらの基本セットですね。RPi.GPIOやpython-smbusは、最近のRaspbianには既にインストールされていると思いますが、とりあえずそのまま記載しておきました。これらをインストールした後、gitからライブラリをcloneしてビルド~インストールします。

$ sudo apt-get install git

$ git clone https://github.com/adafruit/Adafruit_Python_SSD1306.git

$ cd Adafruit_Python_SSD1306

$ sudo python setup.py install

上手くいけば、準備完了です。exampleディレクトリにサンプルコードが入っていますので、実行してみます。

$ cd example
$ python stats.py

上手くいけばこんな感じにスタッツが表示されます。

f:id:kinokorori:20170820213739j:plain

$ python image.py

これを実行すると、猫の絵が表示されます。

f:id:kinokorori:20170820213806j:plain

とりあえずこんな感じで。非常に小型で、かなり綺麗です。ただ、Amazonのカスタマーレビューにもありますが、取り付けする場合にちょっと困った形をしています。うまくカバーを作ってやらないと、基盤が見えてしまいます。