基于ARM处理器的LCD控制及触摸屏接口设计
随着信息技术的不断发展,嵌入式系统正在越来越广泛的应用到航空航天、消费类电子、通信设备等领域。而在嵌入式系统中,LCD作为人机交互的主要设备之一,显示系统又是不可缺少的一部分。近年来,随着微处理器性能的不断提高,特别是ARM处理器系列的出现,嵌入式系统的功能也变得越来越强大。液晶显示器由于具有功耗低、外形尺寸小、价格低、驱动电压低等特点以及其优越的字符和图形的显示功能,已经成为嵌入式系统使用中的首选的输出设备。随着多媒体技术的发展,单色的LCD已不能满足人们在各种多媒体应用方面的更高要求,彩色LCD正越来越广泛地被应用到嵌入式系统中。触摸屏是人们获取信息的一种便利工具, 已广泛应用于工商、税务、银行等各种需要对公众提供信息服务的行业[1]。触摸屏作为一种特殊的计算机外设,是目前最简单、方便、自然的一种人机交互方式。它赋予了多媒体以崭新的面貌,是极富吸引力的全新多媒体交互设备[2]。
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位的显示数据输入信号。
引脚 | 引脚描述 | 引脚 | 引脚描述 |
1 | YD:扫描开始 | 8 | VDD:logic供电(3.3V) |
2 | M:交变信号 | 9 | Vcon:对比调节电压 |
3 | LP:输入锁存 | 10 | VSS:地 |
4 | VSS:地 | 11~14 | D0~D3:数据线低四位 |
5 | XCK:时钟 | 15 | VSS:地 |
6 |
- 采用灵活的汽车FPGA 提高片上系统级集成和降低物料成本(04-28)
- 从LCD电极读数的单片机接口技术(01-15)
- 嵌入式Linux下彩色LCD驱动的设计与实现(03-09)
- 基于FPGA的液晶显示控制器设计(02-17)
- LCD部分专业术语解释(03-06)
- 点阵LCD的驱动显控原理(上册)(03-20)