首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

基于ARM处理器的LCD及触摸屏处理

基于ARM处理器的LCD及触摸屏处理

  随着信息技术的不断发展,嵌入式系统正在越来越广泛的应用到航空航天、消费类电子、通信设备等领域。而在嵌入式系统中,LCD作为人机交互的主要设备之一,显示系统又是不可缺少的一部分。近年来,随着微处理器性能的不断提高,特别是ARM处理器系列的出现,嵌入式系统的功能也变得越来越强大。液晶显示器由于具有功耗低、外形尺寸小、价格低、驱动电压低等特点以及其优越的字符和图形的显示功能,已经成为嵌入式系统使用中的首选的输出设备。随着多媒体技术的发展,单色的LCD已不能满足人们在各种多媒体应用方面的更高要求,彩色LCD正越来越广泛地被应用到嵌入式系统中。触摸屏是人们获取信息的一种便利工具, 已广泛应用于工商、税务、银行等各种需要对公众提供信息服务的行业。触摸屏作为一种特殊的计算机外设,是目前最简单、方便、自然的一种人机交互方式。它赋予了多媒体以崭新的面貌,是极富吸引力的全新多媒体交互设备。
  S3C44B0X是三星公司生产的基于ARM7TDMI内核的RISC微处理器,主频可达66MHz[3]。它集成了包括LCD控制器在内的等外围器件。LM7M632是Sharp公司推出的分辨率为640×240的STN型彩色LCD显示屏,支持256色显示[4]。本文重点讨论了S3C44B0X与LM7M632及ADS7843的接口设计以及LCD和触摸屏的驱动过程。
  1 S3C44B0X中内置LCD控制器介绍
  S3C44B0X中内置的LCD控制器可以支持4级灰度、16级灰度的黑白LCD和256级颜色的彩色LCD屏;支持3种LCD驱动器:4位双扫描,4位单扫描,8位单扫描显示模式。内置的LCD控制器的作用是将定位在系统存储器(SDRAM)中的显示缓冲区中的LCD图像数据传送到外部LCD驱动器,并产生必须的LCD控制信号[5]。图1为LCD控制器内部结构框图。其中,VCLK是LCD控制器和LCD驱动器之间的像素时钟信号;VLINE是LCD控制器和LCD 驱动器之间的行同步脉冲信号;VFRAME是LCD控制器和LCD驱动器之间的帧同步信号。VM是LCD驱动器的AC信号。VD[3∶0 ]和VD[ 7∶4 ] 是LCD像素点数据输出端口。



图1 LCD控制器内部结构图


  2 LCD模块及硬件接口
  LM7M632是按照8位单扫描模式工作的。所谓8位单扫描方式,就是显示采用8位并行数据线进行“行”数据连续移位输出,直到整个帧的数据都被移出为止。LCD模块接口信号线的定义如表1所示,图2为LCD控制器与LCD的硬件接口的连接图。在该显示系统的硬件电路中,S3C44B0中的内置LCD控制器与LCD模块LM7M632的连接是关键。图3是LM7M632模块接口时序图。其中,YD是帧(写满整个屏的数据称为1个“帧”)同步信号,该信号启动LCD屏的新一帧的数据。两个YD脉冲之间的时间长度就称之为“帧周期”。根据LCD模块的特性,帧刷新周期为12ms到14ms,频率为70Hz~80Hz。每1帧中包含240个LP脉冲。LP为行(共240行)数据输入锁存信号,该信号启动LCD屏新的一行的数据。也就是行同步脉冲信号。每1行中包括640×3/8个XCK脉冲信号。XCK为行数据输入信号,也就是每一行中像素点数据传输的时钟信号;每组8位的数据在XCK的下降沿处被输入锁存。D0~D7是8位的显示数据输入信号。


图2:LCD模块(LM7M632)接口信号线定义




图3 LM7M632模块接口时序图


  在该显示系统中,其显示方式是以直接操作显示缓冲区(SDRAM)的内容进行,LCD控制器会通过DMA方式从显示缓冲区中获取数据,不需要CPU干预。在256色显示模式下,显示缓冲区中的一个字节数据代表LCD上的一个点的颜色信息,因此,所需要的缓冲区的大小为640 ×240 ×1 字节,其中每个字节的RGB数据格式为:由3位红色(Bit7~Bit5)、3位绿色(Bit4~Bit2)、2位蓝色 (Bit1~Bit0) 组成。
继承事业,薪火相传
返回列表