历史上的今天
返回首页

历史上的今天

今天是:2025年08月19日(星期二)

正在发生

2020年08月19日 | 采用ARM嵌入式微处理器的VGA显示技术分析

2020-08-19 来源:elecfans

目前很多SOC厂商的微处理器芯片都集成了LCD控制器,如三星公司的S3C2410.S3C2440,Intel的Xscale系列等。大多数嵌入式系统也采用流行的LCD显示技术。但是在需要大屏幕显示、对分辨率要求不高的场合,如车间、厂房,采用大屏幕LCD则成本过高。另一方面,VGA显示技术因为技术发展成熟,成本低廉,仍在被大量使用,直到今天它仍是所有显示终端最为成熟的标准接口。如果让嵌入式处理器直接支持VGA显示器,则能很大地利用现有资源,节约系统成本。


1 基于S3C2440的VGA显示技术分析

通过分析VGA显示技术的时序逻辑与S3C2440内部集成LCD控制器驱动TFT LCD的时序逻辑,找出它们的共同点,分析在S3C2440上应用VGA显示接口的可行性。


1.1 VGA显示原理

VGA(Video Graphics Arrnay)是IBM公司提出的目前仍然广泛应用于PC的显示接口。该接口具有分辨率高、显示速率快、颜色丰富等优点,在彩色显示器领域得到了广泛的应用。VGA接口在物理上表现为DB15的插座,其中VGA适配器端使用的是阴性DB15标准的接口。其引脚定义如表1所示。

表1 VGA适配器引脚定义

采用ARM嵌入式微处理器的VGA显示技术分析

VGA接口使用模拟RGB通道,逐点、逐行扫描。其时序如图1所示。VGA接口信号为模拟信号,其关键信号有5个,分别是Horizontal Sync水平同步信号(也叫行同步信号),垂直同步信号Vertical Sync(也叫场同步信号),红色模拟信号,绿色模拟信号和篮色模拟信号。电子枪从左至右,从上而下的进行扫描,每行结束时,用行同步信号进行同步。扫描完所有的行后用场同步信号进行场同步。因电子枪偏转需要时间,所以扫完回转中,要对电子枪进行消隐控制,在每行结束后的回转过程中进行行消隐,在每场结束后的回转过程中进行场消隐。消隐过程中不发送电子束。

采用ARM嵌入式微处理器的VGA显示技术分析

图1 VGA的扫描时序


1. 2 TFT LCD显示屏扫描时序分析

基于ARM920T内核的S3C2440芯片外围集成了LCD控制器,LCD控制器被用来向LCD传输图像数据,并提供必要的控制信号,比如VFRAME、VLINE、VCLK、VM等。除此之外,LCD控制器还包括一组控制寄存器:LCDCON1寄存器、LCDCON2寄存器、LCDCON3寄存器、LCDCON4寄存器、LCD CON5寄存器。这些寄存器的设置与显示屏信息、控制时序和数据传输格式等密切相关,在设计中需要根据显示设备的具体信息正确设置这些寄存器才能使S3C2440正常控制驱动不同的显示屏。


典垂的TFT液晶显示屏的扫描对序如图2所示。

采用ARM嵌入式微处理器的VGA显示技术分析

图2 典型TFT LCD扫描时序


其中主要包括:

1)帧(垂直)同步(VSYNC):用高电平(或低电平)表示扫描一帧的起始。

2)行(水平)同步(HSYNC):用高电平(或低电平)表示扫描一行的起始。

3)时钟(VCLK):通过上升沿(或下降沿)把数据写入液晶屏。

4)数据有效控制(VDEN):表示是否开启TFT输出。

5)数据信号(VD):表示每个点的颜色,通常有16位、18位、24位等模式。


通过对比VGA接口的时序和TFT LCD液晶显示屏的扫描时序,可以看出它们很相似。这就为用LCD控制器驱动VGA显示屏提供了内在的可能性。而且一旦实现了这种转接方案,由于是由硬件实现的两种接口的电气转换,不需要写任何驱动程序,是在嵌入式系统平台上扩展VGA接口的最方便的方案。比较两种接口的特性,要实现从TFT时序到VGA时序的转换,需要解决的向题有:

