既然提到 了LCD那么我们首先必须要了解的就是他的种类,CD(liquid crystal  display), 即液晶显示器,是这一种采用了液晶控制透光度计数来实现色彩的显示器,他与传统的CRT显示器相比有很多优点:轻薄,能耗低,辐射小等,市场 占有率越来越大,LCD有很多类型:STN,TFT,LTPS TFT,OLED等,各有优缺点。

 一、 S3C2410,2440LCD控制器介绍

   1: S3C2410,2440LCD控制器提供了驱动STNLCD  TFTLCD所需要的所有信号, REGBANK是LCD控制器的寄存器组,含有17个寄存器及一块256X16的调色板内存,用来设置二线参数。

     2:  LCDCDMA则是CD控制器专用的DMA通道,可以自动的从系统总线上( system bus)上读取到图像数据,这样在显示上就不需要CPU的干涉。LCDCDMA有两个FIFO(FIFOH,FIFOL),  其中FIFOH容量为16个字(一个字4个字节)FIFOL容量为12额字。当我们使用“双扫”的到时候呢,FIFOH  FIFOL   分别用于传输上半屏,下半屏的数据.  当使用“单扫"的话,只用到FIFOH。当FIFO  为空或者其中的数据已经减少到设定的阀值时,LCDCDMA自动的发起DMA传输,从内存中获得图像数据。

3: VIDPRCS将LCDCDMA中的数据组合成特定的格式,(比如4位单扫,4位双扫,8位单扫)然后从VD[23:0]发送给LCD屏幕。

  4: TIMEGEN  和LPC3600负责产生LCD屏幕所需要的控制时序。

二、显示器上的数据的组织格式、

对于我们看到的屏幕的一幅图像,他到底是如何形成的呢?

  首先,一幅图像就是一帧,一帧呢又是有很多行,一行呢又是有很多像素组成,一个像素的颜色呢又是有很多位的数据来表示的,提到了像素吧,这里简单说下,如果是单色显示,一个像素就使用一位来表示,即1BPP;对于256色显示器,每个像素就要使用8位表示2^8=256;即8BPP.

  接下来就是我们的屏幕扫描形式,很简单就是”Z“形扫描,HSYNC:"表示跳到最左边的时候了"。VSYNC:表示跳到最上边时候了。

ARM 之LCD和LCD控制器的更多相关文章

  1. LCD编程_LCD控制器

    CLKVAL : VCLK = HCLK / [(CLKVAL+1) x 2]--------> CLKVAL = HCLK/VCLK/2-1 在这个地方HCLK=100M,那么VLCK等于多少 ...

  2. (转)LCD:LCD常用接口原理篇

    关键词:android LCD TFT TTL(RGB)  LVDS  EDP MIPI  TTL-LVDS  TTL-EDP平台信息:内核:linux2.6/linux3.0系统:android/a ...

  3. LCD与ARM,具体

    一  实验内容简要描写叙述 1.实验目的 学会驱动程序的编写方法,配置S3C2410的LCD驱动,以及在LCD屏上显示包含bmp和jpeg两种格式的图片 2.实验内容  (1)分析S3c2410实验箱 ...

  4. Linux 2440 LCD 控制器【转】

    转自:http://www.cnblogs.com/armlinux/archive/2011/01/14/2396864.html 嵌入式Linux之我行,主要讲述和总结了本人在学习嵌入式linux ...

  5. LCD控制器与驱动器

    这回我再讲讲从 MCU 到 LCD 之间是怎样一个控制流程,即我们的位图数据是怎样显示到 LCD 上的.前面我们了解到 LCD 显示是用动态扫描的方式来实现的,每次显示一整行,在一帧里每行一次扫描一遍 ...

  6. JZ2440 裸机驱动 第13章 LCD控制器(1)

    本章目标  了解LCD显示器的接口及时序: 掌握S3C2410/S3C2440 LCD控制器的使用方法: 了解帧缓冲区的概念,掌握如何设置帧缓冲区来显示图像: 13.1 LCD和LCD控制器 13.1 ...

  7. FL2440驱动添加(3)LCD驱动添加学习笔记

    FL2440 LCD内置控制器,320*240 TFT型LCD. 自我理解总结的两种添加驱动模式: 非platform方式添加驱动: 加载驱动: 1,硬件初始化,申请内存,并作地址映射 2,分配设备号 ...

  8. S3C2440 LCD驱动(FrameBuffer)实例开发<一>(转)

    1. 背景知识 在多媒体的推动下,彩色LCD越来越多地应用到嵌入式系统中,PDA和手机等大多都采用LCD作为显示器材,因此学习LCD的应用很有实际意义! LCD工作的硬件需求:要使一块LCD正常的显示 ...

  9. LCD驱动(FrameBuffer)实例开发讲解

    一.开发环境 主  机:VMWare--Fedora 9 开发板:Mini2440--64MB Nand, Kernel:2.6.30.4 编译器:arm-linux-gcc-4.3.2 二.背景知识 ...

随机推荐

  1. 转:VC++获取屏幕大小第一篇 像素大小GetSystemMetrics

    VC++获取屏幕大小第一篇 像素大小 GetSystemMetrics>和<VC++获取屏幕大小第二篇物理大小GetDeviceCaps 上>和<VC++获取屏幕大小第三篇物理 ...

  2. startActivityForResult案例

    Info:startActivty 与 startActivityForResult区别 (1):startActivity 启动了其他Activity之后不会再回调过来,此时启动者与被启动者在启动后 ...

  3. 使用activeMQ实现jms

    一:jms介绍         jms说白了就是java message service,是J2EE规范的一部分,跟jdbc差不多,sun只提供了接口,由各个厂商(provider)来进行具体的实现, ...

  4. Android录音服务

    MediaRecorder Mediarecorder=new MediaRecorder();//创建一个MediaRecorder对象 Mediarecorder.setAudioSource(M ...

  5. [转]The culture name list in C#

    Culture Names [C#] This example shows how to get all culture names in the .NET Framework. Use static ...

  6. 浅谈zygote服务中的设计思路

    zygote服务是Android启动和服务APK的核心服务,每个APK都是通过zygote启动,今日阅读它的源码学习到一个不错的设计思路. 首先看看一个APK通过zygote的启动流程: 按照一般的设 ...

  7. css样式:列表

    css code: /*系统自带的*/ ul li{ list-style-style: disc; } /*自定义图标*/ ul li{ list-style-image: url("im ...

  8. (转)20 个大大节省你时间的 HTML5 开发工具

    Rendera 如果你希望有个环境可以测试.浏览和体验各种不同的 CSS/HTML 和 JavaScript 代码,Rendera 为你提供了实时的运行结果.类似 RunJS. Patternizer ...

  9. uva 10626 - Buying Coke(记忆化搜索)

    题目链接:10626 - Buying Coke 题目大意:给出要买可乐的数量, 以及1元,5元和10元硬币的数量, 每瓶可乐8元,每次照钱会按照最少硬币的方式找回, 问如何投币可使得投入的硬币数最少 ...

  10. SPOJ 416 - Divisibility by 15(贪心)

    糟烂的代码啊...  这个题目思路很简单——末位只可能为0和5,所有数字的和肯定被3整除 没有0和5的肯定不行 否则,把所有数字求和 如果被3整除,则从大到小输出 如果除3余1,则按以下顺序——删1: ...