ImageVerifierCode 换一换
格式:DOCX , 页数:11 ,大小:493.11KB ,
资源ID:7577781      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7577781.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(实验4 S3C2410 LCD的驱动控制实验.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

实验4 S3C2410 LCD的驱动控制实验.docx

1、实验4 S3C2410 LCD的驱动控制实验实验4 S3C2410 LCD的驱动控制实验一、 实验目的1. 学习LCD与ARM的LCD的控制器的接口原理;2. 掌握内置LCD控制器驱动编写方法;3. 学习调用简单的GUI绘图。二、 实验设备硬件:UP-TECH S2410/P270 DVP 嵌入式实验平台、PC 机Pentium 500 以上, 硬盘10G 以上。软件:PC 机操作系统REDHAT LINUX 9.0超级终端(或X-shell)ARM-LINUX 开发环境。三、 预备知识学习LCD 显示器的基本原理,理解其驱动控制方法。掌握两种LCD 驱动方式的基本原理和方法。并用编程实现:1

2、用总线方式直接驱动带有驱动模块的LCD。2用ARM 内置的LCD 控制器来驱动LCD。四、 实验原理1LCD(Liquid Crystal Display)原理液晶得名于其物理特性:它的分子晶体,以液态存在而非固态。这些晶体分子的液体特性使得它具有两种非常有用的特点:1、如果让电流通过液晶层,这些分子将会以电流的流向方向进行排列,如果没有电流,它们将会彼此平行排列。2、如果提供了带有细小沟槽的外层,将液晶倒入后,液晶分子会顺着槽排列,并且内层与外层以同样的方式进行排列。液晶的第三个特性是很神奇的:液晶层能使光线发生扭转。液晶层表现的有些类似偏光器,这就意味着它能够过滤除了那些从特殊方向射入之外

3、的所有光线。此外,如果液晶层发生了扭转,光线将会随之扭转,以不同的方向从另外一个面中射出。液晶的这些特点使得它可以被用来当作一种开关即可以阻碍光线,也可以允许光线通过。液晶单元的底层是由细小的脊构成的,这些脊的作用是让分子呈平行排列。上表面也是如此,在这两侧之间的分子平行排列,不过当上下两个表面之间呈一定的角度时,液晶随着两个不同方向的表面进行排列,就会发生扭曲。结果便是这个扭曲的螺旋层使通过的光线也发生扭曲。如果电流通过液晶,所有的分子将会按照电流的方向进行排列,这样就会消除光线的扭转。如果将一个偏振滤光器放置在液晶层的上表面,扭转的光线通过(如图A),而没有发生扭转的光线(如图B)将被阻碍

4、。因此可以通过电流的通断改变LCD 中的液晶排列,使光线在加电时射出,而不加电时被阻断。也有某些设计为了省电的需要,有电流时,光线不能通过,没有电流时,光线通过。LCD 显示器的基本原理就是通过给不同的液晶单元供电,控制其光线的通过与否,从而达到显示的目的。因此,LCD 的驱动控制归于对每个液晶单元的通断电的控制,每个液晶单元都对应着一个电极,对其通电,便可使光线通过(也有刚好相反的,即不通电时光线通过,通电时光线不通过)。2电致发光LCD 的发光原理是通过控制加电与否来使光线通过或挡住,从而显示图形。光源的提供方式有两种:透射式和反射式。笔记本电脑的LCD 显示屏即为透射式,屏后面有一个光源

5、,因此外界环境可以不需要光源。而一般微控制器上使用的LCD 为反射式,需要外界提供光源,靠反射光来工作。电致发光(EL)是液晶屏提供光源的一种方式。电致发光的特点是低功耗,与二极管发光比较而言体积小。电致发光(EL)是将电能直接转换为光能的一种发光现象。电致发光片是利用此原理经过加工制作而成的一种发光薄片,如图7-2 所示。其特点是:超薄、高亮度、高效率、低功耗、低热量、可弯曲、抗冲击、长寿命、多种颜色选择等。因此,电致发光片被广泛应用于各种领域。3LCD的驱动控制市面上出售的LCD 有两种类型:一种是带有驱动电路的LCD 显示模块,这种LCD 可以方便地与各种低档单片机进行接口,如8051

6、系列单片机,但是由于硬件驱动电路的存在,体积比较大。这种模式常常使用总线方式来驱动。另一种是LCD 显示屏,没有驱动电路,需要与驱动电路配合使用。特点是体积小,但却需要另外的驱动芯片。也可以使用带有LCD 驱动能力的高档MCU 驱动,如ARM 系列的S3C2410X。(1) 总线驱动方式一般带有驱动模块的LCD 显示屏使用这种驱动方式,由于LCD 已经带有驱动硬件电路,因此模块给出的是总线接口,便于与单片机的总线进行接口。驱动模块具有八位数据总线,外加一些电源接口和控制信号。而且自带显示缓存,只需要将要显示的内容送到显示缓存中就可以实现内容的显示。由于只有八条数据线,因此常常通过引脚信号来实现

7、地址与数据线复用,以达到把相应数据送到相应显示缓存的目的。下图为一个典型的显示模块(HY12864B)提供的总线接口。(2) 控制器扫描方式S3C2410X 中具有内置的LCD 控制器,它具有将显示缓存(在系统存储器中)中的LCD图象数据传输到外部LCD 驱动电路的逻辑功能。S3C2410X 中内置的LCD 控制器可支持灰度LCD 和彩色LCD。在灰度LCD 上,使用基于时间的抖动算法(time-based dithering algorithm)和FRC (Frame Rate Control)方法,可以支持单色、4 级灰度和16 级灰度模式的灰度LCD。 在彩色LCD 上,可以支持256

8、级彩色,使用STN LCD 可以支持4096 级彩色。对于不同尺寸的LCD,具有不同数量的垂直和水平象素、数据接口的数据宽度、接口时间及刷新率,而LCD 控制器可以进行编程控制相应的寄存器值,以适应不同的LCD 显示板。内置的LCD 控制器提供了下列外部接口信号:VFRAME/VSYNC/STV:帧同步信号(STN)/垂直同步信号(TFT)/SEC TFT信号VLINE/HSYNC/CPV:行同步脉冲信号(STN)/水平同步信号(TFT)/SEC TFT信号VCLK/LCD_HCLK:象素时钟信号(STN/TFT)/SEC TFT信号VD23:0:LCD 像素数据输出端口(STN/TFT/SE

9、C TFT)VM/VDEN/TP:LCD驱动交流偏置信号(STN)/数据使能信号(TFT)/SEC TFT 信号LEND/STH:行结束信号(TFT)/SEC TFT信号LCD_PWREN:LCD面板电源使能控制信号LCDVF0:SEC TFT OE信号LCDVF1:SEC TFT REV信号LCDVF2:SEC TFT REVB信号上图为S3C2410X 中内置的LCD 控制器的逻辑框图,它用于传输显示数据并产生必要的控制信号,如VFRAME, VLINE, VCLK, 和VM 等信号。除了控制信号,还有显示数据的数据端口VD23:0如图7-5。LCD 控制器包含REGBANK, LCDCD

10、MA, VIDPRCS, TIMEGEN和LPC3600。REGBANK 具有17 个可编程寄存器和25616 颜料存储器,用于配置LCD 控制器。LCDCDMA 为专用DMA,它可以自动地将显示数据从帧内存中传送到LCD 驱动器中。通过使用这一专用的DMA,可以实现在不需要CPU 介入的情况下显示数据。VIDPRCS从LCDCDMA 接收数据,变换为合适的数据格式(比如48 位单一扫描和4 位双扫描显示模式)后通过VD23:0发送到LCD 驱动器。TIMEGEN 包含可编程的逻辑,以支持常见LCD驱动器所需要的不同接口时序、速率要求。TIMEGEN 部分产生VFRAME, VLINE, VC

11、LK, VM等信号。(3) 与ARM 自带LCD 驱动器有关的寄存器LCD 驱动控制端口与ARM 的端口是共用的,因此,要设置相应的寄存器,将其定义为功能端口,即LCD 驱动控制端口。注意:当LCD控制器开启时,如果想滚屏需要改变LCDBASEU和LCDBASEL值。但是用户不能在帧尾通过查LCDCON1中LINECNT的值来改变寄存器LCDBASEU和LCDBASEL的值。因为LCD的FIFO取下一帧的数据优先级高于改变LCDBASEU和LCDBASEL值的优先级。所以,如果改变了帧,那么预取的FIFO数据就不是最新的了,导致LCD的显示不正确。查询LINECNT前,中断要屏蔽掉。如果在读取

12、了LINECNT之后发生任何中断,因为中断服务程序执行消耗的时间导致读取到的LINECNT的值不是最新的。五、 实验步骤1. 启动ARM JTAG 仿真器并进行初始化配置。2启动ADS1.20 新建工程,将“Exp6 LCD 驱动控制实验”中的文件添加到工程中。3定义有关常量与宏4编写LCD 初始化函数(lcd640.c),设置各功能寄存器。5编写LCD 刷新函数(lcd640.c)。此函数主要是将二级缓存LCDBuffer 的数据由32 位彩色图形信息转换成16 位的图形信息,然后放到pLCDFB 指向的一级缓存。转换公式:pixcolor=(pbuf0&0xf8)11)|(pbuf1&0x

13、fc)6)|(pbuf2&0xf8)。其中,pbuf0、pbuf1、pbuf2是一个象素的32 位彩色数据的前24 位,分别代 表R、G、B。6编写主函数(main.c)在LCD 上显示16 位色图形的关键是填充二级显示缓冲,将显示象素的24 位颜色信息写入LCDBuffer。将RGB 三种基本颜色按一定比例混合即可构成更复杂的颜色,每个象素的三种基本颜色分别占一个字节,可以方便的在程序里改写各基本颜色的数值,从而改变该象素的混合颜色。7. 在ADS 集成开发环境中编译、调试和运行工程程序。六、 实验思考1)液晶显示的基本原理是什么?2)总线方式驱动液晶模块和使用控制器进行驱动控制有什么异同?3)LCD 显示图形的基本思想是什么?

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1