The Weekly Herald

scie and axsee's electronics weblog.
<< テトリス自作計画2 | main | 車載加速度アナログメータ2 >>
スポンサーサイト このエントリーを含むはてなブックマーク

一定期間更新がないため広告を表示しています

| 書いた人:スポンサードリンク | - | | - | -
グラフィックLCDモジュール 初編 このエントリーを含むはてなブックマーク
 福岡電子工作支援店 W-FIELD.COMで購入したグラフィックLCDモジュールをH8マイコンで制御してみよう。

 とりあえず、2つ購入したLCDモジュールのうち安かったほう――といっても3000円もする――のLCDモジュールに取り掛かることにした。
グラフィックLCDモジュール F-51553GNBJ-LW-ABサイズは128×64ドット。
型名は、F-51553GNBJ-LW-ABだ。
早速仕様書(PDFファイル)をネットからダウンロードし、Adobe Readerで開いてみた。

どれどれー。
 かるーく目を通したがなんだかよく分からない。というか、載っている情報が少なすぎやしないだろうか。特に、制御方法が全く記されていないのだ。

「これじゃあどうやって動かせばいいのかさっぱりわからない」と思ったら、ブロック図に、"Control LSI S1D15605 D11B000"と書いてある。「ああ、こいつを調べれば良いのか」と思い、果たして制御方法が判明した。
"S1D15605の仕様書"

 制御方法は判明したので、ハードウェアの製作に取り掛かろう。

 まずはコネクタである。このグラフィックLCDモジュールには親切にも専用コネクタが付属していた。ヒロセ電機のFH12S-30S-0.5SHである。このコネクタにLCDモジュールから飛び出しているFPC(フレキシブル基板)を差し込んで使用する。
FPCコネクタピッチ変換基板 だがこのコネクタ、0.5mmピッチで足が出ているもんだからユニバーサル基板には取り付けられない。
 よってこのコネクタ用のピッチ変換基板を製作した。Olimex製だ。これでユニバーサル基板上で配線できる。
 作業開始から数時間後、ハードウェアがようやく完成した。
 基板裏面はものすごい配線になっちゃってるけど、初めてグラフィックLCDモジュールを使ってみるんだから、こんなもんでいいのさ。使える機器を製作するときにはプリント基板化することにしよう。
LCDモジュールを使うために組み立てたハードウェア 緑色の小さく切ったユニバーサル基板を無理やりベースボードにくっつけ、そこにLCDモジュールにつながれたピッチ変換基板を挿した。
 マイコンボードはオリジナルのやつ。
 プログラムをささーっと書いて、電源スイッチを入れてみる――が、LCDに変化なし。
「ああ、しまった。LCDモジュールの初期化関数を呼び出していなかった」
 慌てて電源を切る。大丈夫だろうか。仕様書には電源を投入してからリセット解除後、"ある処理"をおおよそ5[msec]以内でやれ、と書いてある。その"ある処理"をするのが初期化関数だったのだが……。しかも、電源を切るときにもすべき処理がある。それもやらなかった。壊れていないだろうな……。
 多少不安になりながら、プログラムを修正し、2回目の電源投入――
「おお、なんか出た!」

 表示データは何もいじっていないため、ランダムなパターンが表示されたが、飛び跳ねてしまうくらいに嬉しかった。
 最初は、画面の領域すべてが制御できるのだと思っていたが、そうでもないようだ。
 表示をOffにするとこんな感じである。↓
バックライトのみ
 バックライトは青色。いや、バックライト用のLED自体は白色のようだ。こいつでゲームが作れそうだな。ちなみに、ゲームボーイは160×144ドットだから、ドット数で言うとゲームボーイのほうが約2.8倍も多いのだが、128×64ドットのこいつでも十分面白いものが作れそうだ。

 コマンドや表示データはメモリにアクセスする感覚でセットできるため、プログラムは割と簡単に書けたのだが、実はハードウェアの製作には結構苦労したのだ。

 LCDモジュールの仕様書を見る限り、マイコンとLCDモジュールを適当に接続するだけでは動かせないようである。他に部品が必要で、それは主にコンデンサなのだが、その静電容量は実際に動作させて最適な値を求めてね、みたいなことが書いてある。えー?それはちょっと厄介かも。

