• LCD时序中设计到的VSPW/VBPD/VFPD/HSPW/HBPD/HFPD总结【转】


    转自:https://blog.csdn.net/u011603302/article/details/50732406

    下面是我在网上摘录的一些关于LCD信号所需时钟的一些介绍,

    描述方式一:
    来自:http://www.cnblogs.com/mengfanrong/p/3785559.html

    LCD一般须要三个时序信号:VSYNC、HSYNC和VCLK。

    VSYNC是垂直同步信号(帧同步信号),在每进行一个帧(即一个屏)的扫描之前,该信号就有效一次,由该信号能够确定LCD的场频,即每秒屏幕刷新的次数(单位Hz)。
    HSYNC是水平同步信号(行同步信号),在每进行一行的扫描之前,该信号就有效一次,由该信号能够确定LCD的行频,即每秒屏幕从左到右扫描一行的次数(单位Hz)。
    VCLK是像素时钟信号。

    s3c2440处理LCD的时钟源是HCLK,通过寄存器LCDCON1中的CLKVAL能够调整VCLK频率大小,它的公式为:

    VCLK=HCLK÷[(CLKVAL+1)×2]

    比如,HCLK的频率为100MHz,要想驱动像素时钟信号为6.4MHz的LCD屏,则通过上式计算CLKVAL值,结果CLKVAL为6.8,取整后(值为6)放入寄存器LCDCON1中对应的位置就可以。因为CLKVAL进行了取整,因此我们把取整后的值代入上式,又一次计算VCLK,得到VCLK=7.1MHz。

    VBPD,VFPD,VSPW,HBPD,HFPD,HSPW參数意义:
    back porch:后沿
    front porch:前沿

    VBPD(vertical back porch):表示在一帧图像開始时,垂直同步信号以后的无效的行数
    VFPD(vertical front porch):表示在一帧图像结束后,垂直同步信号曾经的无效的行数
    VSPW(vertical sync pulse width):表示垂直同步脉冲的宽度,用行数计算
    HBPD(horizontal back porch):表示从水平同步信号開始到一行的有效数据開始之间的VCLK的个数
    HFPD(horizontal front porth):表示一行的有效数据结束到下一个水平同步信号開始之间的VCLK的个数
    HSPW(horizontal sync pulse width):表示水平同步信号的宽度

    按理说,对于一个已知尺寸(即水平显示尺寸HOZVAL和垂直显示尺寸LINEVAL已知)的LCD屏,仅仅要确定了VCLK值,行频和场频就应该知道了。但这样还不行的,由于在每一帧时钟信号中,还会有一些与屏显示无关的时钟出现,这就给确定行频和场频带来了一定的复杂性。如在HSYNC信号先后会有水平同步信号前肩(HFPD)和水平同步信号后肩(HBPD)出现,在VSYNC信号先后会有垂直同步信号前肩(VFPD)和垂直同步信号后肩(VBPD)出现,在这些信号时序内,不会有有效像素信号出现,另外HSYNC和VSYNC信号有效时,其电平要保持一定的时间,它们分别叫做水平同步信号脉宽HSPW和垂直同步信号脉宽VSPW,这段时间也不能有像素信号。因此计算行频和场频时,一定要包含这些信号。HBPD、HFPD和HSPW的单位是一个VCLK的时间,而VSPW、VFPD和VBPD的单位是扫描一行所用的时间。在s3c2440中,全部的这些信号(VSPW、VFPD、VBPD、LINEVAL、HBPD、HFPD、HSPW和HOZVAL)都是实际值减1的结果。这些值是通过寄存器LCDCON2、LCDCON3和LCDCON4来配置,仅仅要把这些值配置成与所要驱动的LCD中相关内容的数据一致就可以。比如,我们所要显示的LCD屏大小为320×240,因此HOZVAL=320-1,LINEVAL=240-1。水平同步信号的脉宽、前肩和后肩分别为30、20和38,则HSPW=30-1,HFPD=20-1,HBPD=38-1;垂直同步信号的脉宽、前肩和后肩分别为3、12和15,则VSPW=3-1,VFPD=12-1,VBPD=15-1。

    这些參数用于配置LCD驱动控制器,由厂商设置提供;


    ***************************************************************************************************************************************************************************************
    描述方式二:
    来自:http://blog.csdn.net/a784763307/article/details/8696178

    外部引脚信号:
    VSYNC: 垂直同步信号,表示扫描1帧的开始。
    HSYNC: 水平同步信号,表示扫描1行的开始。
    VDEN:数据使能信号。
    VD[23:0] : LCD像素数据输出端口。
    VCLK:像素时钟信号。

    寄存器参数:
    VSPW:垂直同步信号的脉宽,单位为1行(Line)的时间。
    VFPD: 垂直同步信号的前肩,单位为1行(Line)的时间。
    VBPD: 垂直同步信号的后肩,单位为1行(Line)的时间。
    LINEVAL :垂直显示尺寸-1,即屏行宽-1。
    HBPD:水平同步信号的后肩,单位为1VCLK的时间。
    HFPD:水平同步信号的前肩,单位为1VCLK的时间。
    HSPW:水平同步信号的脉宽,单位为1VCLK的时间。
    HOZVAL:水平显示尺寸-1,即屏列宽-1。

    可知:
    扫描一帧所需的时间:
    =((VSPW+1)+(VBPD+1)+( LINEVAL+1)+(VFPD+1))个行时间。
    扫描一行所所需的时间:
    = ((HSPW+1)+(HSPD+1)+(HFPD+1)+ (HOZVAL+1))个VCLK时间。
    而一个VCLK时间由LCD寄存器LCDCON1内的CLKVAL决定:
    =HCLK/[2*(CLKVAL+1)]
    因此扫描一帧所需的时间:
    T=[(VSPW+1)+(VBPD+1)+( LINEVAL+1)+(VFPD+1)]* [(HSPW+1)+(HSPD+1)+(HFPD+1)+ (HOZVAL+1)]* HCLK/[2*(CLKVAL+1)]
    即帧频率为:1/T

    注意:有些液晶屏给的参数单位可能不一样,需要自己计算。
    方法如下:
    VBPD:确定帧同步信号和帧数据传输前的一段延迟时间,是帧数据传输前延迟时间和行同步时钟间隔宽度的比值
    VFPD:确定帧数据传输完成后到下一帧同步信号到来的一段延迟时间,是帧数据传输后延迟时间和行同步时钟间隔宽度的比值
    VSPW:确定帧同步时钟脉冲宽度,是帧同步信号时钟宽度和行同步时钟间隔宽度的比值。
    HBPD:确定行同步信号和行数据传输前的一段延迟时间,描述行数据传输前延迟时间内VCLK脉冲个数。
    HFPD:确定行数据传输完成后到下一行同步信号到来的一段延迟时间,描述行数据传输后延迟时间内VCLK脉冲个数。
    HSPW:确定行同步时钟脉冲宽度。描述行同步脉冲宽度时间内VCLK脉冲个数

    ************************************************************************************************************************************************************************************

  • 相关阅读:
    OpenDataSource、OPENQUERY、OPENROWSET用法
    DROIDSLAM 论文阅读笔记
    android之路重新开启
    Android工程目录
    新入园
    获取输入框内容,数值类型转换问题
    基于.net平台remoting、DB2技术的大型分布式HIS系统架构及开发(项目架构师方向)
    基于ios开发点餐系统应用(附带源码)
    DEV控件及如何实现一些功能的应用(附带PPT讲解)
    基于J2EE+JBPM3.x/JBPM4.3+Flex流程设计器+Jquery+授权认证)企业普及版贝斯OA与工作流系统
  • 原文地址:https://www.cnblogs.com/sky-heaven/p/9040817.html
Copyright © 2020-2023  润新知