- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:PICとST7565R搭載GLCDについて)
PICとST7565R搭載GLCDについて
このQ&Aのポイント
- PIC16F877AでST7565Rが搭載されたGLCDを制御するための質問です
- 質問者はWebシステム系統はそれなりにやってきましたが電子回路については知識がほとんどない状況です
- 具体的な質問内容は、(1)PICと液晶のクロック同期について、(2)CSやR/Wの制御について、(3)データの書き込み手順についてです
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
まずは、データシートをしっかり読んでください。 (1)PICと液晶はクロックを合わせて必ず同期をとる必要があるのでしょうか? クロックの周波数は関係ありません。 (2)CSやR/Wは常時Hiにしてるのですが、データを送る直前に変更する必要があるのでしょうか? 最初にC86端子とP/S端子でバスの動作を選ぶ必要が有ります。 シリアルかパラレルか、パラレルならば8080系にするのか6800系にするのか。 6800系を選んでいる(P/S = “H”、C86 = “H”)として、 CS1B = “L” and CS2 = “H”にします。 表示データかコマンドかによってA0端子を制御する。A0 = “H”:表示、A0 = “L”:コマンド コマンドを書き込むとき A0 = “L”、R/W = “L”:にしておいてE端子をL→H→Lとする。 データを書き込むとき A0 = “H”、R/W = “L”:にしておいてE端子をL→H→Lとする。 なお、STATUSのBUSYフラグが1の時に書き込みをしても望む動作はしないのでBUSYがゼロかどうか確認する必要が有ります。 BUSYを確認する代わりにDelay_us()を使う場合にはデーターシートを良く見て必要な時間待つようにしてください。 BUSYを確認しないのであれば、R/W = “L”のままでOKです。 電源を入れた直後はコマンドを受け付けないので十分な時間を待つようにしてください。
お礼
ご教授ありがとうございます。 おかげで、ある程度の確信を持って動く事ができました。 (申し訳ないことに、結局動作しなかった理由はCSのHi-Lowを間違えていただけなようです) 他にも、微妙に思った通りの操作ができていないので、データシートを読み直してきます。 どうもありがとうございました!