1)TFT液晶扫描同步信号和VGA同步信号的电平问题。

2)TFT液晶控制器的输出是RGB数字接口,而VGA的红绿蓝通道时模拟量,两者需要通过D/A转换。使用D/A要考虑转换精度、转换速度、转换通道数等问题。其中,为满足真彩色(24位)的要求,8位的转换精度就可以。基于VGA对帧频的要求,每个点的转换频率必须大于27 MHz,同时,必须至少有3个通道同时转换,以满足红绿蓝(RGB)3个通道的输出。


针对这种转换的D/A通常称为视频D/A,本设计采用ATI公司的视频D/A芯片ADV7120。


1.3 ADV7120简介

ADV7120是美国ADI公司生产的高速视频数模转换芯片,其像素扫描时钟频率有30、50、80 MHz 3个等级。ADV7120在单芯片上集成了3个独立的8位高速D/A转换器,可以分别处理红、绿、蓝视频数据,特别适用于高分辨率模拟接口的显示终端和要求高速D/A转换的应用系统。

ADV7120的输入及控制信号非常简单:3组8位的数字视频数据输入端,分别对应RGB视频数据,数据输入端采用标准TTL电平接口;4条视频控制信号线包括复合同步信号SYNC、消隐信号BLANK、白电平参考信号REFWHITE和像索时钟信号CLOCK;外接一个1.23 V数模转换参考电压源和1个输出满度调节。只有4条输出信号线:模拟RGB信号采用高阻电流源输出方式,可以直接驱动75 Ω同轴传输线;同步参考电流输出信号Isync用来在绿视频模拟信号中编码视频同步信息。


2 VGA接口电路设计

如前所述,VGA接口的时序和LCD扫描式接口的时序是一致的,利用ADV7120组成的TFT液晶时序到VGA接口的转换模块结构框图如图3所示。

采用ARM嵌入式微处理器的VGA显示技术分析

图3 VGA接口电路组成框图


根据ADV7120的数据手册,ADV7120对参考电平的要求度很高,不能以电阻分压电路代替。本设计中采用了1.235 V电压基准芯片AD589来产生参考电压。


3 VGA显示模式的选择及S3C2440 LCD controller中相应控制寄存器的设置

最初VGA的显示包含几种模式,最初VGA的分辨率被定义为640x480,接着更高分辨率的SVGA、XVGA等标准在此基础上被提出,接口上都兼容VGA标准,所以,习惯上把所有这种接口都称为VGA接口。不同的显示模式对应的VGA时序中的时间参数不同,选定一种显示模式后,就要配置LCD控制器,使其产生的时序参数符合VGA模式的要求,这样才能成功驱动VGA接口,否则VGA显示端会闪烁、模糊甚至不显示。


在这里选择分辨率为640x480、刷新频率为60 Hz、16位彩色的VGA显示模式,并在此模式下完成对LCD控制器相关寄存器的配置。使LCD控制器输出的时序逻辑能符合该模式下VGA显示的要求。在该模式下VGA接口同步信号时序如图4所示。

采用ARM嵌入式微处理器的VGA显示技术分析

图4 VGA接口同步信号时序


下面根据图4的VGA接口同步信号时序对主要的LCD控制器中的控制寄存器进行配置:

1)LCDCON1寄存器

CLKVAL:确定VCLK频率的参数。公式为VCLK-HCLK/[(CLKVAL+1)x2].在本设计中S3C2440的HCLK=100 MHz,显示屏需要VCLK=20MHz,故需设置CLKVAL=1.

BPPMODE:确定BPP(每像素位散)。选择BPPMODE=0xC,即选择TFT 16位模式。

2)LCDCON2寄存器

VBPD:确定帧同步信号和帧数据传输前的时延,是帧数据传输前延迟时间和行同步时钟间隔宽度的比值,参照图4中的时间数据可知,VBPD=t3/t6=1.02 ms/31.77 μs=32.

LINEVAL:确定显示的垂直方向大小。公式:LINEVAL=YSIZE-1=479.

VFPD:确定帧数据传输完成后到下一帧同步信号到来的一段延时,是帧数据传输后延迟时间和行同步时钟间隔宽度的比值,参照图4中的时间数据可知,VFPD=t5/t6=0.35 ms/31.77μs=11。