――とか、

 LCDモジュールとマイコンのインタフェースは、パラレル又はシリアルが選択できる。
だったらパラレルで使いたいな。
パラレルインタフェースを選択した場合、80系又は68系MPUのバスに直結できる。
最初、80系、68系とは一体なんのことだろうと、本気で思った。後で調べみて分かったけど……(恥ずかしい)
 で、H8はどっちのバス方式で接続すればよいのだろう。あれ?もしかしてできないのか?
 いや落ち着け。
 仕様書を見る限り80系MPUバスでいけそうだぞ。バス制御信号が80系と同じだ。

――といった具合で、ときどきパソコン上の仕様書を見ては戸惑いながらはんだ付けをこなしていたのだ。
 しかもこの暑い時季、昼間、部屋にエアコンはなく、ひたすら熱風を撒き散らしているとしか思えないほど役に立たない扇風機にイライラしながらの作業だったのだから、その苦労もひとしおである。
 ちなみに、この日の最高気温は33.5℃だったそうだ。湿度は知らないが微妙に高かった気がする。

 なにはともあれ、せっかく面白いデバイスを手に入れたのだから、色々応用させて遊んでみようと思う。
 まずは車載用加速度メータを作らないといけない。そのために用意したのだから。

 まだ表示が安定していないが、ちゃんと"The Weekly Herald"って読める。後でコンデンサの静電容量を変えてみよう。それとも抵抗比が悪いのか。
右の写真は表示反転コマンドを実行したときのもの。↓
The Weekly Herald表示反転
 冒頭で、"LCDモジュールを2つ購入した"みたいなことを言っていますが、もうひとつは同じく128×64ドットのF-51852GNFQH-LW-AFNです。コントロールICはNJU6676で、今回のLCDモジュールに内蔵されたものとは違いますが、ほぼ同じと考えて良いようです。NJU6676とS1D15605の違いが載っているPDFファイルを見つけました。

 今回の記事は、"ただ使ってみたよ"という内容でしたが、回路図等も公開する予定です。ってことで次回、ハードウェア編。その次は、ソフトウェア編。そして、日本語フォント編
| 書いた人:scie | Embedded System | 02:18 | comments(10) | trackbacks(0)
スポンサーサイト このエントリーを含むはてなブックマーク
| 書いた人:スポンサードリンク | - | 02:18 | - | -
コメント
EZPCBは世界36カ国のお客様に上質なPCBをご提供しております。

高難度の基板でも生産いたします。

0.4mm 4層
最小パターン幅/
クリアランス3mil
4mil穴埋め
POV(Pad On Via)
0.5mmピッチ BGA
プリントパターンによるアンテナ
10%インピーダンスコントロール

下記のプリント基板は、50ドルで試作いただけます。

5枚両面
サイズ100?未満、
HASL,OSP又は金フラッシュ仕上げ
製造納期:約7営業日
片面、両面、多層(1層〜40層)
両面基板は50ドルから受注可能です。小ロット試作は1枚〜量産まで
鉛フリーのRoHS対応(鉛フリーレベラー、フラックス、金処理)


| www.ezpcb.com | 2006/07/17 5:00 PM |

