tft_LCD一些引脚极性设置方法:vsync, hsync, VBLANK
转载:https://blog.csdn.net/u014170207/article/details/52662988/
在RGB模式中,LCD数据的扫描是以行为单位的。HSYNC是水平同步信号。PCLK是象素时钟。ENABLE是数据使能信号,当它为高时,在PCLK的上升沿输出有效数据。P_DATA是输出的数据。
水平同步信号的上升沿到ENABLE的上升沿的间隔称为HBP。把ENABLE的下降沿到水平同步信号的下升沿的间隔称为HFP。把水平同步信号的低电平(非有效电平)持续时间称为HSW。
HSW存在的必要性:水平同步信号为低电平有效。在水平同步信号有效时,需要等待HBP的时间,才从数据线取数。由于水平同步信号的有效电平持续时间通常比无效电平长,因此占空比不是50%。无效电平短些比较好。
HBP和HFP存在的必要性:从道理上说,LCD使用矩阵寻址这两个阶段完全可以没有。但是考虑到从前CRT电子枪行扫描时,需要一个返回时间,而且目前的制式中,在有效信号的两端分别加入了消隐时间。就是为了做到一致,这二者才出来的。
点击(此处)折叠或打开
- static struct s3cfb_lcd lte480wv = {
- .width = 1024,//800,
- .height = 600,//480,
- .bpp = 24,//24,//32,
- .freq = 45,//45,//60
- .timing = { //这里主要会影响图像在LCD上显示的位置,偏移啥的
- .h_fp = 160,//210,//8,
- .h_bp = 160,//46,//13,
- .h_sw = 16, // 3
- .v_fp = 12,//12,//15,//22, liao
- .v_fpe = 0,/*1,//0,*/
- .v_bp = 23,//22, liao
- .v_bpe = 0,/*1,//0,*/
- .v_sw = 2,//
- },
- .polarity = { //这几个参数挺重要的,判断你极性是否要反转(0--normal,1---inverted)
- .rise_vclk = 0,
- .inv_hsync = 1,
- .inv_vsync = 1,
- .inv_vden = 0,
- },
- };
好吧,言归正传,首先有必要理解几个定义:
一般TFT型LCD时序图如下所示
图1
我们先来理解下面引脚有寄存器中相关参数的意义吧
外部引脚信号:
VSYNC: 帧同步信号,表示扫描1帧的开始,一帧也就是LCD显示的一个画面。
HSYNC: 行同步信号,表示扫描1行的开始。
VDEN:数据使能信号。
VD[23:0] : LCD像素数据输出端口。
VCLK:像素时钟信号。
寄存器参数:
VSPW:帧同步信号的脉宽,单位为1行(Line)的时间。
VFPD: 帧同步信号的前肩,单位为1行(Line)的时间。
VBPD: 帧同步信号的后肩,单位为1行(Line)的时间。
LINEVAL :帧显示尺寸-1,即屏行宽-1,对于800*480分配率的LCD屏,那么LINEVAL=480-1=479,请记住,是屏行宽,也就是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
tft_LCD一些引脚极性设置方法:vsync, hsync, VBLANK的更多相关文章
- session超时时间设置方法
session超时时间设置方法 由于session值之前没有设置,以至于刚登录的网站,不到一分钟就超时了,总结了一下,原来是session过期的原因,以下是设置session时间的3个方法: 1. 在 ...
- 第一种SUSE Linux IP设置方法
第一种SUSE Linux IP设置方法ifconfig eth0 192.168.1.22 netmask 255.255.255.0 uproute add default gw 192.168. ...
- [Linux] - CentOS IP设置方法
CentOS 7的IP设置方法: 1.手动设置IP方法 a) 运行命令,cd到目录: cd /etc/sysconfig/network-scripts/ b) 运行命令:ls -l 找到类似这个文件 ...
- linux自动以root登录,并自动启动用户程序的设置方法
系统自动以root登录,并自动启动用户程序的设置方法 第一步:删除root用户 vi /etc/passwd 该文件的第一行:root:X:0:0:root:/root:/bin/bash,只需要把第 ...
- LR测试https协议设置方法
测试ssl隧道的设置方法: 前一段时间使用loadrunner测试ssl vpn时,使用ssl隧道一直配置不成功,经过查资料,终于成功,记录一下,方便大家测试.走ssl隧道与普通http,只需多设两个 ...
- (转)mysql账号权限密码设置方法
原文:http://www.greensoftcode.net/techntxt/2013410134247568042483 mysql账号权限密码设置方法 我的mysql安装在c:\mysql 一 ...
- Apache日志不记录图片文件设置方法和来源日志的配置
Apache日志不记录图片文件设置方法 <FilesMatch "\.(ico|gif|jpg|swf)">SetEnv IMAG 1</FilesMatch&g ...
- 如何在低api中使用View的属性设置方法如setAlpha等
ViewPagerTransforms 是一个自定义了各种翻转效果的开源库,其中的各种PageTransformer使用了view的很多属性设置方法如DepthPageTransformer中:? p ...
- PHP-Fcgi下PHP的执行时间设置方法
昨天,一个程序需要导出500条数据,结果发现到150条是,Nginx报出504 Gateway Timeout错误,原来PHP-Fcgi下的设置执行时间与isapi的不同 一般情况下设置PHP ...
随机推荐
- NOIP 2018 普及组 解题报告
目录 标题统计 题目链接 思路 代码 龙虎斗 题目链接: 思路 代码 摆渡车 题目链接: 思路 对称二叉树 题目链接 思路: 先来解释一下为毛现在才来发解题报告: 其实博主是参加过NOIP 2018普 ...
- Mac的移动硬盘不能装载该如何解决?
昨天拔硬盘时,不能弹出,赶着要睡觉,就直接拔掉USB接口,谁料到今天再插进去,电脑不能识别,无法装载了. 我的天那, 里面很多重要资料,我以为硬盘坏了,要重新格盘了...T T 还好在网上找到了大神们 ...
- Sybase数据库连接配置
简介 1984年,Mark B. Hiffman和Robert Epstern创建了Sybase公司,并在1987年推出了Sybase数据库产品.SYBASE主要有三种版本,一是UNIX操作系统下运行 ...
- windows批量删除当前目录以及子目录的所有空文件夹
在桌面创建一个记事本,将以下内容复制粘贴到记事本中,将记事本的拓展名修改为bat即可,然后将该文件放到需要执行的目录双击. @echo off setlocal enabledelayedexpans ...
- [RoarCTF 2019]Online Proxy
目录 [RoarCTF 2019]Online Proxy [RoarCTF 2019]Online Proxy 题目复现链接:https://buuoj.cn/challenges 参考链接:官方w ...
- 大数据应用期末总评——Hadoop综合大作业
作业要求来自:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/3339 Hadoop综合大作业 要求: 1.将爬虫大作业产生的csv文件 ...
- 第06组 Alpha冲刺(3/4)
队名:福大帮 组长博客链接:https://www.cnblogs.com/mhq-mhq/p/11899921.html 作业博客 :https://edu.cnblogs.com/campus/f ...
- Understanding FiddlerScript
Understanding FiddlerScript FiddlerScript is one of the most powerful features in Fiddler; it allows ...
- JAVA从服务器下载文件根据Url把多文件打包成ZIP下载
注意: 1. String filename = new String(“xx.zip”.getBytes(“UTF-8”), “ISO8859-1”);包装zip文件名不发生乱码. 2.一定要注意 ...
- 搭建redis cluster集群服务
redis 5.0以下为ruby编写,运行命令时需要安装ruby,而5.0以上则为c编写,可直接安装后运行.因此本文使用redis5.0.5 1.编写配置文件 在 /home 下新建 redis-cl ...