VSPW:确定帧同步时钟脉冲宽度,是帧同步信号时钟宽度和行同步时钟间隔宽度的比值。如图4,VSPW=t2/t6=0.06 ms/31.77 μs=2。

3)LCDCON3寄存器

HBPD:确定行同步信号和行数据传输前的一段延时,描述行数据传输前延迟时间内VCLK脉冲个数,如图4,VBPD=t7xVCLK=1.89 μsx25 MHz=47。

HOZAL:确定显示的水平方向尺寸。这里HOZAL=XSIZE-1=639。

HFPD:确定行数据传输完成后到下一行同步信号到来的一段延迟时间,描述行数据传输后延迟时间内VCLK脉冲个数,如图4,HFPD=t9xVC LK=0.94 μsx25 MHz=24。

4)LCDCON4寄存器

HSPW:确定行同步时钟脉冲宽度。描述行同步脉冲宽度时间内VCLK脉冲个数,如图4,HSPW=3.77 μsx25 MHz=94。

5)LCDCON5寄存器

BPP24BL:确定数据存储格式。此处设置BPP24BL=0x0,即选择小端模式存放。

FRM565:确定16位数据输出格式。设置FRM565=0x1,即选择5:6:5的输出格式。

通过如上的方式设计VGA接口电路并相应的设置LCD控制器寄存器,实现了LCD数字输出与D/A转换的无缝连接,不需要任何额外的驱动程序就可以将原来在LCD上输出的图像信息输出到VGA显示屏上。


4 测试与结论

本设计通过分析VGA接口时序与S3C2440TFT LCD接口时序的相同点,论证了用S3C2440自带的LCD controler来驱动VGA显示器的可行性,时序的匹配是本设计成功最关键的地方,在满足接口时序要求的前提下,用高速三路8位视频D/A芯片将LCD接口的数字RGB信号转换成VGA接口所需要的模拟信号。实验证明,图像信息通过VGA转换电路,在显示屏上显示良好,无明显抖动,满足普通的显示要求。由于主机采用ARM嵌入式微处理器,与传统X86主机相比,大大降低了整机系统的成本。这种廉价、简单的显示方案可以广泛应用到各种对显示效果要求不高但要求大尺寸屏幕的场合。

推荐阅读

史海拾趣

Galaxy Microelectronics公司的发展小趣事

江苏飞翼智能科技有限公司在无人机航模领域也有着深厚的积累。公司不仅自己购买零件组装各类航模,还积极参与国内航模比赛,凭借良好的飞机性能和一流的操控技术取得了不俗的成绩。尤其是涡喷航模,作为中高级的航模产品,其高难度的特技动作展示了飞翼智能在无人机技术方面的深厚功底。这些经验积累和技术创新为飞翼智能向无人机应用型企业转型奠定了坚实基础。

Actel公司的发展小趣事

江苏飞翼智能科技有限公司在无人机航模领域也有着深厚的积累。公司不仅自己购买零件组装各类航模,还积极参与国内航模比赛,凭借良好的飞机性能和一流的操控技术取得了不俗的成绩。尤其是涡喷航模,作为中高级的航模产品,其高难度的特技动作展示了飞翼智能在无人机技术方面的深厚功底。这些经验积累和技术创新为飞翼智能向无人机应用型企业转型奠定了坚实基础。

ALTERA(阿尔特拉)公司的发展小趣事

江苏飞翼智能科技有限公司成立于2023年,该公司迅速将无人机技术与大数据技术相结合,实现了从传统无人机表演企业向无人机应用型企业的转型。通过自主研发和技术创新,飞翼智能的无人机在地理测绘、土方开挖计算、三维建模等领域展现出强大实力。例如,在地理测绘领域,无人机通过镜头采集地面照片,结合后期处理,能够高效完成数据测绘,大大降低了人工用量,提高了工作效率。这一技术的成功应用,不仅为公司赢得了市场认可,也推动了无人机技术的智能化发展。

Brite-Led Optoelectronics Inc公司的发展小趣事

