お題
秋月で売ってる 有機ELキャラクタディスプレイモジュール 16×2行 黄色 をArduinoから触ってみよう!
Arduinoと組み合わせる
このディスプレイモジュールはI2Cで制御できるので、SCLピンとSDAピンをArduinoにつないでやればよろしい。
ただ、その辺で売ってる Arduino Uno は5V動作なのに対して、このディスプレイモジュールは3.3V動作なので、そのままつなぐわけにはいかない。今回は I2Cバス用双方向電圧レベル変換モジュール(PCA9306) を使って電圧を変換することにした。このモジュールではI2Cのプルアップもやってくれる。
ブレッドボードで試す
今回使ったディスプレイモジュール、電圧レベル変換モジュール共に、ブレッドボードにそのまま挿せるようになっているので、簡単に試すことができる。また、Arduinoのプログラム例が同封の紙に書いてあるため、それを参照すれば文字の表示も難しくない。省略。
Arduinoシールドの製作
ブレッドボードではアレなので、Arduinoシールド化してみよう。これとかこれみたいなイメージ。
用意するもの:
- 有機ELキャラクタディスプレイモジュール(最初に書いた)
- 電圧レベル変換モジュール
- Arduino用ユニバーサル基板
- ディスプレイモジュールの横幅が80mmあるので、ユニバーサル基板の横幅もそれ以上必要となる。
- この基板にはSCLとSDA用の穴が開いていないので、自分で開ける必要がある。
- ピンソケット 1×14 … 1個(ディスプレイモジュール用)
- セラミックコンデンサー 0.1μF
- ピンソケット(リード長15mm)
- 1×6 … 1個
- 1×8 … 2個
- 1×10 … 1個
- ピンヘッダ 1×3、ジャンパーピン 1個
- スペーサー&ネジ(ディスプレイモジュール)
- 直径2mmぐらい
- スズメッキ線 少々
- ポリウレタン銅線 少々
秋月で売ってる55mm×80mmのArduino用ユニバーサル基板には、SCLとSDAの穴が開いてないので、自分で開ける。他の基板ならSCLとSDAの穴が開いているが、長辺の長さが80mmに満たないので、ディスプレイモジュールがはみ出る。
また、ディスプレイモジュールを真面目に固定したいなら、2箇所か4箇所穴を開けて、スペーサーで固定する。
配線
適当に考えた。
その辺で売ってるArduino用ユニバーサル基板は両面基板(スルーホール)なので、配線が重なる時にどっちかを表に通して…という手が使えない。なので、そういう箇所はポリウレタン銅線を使うことにした。下の図だと、赤で描いたのがそれだ。
(表面)(裏面)と書いたが、部品類は全て表面に取り付け、配線は全て裏面で行った。
出来上がったもの
写真をいくつか。
有機ELの(液晶と比べた時の)特徴として、高コントラストというのがある。黒い部分は発光しないため、暗闇でもぼんやり明るい…ということがない。
今後の方向性として、シールドの余ったスペースにスイッチとかを取り付けてポチポチできるようにしたら良さそう。
なお、ここに載せた「ヴェアアアァ」では、キャラクタディスプレイモジュールのROMにない文字を作って使っている。その辺のプログラムの話も、暇があったら書くかもしれない(いつまでに書くとは言ってない)。