M.C.P.C. (Mamesibori Creation Plus Communication)

印刷屋から五反田のWeb屋に転職したCLのブログです。

aitendoのI2C低電圧キャラクタ液晶モジュールをArduino Pro Mini(3.3V)で駆動(配線編)

いろいろあってArduino Pro Mini(3.3V)の互換機を10枚入手したので、「Arduino電波時計を部品を集め組んでみたはいいが室内だとJJY標準電波の入りが悪すぎて検証できないので電波時計用のJJY標準電波みたいなものを発生するArduino時計」を作っています(←ばかじゃないのか)。

その過程で、電波時計の電波を発生するAdruino時計の現在時刻表示インジケータが無くて不便なので、キャラクター液晶ディスプレイ(以下LCD)をつなげたいなあと思っていたんですが、この前シュタインズゲートでいうところの主人公たちのラボの下階にあるお店、ブラウン管工房のモデルになった液晶工房の跡地に入っているaitendo実店舗(←じきに移転するそうです)に行ったら

★50%OFF祭り★I2C低電圧キャラクタ液晶モジュール(16x2行) [SPLC792-I2C-M]

が375円で売っていたので3個買った。しかしこれがいろいろ不親切でなかなか文字が出なかったのだけれども、何とか文字が出たのでここに記す。

※重要!
この液晶モジュール内でI2Cラインが10kΩプルアップ済みです。
Arduino Pro Mini側でI2CのSDA/SCLをプルアップするとダメ!
Raspberry PiはI2Cがプルアップ済みなのでこの液晶モジュールそのままだと認識しない

画像にうっすらと色帯をオーバーレイさせておいたので電気周りの接続はわかると思います。液晶モジュール基板の印刷とArduinoのピン名が違うので注意。ブレッドボードとLCDの接続には9連ピンヘッダを使っていますが、すべてのピンを使っているわけではありません。

LCD Arduino 機能
VDD VCC 液晶コントローラ駆動電圧(3.3V)
SHL 上下方向のオリジン。HIGHにしておく(VCCへ)
DIRC 左右方向のオリジン。LOWにしておく (GNDへ)
GND GND グランド(液晶コントローラ仕様書ではVSS)
DATA SDA I2CデータバスのSDAライン(10kΩプルアップ済)
CLK SCL I2CデータバスのSCLライン(10kΩプルアップ済)
REST LOWで初期化。常にHIGHにしておく
GND
BL+ バックライト用の電圧入力(<3.3V)

液晶の右のランドパターン(SHL、DIRC)で、液晶の表示方向が変わります。液晶モジュールの組み立て時に配線をどう取り回すかによって変更する設定になります。常に一定方向で表示させたい場合はジャンパ線をはんだ付けして固定するといいです(写真では黄色い線でジャンパしています)。

I2C通信線のプルアップの件ですが、最初Pro Mini互換機(3.3V)で表示できていたので、撮影用にArduino Pro Mini(3.3V)純正品に交換してみたのですがLCDが起動しないので、そーいえば純正の方には表面実装のプルアップ用抵抗をはんだ付けしてたのを思い出した。せっかくはんだ付けしたのに、ちえ。芥子粒大の小さいチップ抵抗を外したらLCDにはちゃんと表示されるようになりました。

あと、モジュールに5V入れるときっと壊れます。この写真で使ったLCDも、実はバックライトに5Vをぶっこんでバックライト用LEDが1個死んでいるんです。かといって3.3Vを生で入れるとそれでもバックライトがまぶしいので、抵抗を入れてちょっと暗くなるようにしています(BL+ライン)。どうせ表示するとき必ずバックライトをつけるんだからと思う人は、LCD側でVDDから抵抗を1本介しBL+にぶっこんでもいいと思います。

RSTも、常にHIGHレベルをぶっこんでおくならばLCD側でVDDとつながるよう配線。それをやると、入力ピンはVCC(VDD)、GND、SDA(DATA)、SCL(CLK)の4ピンだけになります。I2Cさまさまですね!

夏休みの工作で、Arduinoでなんか小物を作るときはすごく便利な液晶モジュールだと思います(安いし)、レッツトライ!

(「配線編」としたが「ソフトウェア編」は割愛、オレ工房様の http://ore-kb.net/archives/195 で動きますゆえ)

Arduino Pro Mini 328 3.3V 8MHz

Arduino Pro Mini 328 3.3V 8MHz

FTDI USBシリアル変換アダプター(5V/3.3V切り替え機能付き)

FTDI USBシリアル変換アダプター(5V/3.3V切り替え機能付き)

普通のブレッドボード

普通のブレッドボード

普通のジャンパワイヤ(オス?オス)

普通のジャンパワイヤ(オス?オス)

アイネックス ピン配列交換ケーブル 8本入り EX-002

アイネックス ピン配列交換ケーブル 8本入り EX-002