いくつかのtft_LCDピン極性の設定方法:VSYNC、HSYNC、VBLANK

転載します。https://blog.csdn.net/u014170207/article/details/52662988/

RGBモードでは、LCDの走査データは、ユニットの動作に基づいています。HSYNCは水平同期信号です。これは、画素クロックPCLKです。データ信号は、それが高い場合、有効なデータがPCLKの立ち上がりエッジで出力されるイネーブル。P_DATAは、データ出力です。
 ENABLE呼ばHBPの立ち上がりエッジに水平同期信号の立ち上がりエッジの間隔。水平同期信号の立ち下がりエッジでHFPと呼ばれる区間の立ち上がりエッジを可能にします。ローレベル(非アクティブレベル)HSWとして知られる水平同期信号の持続時間。
 HSWの必要性:水平同期信号がアクティブローです。ときに有効な水平同期信号、HBPは、データラインからフェッチする前の時間を待ちます。水平同期信号の有効レベル期間は、典型的には、長い非アクティブレベルよりもあるので、デューティサイクルは50%以下です。短い非アクティブレベルが良いです。
 HBPの必要性およびHFPが存在します。真実はLCDができないこれら二つのフェーズに取り組む行列を使用して、言ってから。前回の走査線CRTの電子銃、復帰時間の必要性、および現在のフォーマットを考慮した場合しかし、両端が有効な信号のブランキング時間に追加されました。それは出てくるどちらも、一貫しています。
 

 
================================================== ==================
まず、LCDドライバを試運転、それは根本的な構造に少し不思議ではない、私はそれらの値が来るかわからない、もちろん私はそれらのいずれかに属しています

折りたたまれたまたは展開(こちら)をクリックします

  1. 静的構造体s3cfb_lcd lte480wv = {
  2.     .width = 1024、// 800、
  3.     .height = 600、// 480、
  4.     .bpp = 24 // 24 // 32、
  5.     .freq = 45、// 45 // 60
  6.     .timing = {//ここで主にLCDに表示される画像の位置に影響を与える、ハンオフセット
  7.         .h_fp = 160、// 210、// 8、
  8.         .h_bp = 160、// 46 // 13、
  9.         .h_sw = 16、// 3
  10.         .v_fp = 12 // 12 // 15 // 22、リャオ
  11.         .v_fpe = 0、/ * 1 // 0、* /
  12.         .v_bp = 23 // 22、遼
  13.         .v_bpe = 0、/ * 1、// 0、* /
  14.         .v_sw = 2、//
  15.     }、
  16.     .polarity = {//非常に重要なこれらのパラメータは、あなたが極性を反転するかどうかを判断する(0 - 通常、1 ---反転)
  17.         .rise_vclk = 0、
  18.         .inv_hsync = 1、
  19.         .inv_vsync = 1、
  20.         .inv_vden = 0、
  21.     }、
  22. }。
まあ、自宅にクローサー、いくつかの定義を理解することがまず必要です。

図に示すように、通常、TFT型LCDタイミング。

 

図1

私たちは、最初に以下のピンレジスタの関連するパラメータの意味を理解する必要があります

 

外部端子:

 

VSYNC:スキャンの開始を示すフレーム同期信号、すなわち、LCDディスプレイの画面。

HSYNC:走査開始ラインを示す水平同期信号。

VDEN:データ信号を有効にします。

VD [23:0]:LCD画素データ出力ポート。

VCLK:ピクセルクロック信号。

 

パラメータを登録します。

 

VSPW:1つの​​系統(ライン)は、時間の単位でフレーム同期信号のパルス幅。

VFPD:フロント肩フレーム同期信号1つのライン(行)時間の単位です。

VBPD:1つの系統(ライン)は、時間の単位でバックポーチフレーム同期信号、。

LINEVAL:次いで、-1フレーム表示サイズ、ライン画面-1の、すなわち、幅、800から480 * LCDパネルの分配比= 480-1 = 479 LINEVAL、覚えては、LCD画面表示される画面の線幅であります行の数は、データを必要としていました。

 

HBPD:行同步信号的后肩,单位为1VCLK的时间。

HFPD:行同步信号的前肩,单位为1VCLK的时间。

HSPW:行同步信号的脉宽,单位为1VCLK的时间。

HOZVAL:行显示尺寸-1,即屏列宽-1,对于800*480分配率的LCD屏,那么HOZVAL=800-1=799,请记住,是屏列宽,也就是LCD屏显示一行数据所需要的像素(pixel)的数目。

 

由图1可知:

扫描一帧所需的时间:

=((VSPW+1)+(VBPD+1)+( LINEVAL+1)+(VFPD+1))个行时间。

 

扫描一行所所需的时间:

= ((HSPW+1)+(HSPD+1)+(HFPD+1)+ (HOZVAL+1))个VCLK时间。

 

而一个VCLK时间由LCD寄存器VIDCON0内的CLKVAL决定:

=HCLK/(CLKVAL+1)  ------>这个公式是S3C2443的LCD控制器的,其他CPU的不一定一样

 

因此扫描一帧所需的时间:

T=[(VSPW+1)+(VBPD+1)+(LINEVAL+1)+(VFPD+1)]*[(HSPW+1)+(HSPD+1)+(HFPD+1)+ (HOZVAL+1)]* HCLK/ (CLKVAL+1)

 

即帧频率为:1/T

 

1.首先来判断 HSYNC,VSYNC,VCLK, VDEN信号是否需要反转

 

这个其实还挺好判断的,主要就是通过你主控的介绍lcd的时序图,在结合你屏厂的spec文档的时序图就可以完全判断出来了

先看LCD控制器默认情况下送出来的TFT LCD屏的时序图:

再来看屏厂的提供的时序图

看上面的介绍应该知道需要反转HSYNC,VSYNC,VCLK信号输出,这样才能输出满足lcd所需要的时序图

 

再来看看timing这个结构体如何配置,如果提供下面这个参数就很好确定相关的数值了

 

h_fp  = (horizontal total time)- 1024

f_sw  =  (horizontal total time)- 1024 - h_fp 

おすすめ

転載: www.cnblogs.com/zhihui-3669/p/11618711.html