lcd 控制器
1. 使用lcd 一般需要一个控制器和驱动器,控制器需要初始化以产生正确的时序,驱动器一般是和lcd基板制作在一起。
LCD 控制器结构图:
REGBANK 表示调色板
LCDDMA 表示DMA通道
2. lcd控制器相关时序图如下
VSPW 表示 VSYNC 的脉冲宽度为 (VSPW+1) 个 HSYNC 信号。
VBPD 表示经过 (VBPD+1) 个 HSYNC 信号,数据行有效
VFPD 表示(VFPD + 1) 个无效行
HSPW 表示 HSYNC 的脉冲宽度为 (HSPW+1) 个 VCLK 信号。
HBPD 表示经过 (HBPD+1) 个 VCLK 信号,像素数据有效
HFPD 表示(HFPD + 1) 个无效像素
3. lcd 显示芯片时序图
4. VCLK 的获得
设置时钟来源为 HCLK=133MHz ,又由计算公式
而从 3 中可以得到VCLK的典型值为 9MHz ,HCLK = 133 MHz ,所以 CLKVAL_F = 13.77 约为 14。
5. lcd 接口信号设置,以上时序图可总结如下:
6. 初始化代码:
S3C6410 手册上的初始化流程如下所示:
代码:
/*lcd 信号计算分配*/
#define VSPW 9
#define VBPD 1
#define LINEVAL 271
#define VFPD 1 #define HSPW 40
#define HBPD 1
#define HOZVAL 479
#define HFPD 1 /*计算分配视口数据*/
#define LeftTopX 0
#define LeftTopY 0 #define RightBotX 479
#define RightBotY 271 /*分配帧缓存地址*/
#define FRAME_BUFFER void lcd_init(void)
{
/* 1. 查阅硬件电路原理图,设置相关GPIO引脚用于LCD */
GPICON = 0xaaaaaaaa; /* gpi0~gpi15用作lcd_vd[0~15] */
GPJCON = 0xaaaaaa; /* gpj0~gpi11用作lcd_vd[16~23]和VDEN/VSYNC/HSYNC/VCLK */ GPFCON &= ~(0x3<<);
GPFCON |= (<<); /* GPF14 output用作背光使能信号 CLKOUT*/ // GPECON &= ~(0xf);
// GPECON |= (0x1); /* GPE0用作LCD的on/off信号 */ /* 2. 初始化6410的display controller
* 2.1 hsync,vsync,vclk,vden的极性和时间参数
* 2.2 行数、列数(分辨率),象素颜色的格式
* 2.3 分配显存(frame buffer),写入display controller
*/ MIFPCON &= ~(<<); /* Normal mode SEL_BYPASS[3]=0*/ SPCON &= ~(0x3); /**/
SPCON |= 0x1; /*LCD_SEL = 01 设置为RGB I/F style */ VIDCON0 &= ~((<<) | (<<) | (0xff<<) | (<<)); /* RGB I/F, RGB Parallel format, */
VIDCON0 |= ((<<) | (<<) ); /* vclk== HCLK / (CLKVAL+1) = 133/15 = 9MHz */ VIDCON1 &= ~((<<) | (<<)); /* 在vclk的下降沿获取数据 ,VDEN 高电平*/
VIDCON1 |= ((<<) | (<<)); /* HSYNC高电平有效, VSYNC高电平有效 */ VIDTCON0 = (VBPD << ) | (VFPD << ) | (VSPW << ); /*设置LCD信号的值*/
VIDTCON1 = (HBPD << ) | (HFPD << ) | (HSPW << );
VIDTCON2 = (LINEVAL << ) | (HOZVAL << ); WINCON0 &= ~(0xf << );
WINCON0 |= (0xb<<); /* unpacked 24 BPP (non-palletized R:8-G:8-B:8 ) */ VIDOSD0A = (LeftTopX<<) | (LeftTopY << );/*视口位置设置*/
VIDOSD0B = (RightBotX<<) | (RightBotY << );
VIDOSD0C = (LINEVAL + ) * (HOZVAL + ); /* WINDOWS'0 size is 272 * 480 (word)*/ VIDW00ADD0B0 = FRAME_BUFFER; /*帧缓存起始地址*/
VIDW00ADD1B0 = (((HOZVAL + )* + ) * (LINEVAL + )) & (0xffffff);/*帧缓存大小*/ /* 帧缓存与视口设置
*VBASEL = VBASEU + (LINEWIDTH+OFFSIZE) x (LINEVAL+1)
* = 0 + (480*4 + 0) * 272
* =
* 4 表示一个像素32位,即 4 个字节
*/ }
lcd 控制器的更多相关文章
- S5PV210的LCD控制器详解
1.FIMD结构框图 (1)Samsung的s5pv210的LCD控制器叫做FIMD(也叫显示控制器).Display controller(显示控制器)包括用于将图像数据从相机接口控制器的本 地总线 ...
- ARM 之LCD和LCD控制器
既然提到 了LCD那么我们首先必须要了解的就是他的种类,CD(liquid crystal display), 即液晶显示器,是这一种采用了液晶控制透光度计数来实现色彩的显示器,他与传统的CRT显示 ...
- JZ2440 裸机驱动 第13章 LCD控制器(2)
13.2 TFT LCD显示实例 13.2.1 程序设计 本实例的目的是从串口输出一个菜单,从中选择各种方法进行测试,比如画线. 画圆.显示单色.使用调色板等. 13.2.2代码详解 ...
- JZ2440 裸机驱动 第13章 LCD控制器(1)
本章目标 了解LCD显示器的接口及时序: 掌握S3C2410/S3C2440 LCD控制器的使用方法: 了解帧缓冲区的概念,掌握如何设置帧缓冲区来显示图像: 13.1 LCD和LCD控制器 13.1 ...
- Linux 2440 LCD 控制器【转】
转自:http://www.cnblogs.com/armlinux/archive/2011/01/14/2396864.html 嵌入式Linux之我行,主要讲述和总结了本人在学习嵌入式linux ...
- LCD控制器与帧率、刷新率的关系分析
源:LCD控制器与帧率.刷新率的关系分析 LCM之Fmark功能 && LCD控制器同LCD驱动器的差别 && 帧率与刷新率的关系 && OLED背光
- 【STM32H7教程】第50章 STM32H7的LCD控制器LTDC基础知识和HAL库API
完整教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 第50章 STM32H7的LCD控制器LTDC基础 ...
- LCD控制器与驱动器
这回我再讲讲从 MCU 到 LCD 之间是怎样一个控制流程,即我们的位图数据是怎样显示到 LCD 上的.前面我们了解到 LCD 显示是用动态扫描的方式来实现的,每次显示一整行,在一帧里每行一次扫描一遍 ...
- LCD编程_LCD控制器
CLKVAL : VCLK = HCLK / [(CLKVAL+1) x 2]--------> CLKVAL = HCLK/VCLK/2-1 在这个地方HCLK=100M,那么VLCK等于多少 ...
随机推荐
- 关于jdango框架静态文件配置的问题
一: 我们首先要知道什么是静态文件: 静态文件就是我们的HTML,css,图片等文件. 二: 我们要知道我们的Django框架是一个web服务器,那么web服务器,我们是通过一个url地址来访问它的, ...
- fastle
昨晚梦见日本和中国打仗, 发过来了很多导弹, 但是飞行速度很慢, 我还能看到上面的辐射三角号 之后我就趴在地上躲导弹 然后感觉身体被蒸发, 意识逐渐模糊, 就醒了 attack大爷的休闲(修仙)题 感 ...
- Html标签及各种属性(持续更新)
<!--Html标签属性之:required (必须的)--> <input type="file" id="Images" required ...
- 【Git+Docker】Docker初期学习认识和安装配置详解
Docker: 特性: 1.以应用为中心 2.自动化构建 3.版本控制 4.组件重用 5.镜像共享 6.工具生态系统 具体后续学习 优势: 1.文件系统隔离 2.进程隔离 3.网络隔离 4.资源隔离和 ...
- Java 文件类 File
1.File 类 1.File 类 1.1.构造方法 文件的 抽象路径名(操作系统无关) 构造方法 格式 说明 File(String filename) 把文件路径名字符串转换为“抽象路径名”,用来 ...
- httpd-2.4.6
1.基础 安装: [root@tri manual]# yum install httpd-manual httpd 源码编译: configure配置选项 配置选项 默认值 备注 -prefix ...
- django配置https
1. pip install django-extensions pip install django-werkzeug-debugger-runserver pip install pyOpenSS ...
- CMD下的netstat命令
查询端口启用情况 netstat -ano|findstr 80
- 22.天眼查cookie模拟登陆采集数据
通过账号登录获取cookies,模拟登录(前提有天眼查账号),会员账号可查看5000家,普通只是100家,同时也要设置一定的反爬措施以防账号被封.拿有权限的账号去获取cookies,去访问页面信息,不 ...
- apidoc 生成Restful web Api文档
在服务器项目开发过程中,总会牵扯到接口文档的设计与编写,之前使用的都是office写一个文档,不够直观.下面介绍一种工具生成Apidoc.,该工具是Nodejs的模块,请务必在使用前安装好nodejs ...