fc2ブログ

[NEEK]LCD同期ズレを修正

NEEKのパネルは、Toppoly TD043MTEA1 LCD moduleを使ってると
「Implementing an LCD Controller」という資料に書いてある。

このLCDのデータシートをぐぐって見てみると、以下の仕様だ。

<NEEKでは800xRGBx480で使用>
NCLK: 33.2 MHz
Horizontal Valid Data: 800 NCLK
1 Horizontal Line: 1056 NCLK
HSYNC pulse width: Min 1 NCLK
Hsync blanking: 216 NCLK
Hsync front porch: 40 NCLK
DENB Enable Time: 800 NCLK
Vertical Display Area: 480 H
Vertical Period Time: 525 H
VSYNC pulse width: Min 1 H
Vertical blanking: 35 H
Vertical front porch: 10 H
Vertical blanking of DENB: 40 H



NEEKでは50MHz外部クロックはあるが、パネル規定の33.2MHzぴったりは生成出来ない。
しかも、NEEKでは、今回1NCLK(33.2MHz)に対して、基本クロックを100MHz(50MHz x 2逓倍)
にして、100MHz x 3発でRGBを8bitづつ送る使い方。

パネル規定=33.2MHz = 30.12ns
NEEK= 100MHz x 3 = 30ns

という違いがあるので、上記のパネル規定のタイミング設定をすると、定期的に画面が消灯する現象が出た。

ちなみに、計算してみると1frame分の時間の違いは以下。
パネル規定=16.70ms/frame
NEEK=16.63ms/frame

この差を埋めるために、
Hsync blanking: 216 NCLK → 220 NCLK(HSYNC pulse widthを1から5へ)
としたら、画面の定期消灯が無くなった。
スポンサーサイト



コメントの投稿

非公開コメント

カレンダー
02 | 2024/03 | 04
- - - - - 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31 - - - - - -
累積訪問者
現在の訪問者
現在の閲覧者数:
最新記事
最新トラックバック
最新コメント
月別アーカイブ
カテゴリ
プロフィール

bobgosso

Author:bobgosso
FPGAのブログへようこそ!

検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QRコード