秋葉原の鈴商で、384x192ドット、モノクロSTN液晶が\1,200で売られていました。 384x192ということは、8x16ドットのフォントなら、48文字x12行の表示が可能で、20文字4行のキャラクタ液晶の実に7倍強の情報量があります。それが\1200なのですから、とてもお買い得だと思います。 しかし、この液晶はドライバICは実装されているものの、秋月のQVGAカラー液晶のようにVRAMを内蔵しておらず、常に描画しつづけなければ画面を保持することができません。 また、最低でも30fpsくらいのフレームレートで描画しないと画面がちらついてしまいました。 1クロックに4ドット分のデータを転送するで、30fpsで描画するには384x192x30/4=553kHzでドットクロックを送ることが必要になります。 1周期の間に、RAMからデータを取ってきて4bitのデータを出力し、クロックパルス送出、96クロックごとにラインパルス(Hsync相当)を送信し、192ラインごとにフレームパルス(Vsync相当)を送信しなくてはなりません。 SH2マイコンくらいならできるでしょうが、H8やPICで制御するにはちょっと処理が重すぎますし、マイコンには表示する画像の処理や、フォントの展開など、他にもやることが沢山あるので、専用のLCDコントローラが欲しいところです。。 そこで、CPLD+SRAMを用いて、LCDコントローラを作成し、描画はこいつに任せっきりにすることで、非力なPICからでもこの液晶をコントロールできるようにしました。 ○長所:CPUはLCDの描画処理から開放される。 ○短所:CPLDのマクロセル不足により、CPUインターフェイスとSRAMアクセス回路が非同期。 これにより、CPUとCPLDのクロックを独立にすると、SRAMのセットアップタイムが 時々満たせず、ゴミが表示されることがある。 →CPUとCPLDに同じクロックを供給することによってごまかしている |
写真コーナー | ||
コントローラ基板 | CPUはPICを使用 | |
![]() |
![]() |
|
表示させてみた所 | 縦長表示も可能 | |
![]() |
![]() |
|
回路図 | ||
![]() | ||
関連ファイル | ||
・基板パターン ・CPLDソース |