新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于嵌入式系统的彩色液晶显示驱动控制

基于嵌入式系统的彩色液晶显示驱动控制

作者:时间:2012-05-21来源:网络收藏

3 驱动的工作时序

图4所示为驱动主动模式下的工作时序图。其中L_PCLK为像素时钟,用于把像素数据输入到显示器中的移位寄存器中,针对于TFT- LCD连续跳变;L_LCLK为行扫描时钟,针对于TFT-LCD是水平同步信号,用于LCD显示器行显示的结束和把移位寄存器的行数据送到显示器中,并且行指针加1;L_FCLK为帧扫描时钟,针对于TFT-LCD是垂直同步信号,用于LCD显示器新的帧像素的开始,复位时行指针指向屏幕的顶部;L_BIAS是数据使能信号[2]。

4 微处理器与LCD显示屏的接口

硬件主要由嵌入式LCD控制器、微处理器与LCD显示屏的接口等部分构成。

图5所示为微处理器与LCD接口原理图。由于集成了LCD控制单元,这使LCD接口的设计变得十分简单。只须电气连接,无须外扩LCD控制芯片。

L_DD[15:O]:像素点16位数据线,使用5红、6绿和5蓝实现不同颜色的显示,而TFT-LCD红、绿、蓝均有6个引脚,故将B0、R0接地。LCD的显示效果与功耗在很大程度上决定于背光源,因而需对其进行控制。地址线SA-A[20-22]作为译码输入,基地址为Ox0800_0000 的片选信号nCS2选中74LCXl38译码器,让74LCXl38的输出引脚Y0产生脉冲上升沿,驱动LCX374锁存来自数据总线的低8位数据,只要在数据总线上输出Ox80,则可通过Q7使LCD-BACK-0N/0FF输出高电平,控制LCD背光源打开。

5 软件设计

软件主要由嵌入式操作系统与应用软件两部分构成,在应用软件中完成对LCD的驱动。本文采用-2.4.19作为软件平台,程序的交叉编译使用arm-linux-gcc,其中-2.4.19-rmk6-pxal-cerf1内核能稳定地支持处理器,因的源代码开放,将其下载后只需根据自己的硬件配置对内核中的现有代码与驱动进行裁剪、修改、移植或编写部分驱动。PXA270对LCD显示屏的驱动分为两个方面:一是对LCD控制器及相关部件的初始化,包括创建Frame Buffer、寄存器组与DMA通道的设置等;二是对Frame Buffer的读、写等操作[3、4、5]。

5.1 定义显示缓冲区

Linux下的LCD驱动属于字符设备驱动范围,PXA270处理器与LCD间数据传输也非常频繁,因而在内存中定义一个“显示缓冲区”Frame Buffer,形成一个虚拟的显示器,具体位置在Linuxdriversvideo下。Frame Buffer的大小=每像素位数*每屏行数*(每行像素+每行需插入的空像素)/8。本系统中LCD分辨率为640*480,16位/像素,单屏幕模式,Frame Buffer理论值为614400个字节,实际设置640KB。

5.2 初始化函数的编写

在linux的/drivers/video/pxafb.c文件中,通过fb_options()和pxafb_setup()函数来获取内核的启动参数并返回pxafb_driver结构,该结构中pxafb_probe是一个函数指针,指向pxafb_probe()函数,在该函数中完成对 LCD控制器和Frame Buffer等的整个初始化过程,初始化函数部分代码如下:

struct pxafb_info * fbi; //数据结构pxafb_info,主要用于Frame Buffer设备及其操作驱动框架的参数定义,如Frame Buffer的物理和虚拟地址、DMA和一些LCD控制寄存器描述参数等

struct pxafb_mach_info * inf; //数据结构pxafb_mach_info,定义运行机器的一些参数,如pixclock、xres、yres等

pxafb_backlight_power = inf->pxafb_backlight_power; //LCD背光

pxafb_lcd_power = inf->pxafb_lcd_power; //LCD电源

fbi = pxafb_init_fbinfo(dev); //完成数据结构pxafb_info和pxafb_mach_info的初始化,设置使用的字体、显示屏的规格等LCD硬件参数并保存到其中

ret = pxafb_map_video_memory(fbi); //根据LCD硬件参数在内存创建显示缓冲区

pxa_set_cken(CKEN16_LCD,1); //时钟使能寄存器CKEN可使能许多外设单元的时钟,其bit16置1使能LCD单元时钟

linux操作系统文章专题:linux操作系统详解(linux不再难懂)

LCD显示屏相关文章:lcd显示屏原理


lcd相关文章:lcd原理


评论


相关推荐

技术专区

关闭