S3C2440A驱动RGB TFT液晶屏的研究方案

最新更新时间:2012-03-12来源: 互联网关键字:S3C2440A  驱动RGB  TFT  液晶屏 手机看文章 扫描二维码
随时随地手机看文章

S3C2440A驱动RGB TFT液晶屏的研究方案

1 引言
    随着科技的进步,TFT LCD作为显示器件在各种嵌入式系统中得到越来越广泛的应用。带触摸屏的TFT LCD模组在系统应用中不仅能为人机界面提供高质量的画面显示,而且能提供更直观、方便的交互性输入。TMT035DNAFWU1是深圳天马微电子股份有限公司生产的8.89 cm(3.5 in)TFT LCD模组,该模组内置了LCD驱动器,集成了四线电阻式触摸屏和背光电路。S3C2440A 是三星公司设计的一款基于ARM920T内核的32位嵌入式RISC(reduced instructions set computer)微处理器,它的最高工作频率可达533 MHz,内部集成了通用的LCD控制器、8通道10位ADC和触摸屏接口,且具备高性能、低功耗的优点,适用于智能手机、便携式媒体播放器、手持导航仪等领域。本文基于S3C2440A嵌入式系统,以TMT035DNAFWU1为显示设备,设计了TFT LCD驱动电路,并完成Linux下驱动显示效果的调试。

2 TFT LCD接口时序
    TMT035DNAFWU1的显示分辨率为320×240,采用24位数字RGB接口,可以显示16.7 M颜色。
    RGB接口是为TFT LCD模组提供高品质显示而设计的接口,该接口可以高速、低功耗地完成动画显示,其中包含4个重要的控制信号VSYNC、HSYNC、DCLK 和VDEN,分别用于帧、行、像素的数据传输。
    图1为TMT035DNAFWU1模组RGB接口时序示意图。


                                    图1 RGB接口时序图

3 S3C2440A LCD控制器介绍
    S3C2440A 内置的LCD控制器能将显示在LCD上的数据从系统内部的数据缓冲区通过逻辑单元传送到外部的LCD驱动器中。它可以支持不同分辨率的显示,如:640×480、320×240等,最大可支持24位数据的16.7 M 彩色TFT模块,其控制器框图如图2所示。


图2 S3C2440A LCD控制器框图
3.1 控制总框图
    LCD控制器主要由REGBANK、LCDCDMA两大部分组成,用于产生必要的控制信号和传输数据信号,如图2所示。REGBANK有17个可编程寄存器组和256×16的调色板存储器,用来设定LCD控制器。LCDCDMA 是一个专用的DMA(Direct Memory Access),自动从帧存储器传输视频数据到LCD控制器,视频数据可以不经CPU处理直接显示在屏上。TIMEGEN 由可编程逻辑器件组成,产生VFRAME/VSYNC、VLINE/HSYNC、VCLK/DCLK、VM/VDEN信号等,以支持不同的LCD驱动器的接口时序和速率。LPC3600与LCC3600是专用LCD控制器,在此不做详细介绍。

3.2 TFT控制器介绍
    通过对REGBANK 寄存器组中的LCDCON1/2/3/4/5进行配置,TIMEGEN产生可编程控制信号来支持不同类型的LCD驱动器。
    VSYNC和HSYNC脉冲与LCDCON2/3的HOZVAL和LINEVAL设置相关,HOZVAL和LINEVAL的值由LCD屏的分辨率决定,如下公式:
    HOZVAL=(Horizontal display size)-1    (1)
    LINEVAL=(Vertical display size)-1   (2)
    VCLK的频率取决于LCDCON1中CLKVAL的设置,在LCDCON1中配置,VCLK和CLKVAL的关系如下(CLKVAL的最小值是0):
    VCLK(Hz)=HCLK/[(CLKVAL+1)×2]    (3)
    HCLK为S3C2440A 中PLL时钟发生器产生的时钟信号。
    VSYNC的频率即为帧频,它与LCDCON1/2/3/4均有关,计算公式如下:
