引言
随着电子技术的迅猛发展,具有耗电少、亮度高、体积小等特点的液晶显示器被广泛应用于嵌入式系统中。S3C2410是三星公司开发的一款以ARM920T为的16/32位嵌入式处理器。它主要面向手持设备以及高性价比、低功耗的应用。LTS350Q1-PE1是三星电子公司生产的一款非晶硅有源矩阵TFT-LCD,它具有功耗低、亮度高和体积小等特点,目前在嵌入式设备中应用非常广泛。
基于S3C2410,采用LTS350Q1-PE1作为显示设备可以构成一个基于嵌入式平台的液晶显示系统,如图1所示,该系统可以满足大多数嵌入式手持设备的功能要求。但是,要想S3C2410的LCD控制器可以正确有效地控制TFT-LCD,需要设计两者之间的硬件驱动电路。本文设计了LTS350Q1-PE1的硬件驱动电路,将S3C2410的LCD控制器和TFT-LCD结合起来构成嵌入式液晶显示系统。调试结果表明设计正确,本文所设计的液晶显示器的驱动电路只需要嵌入式处理器给出像点时钟、数据使能信号和RGB数据信号,因此,可以不做硬件上的修改就能成为以其它处理器为平台的显示解决方案,具有较大的灵活性和实用性。
图1系统结构框图
TFT-LCD驱动电路设计
TFT-LCD驱动电路的主体部分由多路电压源、能够给出正确数字逻辑信号的电路以及为了看到显示画面而设计的背光驱动电路构成,另外,不同的液晶显示器因为内部电路的差别还需要一些不同的外围附属电路。
多路电压产生电路
由于液晶屏内集成有数字电路和模拟电路,需要外部提供数字电压和模拟电压。另外,为了完成数据扫描,需要TFT轮流开启/关闭。当TFT开启时,数据通过源极驱动器加载到显示电极,显示电极和公共电极间的电压差再作用于液晶实现显示,因此需要控制TFT的开启电压VON、关闭电压VOFF,以及加到公共电极上的电压VCOM,各电压的具体要求见表1。
本系统通过DC-DC变换器,用数字电压产生多路电压,即模拟电压、栅极开启电压和栅极关断电压。本文采用MAX1779产生模拟电压AVDD、栅极开启电压VON及栅极关断电压VOFF,如图2所示。MAX1779内部集成有3个DC-DC变换器,可以为小型TFT液晶屏提供高效的调节电压。公共电压(VCOM)由图3所示的电路产生,其中AD8541是带宽为1MHz、满幅度输出的低功耗运算放大器。
图2 DC/DC变换电路
数字时序匹配电路
为特定型号液晶屏提供时序信号通常采用专用的驱动芯片来实现,也可通过FPGA、CPLD等可编程器件实现。由于可编程器件面积较大、成本较高,因而通常只在需要对电路进行灵活配置的情况下才使用。用来匹配时序信号的专用芯片是经过测试和实践验证的,具有体积小、性能稳定等特点,通常也被称为液晶屏的伴侣芯片。LTS350Q1-PE1的伴侣芯片是LC3600A,所设计的时序电路如图4所示。
图3 VCOM 产生电路
图4 LTS350Q1-PE1时序信号产生电路
背光驱动电路
为了能够看到液晶屏上显示的画面,必须为液晶屏提供背光源。LTS350Q1-PE1内部采用的是LED背光方式,为此选择了专用的LED驱动芯片MP1521,具体电路如图5所示。MP1521有3组独立的电流反馈回路,可同时驱动3组并联的LED,现将3个反馈回路短接,用于驱动6个白色LED背光灯,可以提供更大的驱动电流,电路设计有过流保护功能。图5中R206为反馈电阻,用于采样输出电流。显示屏的亮度可通过MP1521第5引脚上的电压来调节,为了提高应用的灵活性,本设计将该引脚接为固定电平。为了节省功耗,电路接有使能控制端LCD_PWREN,高电平时电路工作;低电平时电路关断,以便节省功耗。
图5 LED背光驱动电路
灰度电压产生电路
源极驱动器根据数据信号的大小选择加到每个点的电压。因为加到源极驱动器的数据为18bit,其中RGB分量各为6bit,因而每个点可以有64种灰度的变化。由于集成度的限制,灰度参考电压电路需要由外部给出。
S3C2410 LCD控制器的设置方法
结构和信号说明
S3C2410 LCD控制器用来传输图像数据并产生相应的控制信号,该控制器由REGBANK(控制寄存器组)、LCDCDMA(专用DMA)、VIDPCS(视频信号处理单元)、LPC3600和TIMEGEN(时序信号产生单元)组成。其中REGBANK包含17个可编程寄存器和几个256×16的调色板存储器,用来配置LCD控制器,并设置相应的参数;而LCDCDMA提供了视频信号的快速传输通道,自动通过系统总线从系统帧缓存中取出视频数据,并传输到视频信号处理单元;VIDPCS将专用DMA中取出的信号进行整形并提高驱动能力等处理后,输出到外部数据端口VD[23:0]; TIMEGEN和LPC3600负责产生 LCD屏所需要的控制时序。
图6 液晶驱动电路底面图
S3C2410 LCD控制器可以产生的用于控制TFT-LCD的时序信号主要包括VCLK(像点时钟)、VDEN(数据有效信号)、VSYNC(垂直同步信号)、HSYNC(水平同步信号)、LEND(行结束信号)及LCD_PWREN(液晶屏使能信号)。VCLK信号是LCD控制器和LCD驱动器的像素时钟信号, LCD控制器在VCLK信号的上升沿处将数据送出,在VCLK信号的下降沿处被LCD控制器采样;VSYNC信号是垂直同步信号(也称帧同步信号),用来指示新的一帧图像的开始;HSYNC信号是水平同步信号(或行同步信号),用来给出新的一行扫描信号的开始;VDEN信号是数据使能信号;LEND信号是行扫描结束信号,LCD驱动器在每扫描一行像素后给出该信号;LCD_PWREN信号用来控制LCD控制器的开或关,以便降低功耗,它需要LCD控制器硬件设计的支持。
寄存器和设置说明
S3C2410的LCD控制器内部设有较多的寄存器,其中与时序信号高度相关的寄存器位于寄存器组中的LCDCON1/2/3/4/5。本文设计的LCD驱动器需要LCD控制器给出VCLK、VDEN、LCD_PWREN和VD[23:0]信号,其中VCLK信号依赖于LCDCON1寄存器中CLKVAL和S3C2410的HCLK的取值,具体公式为:VCLK(Hz)=HCLK/[(CLKVAL+1)×2]。VSYNC和HSYNC的产生依赖于LCDCON2/3寄存器及HOZVAL和LINEVAL的配置,其中HOZVAL=水平像素数-1,LINEVAL=垂直显示尺寸-1。帧频率VSYNC与LCDCON1/2/3/4寄存器中的VSPW、VBPD、VFPD、LINEVAL、HSYNC、HBPD、HFPD、HOZVAL和CLKVAL有关,具体公式为:
Frame Rate(VSYNC)=1/{[(VSPW+1)+(VBPD+1)+ (VFPD+1)+(LINEVAL+1)] 碵(HSPW+1)+(HBPD+1)+ (HFPD+1)+(HOZVAL+1)] 碵2?CLKVAL+1)/HVLK]}
其中,HOZVAL=240-1=239,LINEVAL=320-1=319。
系统测试结果
在软硬件研制开发完成后,对系统进行了测试,图6是PCB板的地面元件布局图,测试结果显示,液晶屏可以正常显示,该系统达到了设计要求。由于设计的硬件驱动电路只需要LCD 控制器给出像点时钟、数据使能信号和RGB数据信号,因此,为移植到不同的平台带来了较大的灵活性,实用性很强。
[1]. ARM920T datasheet https://www.dzsc.com/datasheet/ARM920T_139814.html.
[2]. MAX1779 datasheet https://www.dzsc.com/datasheet/MAX1779_720879.html.
[3]. AD8541 datasheet https://www.dzsc.com/datasheet/AD8541_250554.html.
[4]. CPLD datasheet https://www.dzsc.com/datasheet/CPLD_1136600.html.
[5]. MP1521 datasheet https://www.dzsc.com/datasheet/MP1521_2427743.html.
[6]. PCB datasheet https://www.dzsc.com/datasheet/PCB_1201640.html.
免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。