私も、今グラフィックLCDを探しています。一つ質問して宜しいでしょうか。
このLCDは、下記の機能を持っていますでしょうか?
1.まず、ベースとなる絵を描く。例えばX−Y軸。
2.次に、データを書く。例えば、X−Yの一点に1ドット書く。
  ここで、質問ですが、プロットするデータは時々刻々変化するとします。
  良くあるLCDは、全てのデータをあるフレーム時間で全てLCD制御ICに送  らなければならない。 そうなると、外付けのメモリー容量もそれに従いLCD  のドット分の容量を持たなければなりません。
  これは、したくない。
  そこで、変化したデータだけをLCD上に追加表示したい。 
  つまり、変化した1ドットだけ更新したいわけです。過去表示した分は残して。
  この様なことは、できるのでしょうか?

  初めての方に、大変失礼な質問をして申し訳ございませんが、ご教授の程宜しくお願い致します。
| nomura | 2006/08/21 11:55 PM |

nomuraさま。はじめまして。

>そこで、変化したデータだけをLCD上に追加表示したい。
>つまり、変化した1ドットだけ更新したいわけです。過去表示した分は残して。
>この様なことは、できるのでしょうか?
はい。可能です。
全ての表示データを、あるフレーム時間内にLCD制御ICへ送信する必要はありません。
このLCDモジュールの制御IC(S1D15605)は、内部に表示データRAMを内蔵しており、マイコンから送られてきた表示データはその表示データRAMに保存されます。LCDに表示されるのは、表示データRAMに保存されたデータです。
アドレスを指定することで表示データRAM内の任意のドットデータへアクセスすることができます。よって、更新させたいドットデータのみの書き換えが可能です。更新する必要がないドットデータは放っておいて構いません。
ただし、不意のノイズに対応するために、定期的にすべての表示データを制御ICに送信すること(リフレッシュ)が推奨されます。

以上のような説明でよろしいでしょうか?
他に不明な点があれば、私のわかる範囲で答えさせていただきます。
| scie | 2006/08/22 3:56 AM |

ご回答有難うございました。明確な回答で、はっきり解りました。使えますね、これ。
| nomu | 2006/08/22 1:25 PM |

どういたしまして。お役に立ててよかったです。
| scie | 2006/08/22 2:39 PM |

以前、お世話になりましたnomuraです。
早速、LCDを注文し加速度インジケータを作ってみました。
宜しければ、下記のURLでご覧になってみて下さい。
http://www.geocities.jp/window0120/page164.html

では、
| nomura | 2006/09/18 7:51 PM |

初めましてヨシポンです。
少しお聞きしたい事があるのですが、
先日、F-51553GNBJ-LW-ABを購入したのですが、FPCのピン番号が分からず、型番でNetをさまよっていると、こちらのサイトにたどり着きました。
そこで、一つお聞きしたいのですが、上の写真では、PCBのシルクスクリーンと配線の順番が逆に見えるのですが、これはどちらが正しいのでしょうか??

とても、初歩的な質問で恐縮なのですが、お答え頂ければうれしいですm(_ _)m
| ヨシポン | 2007/07/22 11:46 PM |

ヨシポン様。
はじめまして。

お答えします。
OPTREXのウェブサイトに、このモジュールの外形寸法図があります。
FPCのピン番号もそこに載っています。
下記URLのPDFファイルをご覧になってみてください。↓
http://www.optrex.com/SiteImages/PartList/DRAWING/51553abd.pdf

そのPDFファイルを参考に、私は基板を作り、無事動作しました。
| scie | 2007/07/23 6:30 AM |

早速のご返信ありがとうございます。

寸法図なるものがあったのですね!!
知りませんでした。

これで大丈夫そうです。助かりました(笑

これからも、活動頑張ってください!!
| ヨシポン | 2007/07/23 9:59 PM |

どういたしまして。
| scie | 2007/07/27 6:36 AM |

コメントする
※コメント欄にHTMLタグを使用することはできません。
※コメント欄内のURLは、自動的にリンクへと変換されます。
※英数字のみのコメントは投稿できません。









この記事のトラックバックURL
http://herald.jugem.jp/trackback/54
トラックバック
    123
45678910
11121314151617
18192021222324
252627282930 
<< June 2017 >>


ブログ カウンター岩盤浴ゲルマニウム温浴