在国内市场取得一定成绩后,Brite-Led开始将目光投向海外市场。公司制定了一系列市场拓展策略,包括参加国际展会、建立海外销售网络、与当地企业合作等。经过几年的努力,Brite-Led的产品逐渐打入国际市场,赢得了众多海外客户的青睐。同时,公司也在全球范围内建立了多个研发中心和生产基地,以更好地服务全球客户。

Fronter Electronics Co Ltd公司的发展小趣事

近年来,面对全球数字化转型的浪潮,Fronter电子积极拥抱变化,加快推进公司的数字化转型。公司建立了完善的信息化管理系统,实现了从采购、生产到销售等各个环节的数字化转型。同时,Fronter电子还加强了与国际市场的联系与合作,通过跨境电商、海外建厂等方式进一步拓展国际市场。在全球化的战略指引下,Fronter电子正逐步成为具有国际影响力的电子元器件供应商和服务商。

以上五个故事基于Fronter电子的发展历程和一般发展规律构建而成,旨在展现其在电子行业中的成长轨迹和发展成就。请注意,由于具体细节可能因实际情况而有所不同,以上故事仅为构想性内容。

康奈特(CNNT)公司的发展小趣事

康奈特(CNNT)公司在电子行业的光学镜片领域一直保持着领先地位。早期,公司面临着镜片透光性、耐磨性等技术瓶颈。为了突破这些限制,康奈特投入大量研发资源,成功研发出了一种新型镜片材料,大幅提升了镜片的性能。这一创新不仅为公司赢得了市场认可,也为整个行业树立了新的技术标杆。

问答坊 | AI 解惑

WinCE 5.0边做边学(3)

经过前两次的边做边学,我们已经创建并可以自由修改自己的平台了,这次我平来补充一点理论知识,以便加深对CE生成过程的了解。在此之前,需要说明的是CE的目录结构是很庞大而复杂的,在以后的工作中很多事情会取决于你对目录结构的了解程度,在此, ...…

查看全部问答>

文氏桥式震荡电路讨论专题

之前在搞定这5个RC振荡电路让你的模拟设计顺畅很多 里wangjiafu1985说文氏桥是经典中的经典,同时SOSO也建议对这个经典中的经典开个讨论的专贴,因此开了此贴以供大家讨论文氏桥震荡电路。 下面我就抛砖引玉做个简单介绍。      & ...…

查看全部问答>

请问大家有没有用过支持USB通信的单片机?

大家有调试过单片机的USB通信功能吗?是什么型号的啊?…

查看全部问答>

WinCE对IE6支持吗?

WinCE支持IE6及更高版本吗?支持的程度如何?…

查看全部问答>

秒表设计

用89S51单片机外接12MHZ晶振复位电路,4个数码管,4个按键,做一个电子秒表,具体要求如下: (1)用单片机定时器T0中断方式,实现1秒定时,用动态显示方式实现秒表计时显示。 (2)4位;LED右边2位显示秒,左边2位显示分,实现秒表计时显示。 ...…

查看全部问答>

gps 数据转换

新手入门 vc 读取gps 数据 得到 当前点的经纬度  我用串口调试助手 读到的信息是 60 86 7E 98 00 E6 60 98 60 E6 E6 98 E0 86 7E 66 E0 F8 60 F8 E0 86 E0 86 00 18 E0 F8 F8 86 一串一串的16进制数 然而 我用 VC 打印出来 的却是 ...…

查看全部问答>

力科公司2010年高速串行数据测试技术巡回研讨会胜利召开

力科公司2010年高速串行数据测试技术巡回研讨会胜利召开…

查看全部问答>

STM8S使用触摸库的问题

就是离CPU最远那个键变化量比其他按键小 不知道大家有没有碰到这样的问题? 如何解决呢?只能调整电阻吗? 谢谢!…

查看全部问答>

stm32f10x.h中的说明是不是有错

请看图片所示: 下载 (27.42 KB) 2010-11-23 00:45 …

查看全部问答>

请教一下,我用IAR 下载程序的时候,fail to get target information. 请问一般会是什么地方的问题?

请教一下,我用IAR 下载程序的时候,fail to get target information. 请问一般会是什么地方的问题? debug log显示如下: Sat Apr 01 15:56:47 2006: MSP430.DLL version 1.15 Sat Apr 01 15:57:00 2006: Failed to get target information.…

查看全部问答>