トップページ > 電子工作インデックス > シューティングゲーム > グラフィック液晶ディスプレイの制御方法
ドット数はタテ64×ヨコ128となっています。バックライトをつけると消費電力が かなり大きくなるようです…。(画面がかなり暖かくなります)
ピン番号 | 名称 | 説明 |
---|---|---|
1 | Vss | GND |
2 | Vdd | +2.7〜5V DC |
3 | Vo | コントラスト調節 |
4 | D/I | "L":表示データ "H":制御コード |
5 | R/W | "H":Read / "L":Write |
6 | E | "H"→"L"の立下りでコード読み込み |
7〜14 | D0〜D7 | データバス |
15 | CS1 | "H"レベルで画面左半分を選択 |
16 | CS2 | "H"レベルで画面右半分を選択 |
17 | /RES | "L"でリセット |
18 | Vout | 「液晶」への電源。配線方法は下図参照…。 |
19 | A | バックライト(+) |
20 | K | バックライト(−) |
要はLCD付属のデータシートそのまんま…なんですが、メモ程度のつもりで。
まず、電源は例のごとくVddとVssに接続します。D0〜D7はデータバス8bit、制御線は
”D/I”、”E”、”CS1”、”CS2”の4本です。画像は書き込みしかしないので
”R/W”はGNDに接続してしまいます。リセットはしなくてもいいんじゃないかな…と思ったので
”/RES”は電源の+側(Vdd)に接続していまいます。
上の図は、この液晶ディスプレイのコントラスト調整回路です。ほかの部分が正しく 配線できていても、このコントラストの調整回路をテキトーにしてしまうと 何も画面に表示されません。注意です…!(私はハマりました。)
この液晶ディスプレイは画面を左右2に分け、それぞれ独立したチップで制御しているようです。 よってCPUからデータをおくるときは、どちらのチップに情報を送るのかを選択する必要が あります。これを”CE1”と”CE2”ピンで行います。また、送られたデータがそのまま画面に 出力するべき表示データなのか、行・列の指定等に使われるコントロール・コードなのか を区別するために”D/I(Data/Instruction Code)”ピンを使います。"E"ピンに加える ダウンエッジで書き込みタイミングを知らせる…というのはいつもと同じパターンで。
表示データは、画面に対してタテ8ドット分が1回のデータ送信で表示されます。 続けてデータを送信すると、同じ行の中で右方向へ表示データが並べられていきます。 ずっと送信を続けてタテ8×ヨコ64の帯を1セットと考えます。このあとCE2ピンを"H"に して右画面へ進出していってもよいのですが、ここではチップ1(左画面)側を全て 表示し終わってからチップ2(右画面)側へ行くことを考えるので、 1段下げてまた同じようにタテ8×ヨコ64の帯をひく…と。そして左画面全体に 表示データを送り終わったら、改めて右画面側を同じ要領で表示する…という流れ にしました。
以上の流れを関数としてまとめたものを、次のページで紹介しています。