2016年8月1日月曜日

OLEDモジュール(128x64/3バス) [VGM12864-3S]を使ってみた。

OLEDを触った事がないなぁ。。と思っていたので、aitendoにパーツを探しにいったついでにVGM12864-3Sを購入してみました。

●仕様・機能
動作電源:3.3V(最大3.8V)
解像度:128x64ドット
表示色:単色/白
パラレル8ビット / SPI / I2C の3種類のバスから選択して接続可能
値段も¥1350(税別)とほど良い感じ。

ピン配置は下図の様になっています。



・正面左側PIN配置(上から)
PIN VGM128064B2W01 Module
CS 13:CS
A0 15:D/C#
R/W 16:R/W#
ER 17:E/RD#
D2 20:D2

・正面中央上部PIN配置(左から)
PIN VGM128064B2W01 Module
VCC 6:VBAT/9:VDD
GND 1:NC/8:VSS/10:NC/29:NC/30:NC
RES 14:RES#
SCK 18:D0
SDI 19:D1
BS1 11:BS1
BS2 12:BS2

・正面右側PIN配置(上から)
PIN VGM128064B2W01 Module
D3 21:D3
D4 22:D4
D5 23:D5
D6 24:D6
D7 25:D7

SPI、P2Cの切り替えはBS1、BS2で設定を行うようです。
Bus Type BS1 BS2 有効となるPIN(MCU)
I2C VCC GND SCK(SCL), SDI(SDA), A0(SA0), RES(RES#)
6800 GND VCC SCK(D0), SDI(D1), D2-D7, ER(E/RD#), R/W(R/W#), A0(D/C#), RES(RES#), CS(CS#)
8080 VCC VCC SCK(D0), SDI(D1), D2-D7, ER(E/RD#), R/W(R/W#), A0(D/C#), RES(RES#), CS(CS#)
4-SPI GND GND SCK(SCLK), SDI(SDIN), A0(D/C#), RES(RES#), CS(CS#)
SPIの場合は、BS1、BS2双方をGNDに接続し、I2CならBS1をVCCにBS2をGNDに接続する事で選択出来るわけです。

とりあえず購入したものが動作するのか不安なので、SPI接続して検証してみましょう。

VGM12864-3SのコントローラーはSSD1306なので、Arduino互換機とU8GLIBを使って検証してみます。
また、使用したArduinoが5Vなのでパーツ箱の中から探し出してきた低損失三端子レギュレーター 3.3V500mA TA48M033F(S Q)で3.3Vへ降圧し74HC4050で3.3Vにロジックレベル変換しています。
VGM12864-3SとArduinoの接続は以下のように行います。

・正面左側PIN配置
VGM12864-3S PIN Arduino 5Vの場合 Arduino PIN
CS pin2 - 74HC4050 - pin3 10(サンプルコード指定値)
A0 pin6 - 74HC4050 - pin7 9(サンプルコード指定値)
※10、9はサンプルコードで指定されていたものなので、別のPINを指定した場合は修正して実行して下さい。

・正面中央上部PIN配置
VGM12864-3S PIN Arduino 5Vの場合 Arduino PIN
VCC TA48M033F VCC
GND - GND
RES pin4 - 74HC4050 - pin5 RESET
SCK pin12 - 74HC4050 - pin11 Serial SCK
SDI pin10 - 74HC4050 - pin9 Serial MOSI
BS1 - GND
BS2 - GND

74HC4050のピンは、上記通りでなくとも問題ありません。ピン配置を参照してバッファ単位で対になっている箇所で接続してください。
また、74HC4050のpin1にはTA48M033Fで降圧した3.3、pin8にはGNDと接続する事でレベル変換されるようになります。

以上で準備は完了です。

あとは、U8GLIBのサンプルコードを読み込んで、下記の表記箇所をアンコメントすれば実行可能となります。
※CS = 10, A0 = 9の接続を別のPINにした場合は、この箇所の指定を変更して下さい。
U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are  SCK = 13 and MOSI = 11)
動作が確認出来たので、次を考えてみたいと思います。

0 件のコメント:

コメントを投稿