CoCoNet液晶工房(秋葉に最近できたLCDパネルを専門に扱うジャンク屋)にて、128×48ドット表示の液晶表示モジュールが \480也。見ての通り青モードSTNで、コントラストはなかなか良く応答も高速です。
さて、私もデータ付きということで買ってみたけど、付属データがこのモジュールを組み込んだ機器のものと思われるシロモノで、全然役に立たない(笑)。結局、回路の解析からやるハメになってしまいました(-_-;。まぁ、解析モノとしては初歩の初歩なので、半数以上は自力解決しているでしょうけど、途方に暮れている方もいるかも知れないので解析メモを公開しておきます。
秋月で販売しているグラフィックLCDモジュールSG12864ASLBもほぼ同じ構成で、互換コントローラ(CS信号の極性は逆)を使用しているようです。
右の図が解析したS9894の内部ブロック図とピンアウトです。コントローラとして HD61202(表示メモリ+カラムドライバ)を2個と HD61203(ロードライバ)を1個使用しています。HD61202は1個で64×64ドットの表示が可能で、2個で128ドット幅のパネルの左右半分の領域をそれぞれ受け持っています。高さは48ドットなので、下側1/4は使っていないことになりますね。秋月LCDではフルに使っています。
電源はロジック部電源としてVCCに+5V、液晶パネルを駆動するためのバイアス電源としてVEEに-10Vが必要になります。また、バックライト(CCFL管)のために、外部にインバータも必要です。秋月LCDの場合はバイアス電源は内蔵されていて、バックライトはLEDになっています。
HD61202の表示メモリの構成を右のIMGに示します。図中のビット位置と液晶パネル上の見た目の位置がそれぞれ一致するように書いておきました。一見変則的ですが、文字を描くにはこの方が好都合ですね(Yは自動インクリメントですし)。
インターフェースはお馴染みの HD44780と全く同じですが、基本設定が回路で決め打ちなので面倒な初期化が必要ない分 HD44780より簡単です。
命令 | R/W | D/I | DB7 | DB6 | DB5 | DB4 | DB3 | DB2 | DB1 | DB0 | 機能 |
表示ON/OFF設定 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | D | D = 1:表示ON, 0:表示OFF |
表示開始ライン設定 | 0 | 0 | 1 | 1 | ライン番号(0〜63) | 先頭ラインを選択 (通常は0) | |||||
Xアドレス設定 | 0 | 0 | 1 | 0 | 1 | 1 | 1 | Xアドレス(0〜7) | Xアドレスレジスタに値をセット | ||
Yアドレス設定 | 0 | 0 | 0 | 1 | Yアドレス(0〜63) | Yアドレスレジスタに値をセット | |||||
ステータス読み出し | 1 | 0 | B | 0 | D | R | 0 | 0 | 0 | 0 | B = 0:待機中, 1:実行中 D = 0:表示ON, 1:表示OFF R = 0:通常, 1:初期化中 |
データ書き込み | 0 | 1 | 表示データ | 値をX,Yで示されるアドレスに書き込み、Yを+1する | |||||||
データ読み出し | 1 | 1 | 表示データ | X,Yで示されるアドレスから読み出し、Yを+1する |
これだけあれば使うには十分だと思いますが、実験に使った回路等もとりあえず置いておきます。このほかにバックライトのCCFLを点灯するインバータも必要です。点灯しなくても十分見えますが。CCFL管を引っこ抜いて白色チップLEDを並べた基板を入れれば扱いが楽になると思います。
あと、HD61202でぐぐってみるとデータシートにありつけるかもしれません :-)