Frame Rate=1/{[(VSPW+1)+(VBPD+1)+(LINEVAL+1)+(VFPD+1)1×[(HSPW+1)+(HBPD+1)+(HFPD+1)+(HOZVAL+1)]×[2×(CLKVAL+1)/(HCLK)]} (4)
    公式(1)~(4)各参数数值的设置方法在§5.2中给出。

4 驱动电路设计
    除数据传输信号接口外,TFT LCD模组的驱动电路还包括提供给模组的电源电路、VGL、VGH、VCOM 电压电路等。根据TFT LCD模组的接口和S3C2440A 内嵌的控制器输出管脚,完成LCD显示的控制线路设计。电路接口设计如图3所示。

    VCOM 电压信号由TFT LCD模组上SOURCEDRIVER IC输出的POL信号提供。POL信号经过VCOM BUFFER电路,产生VCOM电压信号提供给TFT LCD模组。TFT LCD模组采用行翻转方式驱动,设计的VCOM BUFFER 电路能够完成VCOM电压的交流电压成分和直流电压成分的调节。通过调节VCOM BUFFER电路,使VCOM 中心点电压及其幅值达到应用的要求,有效地消除TFT LCD显示闪烁问题并改善显示质量。

5 Linux下驱动程序软件设计
5.1 帧缓冲设备
    帧缓冲为Linux 2.2.XX以上版本内核中的一种驱动程序接口。该接口采用mmap系统调用,将显示设备抽象为帧缓冲区,允许上层应用程序在图形模式下直接对显示缓冲区进行读写和I/O控制操作。帧缓冲设备属于字符设备,采用“文件层-驱动层”的接口方式。

5.2 LCD驱动设计
    TFT LCD驱动程序设计的主要工作包括:初始化S3C2440A 的LCD控制器LCDCON1~5,通过写寄存器设置显示模式和颜色数,然后分配LCD显示缓冲区。根据TMT035DNAFWU1接口时序及显示要求,屏幕显示分辨率Horizontal display size=320,Vertical display size=240,VCLK=6.4 MHz,而HCLK=133 MHz,故CLKVAL=9。缓冲区大小为:点阵行数×点阵列数×用于表示一个像素的比特数/8。缓冲区通常分配在大容量的片外SDRAM 中,起始地址保存在LCD控制寄存器中,需要分配的显示缓冲区为150 kB。最后是初始化一个fb_info结构,填充其中的成员变量,并调用fbmem.C里的register_framebuffer(struct fb_info *fb info)将fb_info登记入内核。

5.3 RGB接口显示参数调整
    S3C2440A 的LCD 控制寄存器主要有:LCDCON1~5。LCDCON1可以对LCD的类型、数据位数、是否需要VDEN输出及DCLK进行设置;LCDCON2主要对VBPD、VFPD、VSPW进行设置;LCDCON3及LCDCON4对HBPD、HFPD、HSPW 进行设置;LCDCON5可以对DCLK、HSYNC、VSYNC 的极性做设置。图4为RGB接口显示工作原理示意图,各个参数在实际显示中的作用效果见图4所示。


图4 RGB接口显示工作原理
    图4中,最终显示区域(DISPLAY AREA)是由像素时钟信号(DCLK)、行同步信号(HSYNC)、帧同步信号(VSYNc)、数据使能信号(VDEN/ENABLE)共同作用的结果,其大小及位置由各参数实际配置来确定,其中HSPW、HBPD及HFPD确定显示区域的行有效数据信息,VSPW、VBPD和VFPD确定显示区域中帧有效数据信息。
   基于Linux下驱动显示程序,以下为调试成功的部分源代码:
/******s3c2440fb.c******/
#define H_SW 35;
#define H_FP 15;
#define H_BP 30;
#define V_SW 5;
#define V_FP 5;
#define V_BP 10;
……
static struct s3c2440fb_mach_info xxx_stn_info __initdata={
pixclock:PIXEL_CLOC, hpp: PIXEL_BPP,
xres:H_RESOLUTION, yres: V_RESOLUTION,
hsync_len: H_SW, vsync_len : V_SW,
left_margin: H_BP, upper_margin:V_BP,
right_margin:H_FP, lower_margin:V_FP,
sync:0, cmap_static:1,
reg:{
lcdcon1: LCD1_BPP_16T | LCD1_PNR_TFT | LCD1_CLKVAL(12),
lcdcon2: LCD2_VBPD(V_BP) | LCD2_VFPD(V_FP) | LCD2_VSPW(V_SW),
lcdcon3: LCD3_HBPD(H_BP) | LCD3_HFPD(H_FP),
lcdcon4: LCD4_HSPW(H_SW),
lcdcon5: LCD5_FRM565 | LCD5_INVVLINE | LCD5_INVVFRAME | LCD5_HWSWP | LCD5_PWREN,
},
};
    在实际的驱动程序编写过程中,不同的TFTLCD模组的参数会有所不同,因此需要根据实际数据的有效位置进行相关的参数调整。图5为RGB接口参数配置调整前后的系统显示对比效果图。如果软件初始化设置中,未能正确地分配HSPW、HBPD和HFPD,行有效数据的位置会发生相应的错位,表现在实际显示中为显示图像的整体左右偏移,如图5(a)所示,液晶显示器显示画面向左偏移。同理,未能正确地配置VSPW、VBPD和VFPD,帧数据中有效数据的位置会发生相应的错位,表现在实际显示中为显示图像的上下偏移。

5.4 触摸屏驱动设计
    设置触摸屏接口为等待中断模式(INT_TC中断),如果中断发生,立即激活相应的AD转换。转换模式一般选择分离的X/Y轴坐标转换模式或者自动(连续的)X/Y轴坐标转换模式来获取触摸点的X/Y坐标。在得到触摸点的X/Y轴坐标值后,返回到等待中断模式。触摸屏的驱动流程如图6。


图6 触摸屏控制流程图
    触摸屏设备在Linux系统中也被定义为一个字符设备,需要对触摸屏设备驱动程序中的全局变量struct TS_DEV进行设置,该变量用来保存触摸屏的相关参数:等待处理的消息队列、当前采样数据、上一次采样数据等信息,变量定义如下:
typedef struct{
unsigned int penStatus;
/* PEN_UP,PEN_DOWN,PEN_SAMPLE */
TS_RET buf[MAX_TS_BUF];
/*环形缓冲区*/
unsigned int head,tail;
/* 环形缓冲区的头、尾 */
wait_queue_head_t wq;
spinlock_t lock;
}TS_DEV ;
    根据触摸屏对应TFT LCD的分辨率大小,对环形缓冲区的大小进行初始化配置。

6 结论
    分析了RGB接口的TFT LCD模组接口工作时序,以ARM920T内核的S3C2440A处理器为核心,加外围电路构建了相应的驱动电路,完成Linux显示驱动程序开发,实现了系统清晰稳定的显示。带触摸屏的TFT LCD模组驱动电路设计及显示效果调节方法为各种手持数码电子产品、导航仪等嵌入式系统设计提供了一套完整的解决方案。

关键字:S3C2440A  驱动RGB  TFT  液晶屏 编辑:神话 引用地址:S3C2440A驱动RGB TFT液晶屏的研究方案

上一篇:VGA视频与LED显示屏的同步显示设计
下一篇:高频数据传输接口电路保护方案设计

推荐阅读最新更新时间:2023-10-12 20:37

一种在U-BOOT中嵌入千兆网络功能的方法
引言 U-BOOT是德国DENX小组开发的用于多种 嵌入式 微处理器的引导加载程序,它是系统上电后运行的第一段程序代码,用于初始化目标板硬件,为嵌入式操作系统提供目标板硬件配置信息,并装载、引导和运行嵌入式操作系统等。 U—BooT 支持网络功能,在下载操作系统内核和大的文件系统时,比其它不支持网络的引导加载程序速度更快、更方便。目前U—BOOT仅支持10M/100M的网络功能,随着科学技术发展, 千兆网络 功能必将大量应用在嵌入式系统中。本文介绍了一种让U—BOOT支持千兆网络功能的方法,可以使U—BOOT功能更加强大,使用更加方便。 U—BOOT简介 U—BOOT的全称是Universal Boo
[单片机]
一种在U-BOOT中嵌入千兆网络功能的方法
一种嵌入式显示系统的软件设计及应用
引言 嵌入式设备凭借其与使用者之间的亲和力、自然的人机交互界面,得到了迅速的发展,渗透到生活中的各个角落。本文介绍的设计方法是以高性能的8位单片机C8051F120作为核心处理器,SRAM作为系统的显存,FPGA实现时序转换,构建低温(-10℃)下嵌入式显示系统。通过PC机键盘和触摸屏实现界面操作,最终在液晶显示器上显示国标一/二级汉字、ASCII字符和65 536色的彩色图形和图片,并制作了简单的操作界面。 1 系统工作原理 显示汉字、英文字符和彩色图形的过程就是将字符和图形信息转换成液晶显示器可以显示的点阵信息。为了显示字符,可以将ASCII码字符点阵字库和按区位码排列的汉字点阵字库存储在单片机外接的Flas
[单片机]
一种嵌入式显示系统的软件设计及应用
基于单颗CP212X实现TFT液晶屏模组供电系统
本文介绍了采用低成本、高效率的升压型电源管理芯片CP212X系列产品实现多路正负电源输出,结合TFT模组供电的需求,给出了基于CP212X实现的TFT模组供电系统方案,文中详细讨论了CP212X系列产品实现多路正负电压输出的解决方案,并以TFT模块的供电系统为典型案例,给出了基于CP212X的TFT模组供电系统的典型应用方案。该方案可满足TFT模组供电系统的各路电压需求,电路清晰简单,应用灵活,可广泛应用于各类手持设备,为TFT模组提供全套电源解决方案。 TFT显示屏模组的电源需求 TFT(ThinFilmTransistor)液晶屏(LCD,LiquidCrystalDisplay)越来越广泛的应用于各类手持设备中。随着
[电源管理]
基于单颗CP212X实现<font color='red'>TFT</font><font color='red'>液晶屏</font>模组供电系统
s3c2440A开发板UART总结以及UART代码详解
一.概述: s3c2440A 提供三个独立异步串口端,每个端口可以在中断模式和DMA模式下操作,也就是讲UART可以产生一个中断或DMA请求用于CPU和UART之间的数据传输。 每一个串口UART都有一个64字节的发送FIFO,一个64字节的接收FIFO。 要实现UART与上位机之间的通信,必须遵循木一个协议,通过ULCON可以定义传输数据的位数,停止的位数,红外模式等。 波特率的时钟源有:PCLK,FCLK/n,UEXTCLK,通过UCON寄存器的10,11位进行选择。大小可以这样计算:时钟源频率/(波特率*16)-1;如果计算的结果是个小数,那么把这个最接近的整数放到UBRDIVn中,即如果算的结果是16.25,那
[单片机]
S3C2440A串口驱动-WINCE6.0下通过串口和外设进行数据通信(二)
三,串口中断服务线程 串口中断产生以后,具体的数据处理将在中断服务线程里面完成,以BSP包中camera的中断线程为例 DWORD CameraCaptureThread(void) { unsigned char tmp=0; static unsigned int time,old_time; static unsigned int cam_intr; DWORD dwCause; //dwDisplayTimeout = INFINITE; SetProcPermissions((DWORD)-1); while(TRUE) { RETAILMSG(0,(TEXT( Interrupt
[单片机]
<font color='red'>S3C2440A</font>串口<font color='red'>驱动</font>-WINCE6.0下通过串口和外设进行数据通信(二)
IHS Markit预测,在电视尺寸追求大屏幕的趋势推动下,2017年TFT
IHS Markit(纳斯达克股票代码:INFO,关键信息、分析和解决方案服务提供商)预测,尽管终端市场需求放缓,2017年大尺寸薄膜晶体管(TFT)显示器市场预计将继续扩大。 2017年,单元出货量预计6.88亿台,增长1%,与上一年相比,面积出货量预计比去年同期增长6%,达到1.8亿平方米。 尺寸在9英寸或以上的显示屏中,平板电脑显示屏出货量有望在2017年创下历史最高的增幅,出货量增长10%至9300万台。IHS Markit首席分析师Peter Su认为,“那是因为一线品牌正正在推出越来越多的配备大屏幕的平板电脑型号。搭载10.5英寸屏幕的新款iPad pro就是一个很好的例子。” 出货量增长位居第二的
[电源管理]
IHS Markit预测,在电视尺寸追求大屏幕的趋势推动下,2017年<font color='red'>TFT</font>
常用液晶屏LCD1602的使用
LCD_1602, 学过单片机的朋友们都知道它了吧,可以说是用的最广,最简单,也是学液晶入门级别的一块液晶了。LCD1602顾名思义就是两行显示的液晶,每行最多显示16个字符(里面总共有160个字符),其中包括阿拉伯数字、英文字母的大小写,常用符号,及日文的假名!每个字符对应一个ASCII码,我们通过向液晶送相应符号的ASCII码来显示这个字符。 总的来说这个用起来很简单的,到网上下载1602的数据手册,自己写写程序估计也就差不多了,我在这里主要是说说自己的对一些常见问题的经验,和LCD1602自定义字符的显示方法。 要显示我们自定义的字符,就要用到LCD中的CGRAM存储器(character gen
[单片机]
G京东方出手驱动IC TFT-LCD链条整合提速
   G京东方出手驱动IC   出售子公司换股天利半导体,TFT-LCD链条整合提速   尽管2006年上半年度仍可能将持续亏损,但G京东方(000725.sz)在TFT-LCD(薄膜晶体管液晶显示器)产业链的布局仍在不断深入——继成功争取全球市场占有率超过60%的玻璃基板巨头康宁落户北京后,近日其又在TFT-LCD的重要上游环节驱动IC领域展开资本运作。   6月5日,G京东方宣布将下属子公司——北京方益集成电路设计有限公司(下称北京方益)——出售给天利半导体。   根据G京东方发布的交易公告,公司及下属子公司BOE Hydis技术株式会社(下称BOE Hydis),分别将所持北京方益的75%和25%股权
[焦点新闻]
小广播
最新模拟电子文章
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved