S3C2440的嵌入式VGA接口设计

2010-09-04 06:08朱丽婷
关键词:调色板数据格式嵌入式

朱丽婷,赵 哲

(杭州电子科技大学电子信息学院,浙江杭州310018)

0 引 言

S3C2440处理器是三星公司的一款基于ARM920T内核的CPU,应用广泛。随着嵌入式技术的不断发展,处理器往往需要支持带有VGA接口的显示设备,然而S3C2440并不支持VGA数据接口,但其内置有LCD控制器,因此通过LCD转VGA技术可以方便实现S3C2440对VGA设备的支持[1]。通常,LCD转VGA技术有两种方法,一种是通过D/A转换芯片实现,另一种是通过FPGA桥接实现[2]。显然第一种方法成本较低,适用于对显示效果要求不高的领域。笔者在开发基于S3C2440的多媒体学习机的过程中,采用TI公司的THS8134B作为视频信号转换芯片,设计了LCD转VGA接口的硬件电路和相关驱动程序,使之能够驱动VGA接口的显示器。

1 系统硬件设计

系统硬件主要由S3C2440处理器与THS8134B芯片组成,如图1所示为系统的组成框图。

THS8134是TI公司生产的用于视频/图形应用的通用高速3路DAC芯片。该器件工作在5 V模拟供电,3~5 V数字供电的条件下,其最高采样速率可达到80 Msps。THS8134由3个8位D/A转换器组成,在视频应用中可由附加电路提供两电平或三电平的同步信号和消隐信号,而且可以控制同步是在Y/G上还是3个通道都带同步。在本系统中THS8134工作在RGB模式[3]。根据手册应当配置M1=0,M2_INT=0。其中M1直接对应引脚的电平,所以直接把M1接地即可;而M2_INT是内部信号,它需要在SYNC引脚的上升沿依据M2引脚进行配置。设计中把帧同步信号FCLK和SYNC连接,把M2信号直接接地,这样每次在帧同步信号的上升沿配置M2_INT=0,在下降沿配置INS3_INT=0,从而实现了RGB模式的配置。

LCD接口数据的2到7位、10到15位、18到23位分别与THS8134芯片的BLUE信号,GREEN信号和RED信号相连接,这样就完成了S3C2440处理器与芯片之间数字信号的传输[4]。THS8134芯片的时钟信号采用LCD接口的时钟信号,BLANK信号与VM信号相连接,SYNC同步信号与帧同步信号相连。如此连接控制信号,实现了LCD数字输出与D/A转换的无缝连接,因此,不用特意去编写控制D/A转换的额外程序,大大简化了驱动程序的设计。如图2所示为硬件实物图。

图1 系统结构框图

图2 VGA转换板实物图

2 系统软件设计

系统程序主要实现在VGA显示器上全屏显示某种颜色以及画线、画圆等操作,从串口输出一个菜单,从中选择各种操作命令。程序结构如图3所示。

主函数中在串口输出菜单以选择不同的显示命令来操作LCD。Lcd.c调用以下两个文件提供的函数在LCD上进行操作。Lcdlib.c封装了对LCD控制器、调色板的访问函数,可以设置LCD的显示模式、开启/关闭LCD、设置调色板等。Framebuffer.c直接操作帧缓存区,实现了画点、画线、单色显示等函数。该文件是对操作图像数据的封装,这里主要介绍对端口的初始化、功能配置以及视频信号设置等程序。S3C2440的LCD接口主要由LCD控制器、LCD地址寄存器、LCD中断屏蔽控制器等组成,LCD接口如何工作就取决于对这些控制器和寄存器如何赋值[5]。具体设置为:

(1)LCDCON1:设置VCLK的频率VCLK(Hz)、选择 LCD类型TFT LCD、设置显示模式16BPP、先禁止LCD信号输出;

(2)LCDCON2/3/4:设置控制信号的时间参数、设置分辨率,即行数和列数;

图3 LCD显示程序框图

(3)LCDCON5:设置显示模式为16BPP时的数据格式:5:6:5设置HSYNC、VSYNC 脉冲的极性(这需要参考具体LCD的接口信号)为反转;

(4)调色板中用16BPP的格式表示颜色,设置调色板中的数据格式为5:6:5(红色用5位输出、绿色用6位输出、蓝色用5位输出)。LCDCON5|=(1<<11)//设置调色板中数据格式为5:6:5;color=(red<<11)|(green<<5)|blue。

设计中通过软件设置S3C2440处理器工作在640×480×60Hz×16BPP(分辨率为640×480、刷新频率为60Hz、16位色彩)模式下。

3 测试结果

经过硬件方面的调试,在S3C2440开发板的VFRAME和VLINE脚成功得到了VGA显示器需要的VSYNC和HSYNC信号如图4、5所示。程序经过交叉编译后写到NAN Flash中,重启后显示器能正确显示画面,分辨率为640×480,屏幕刷新率60Hz,图像清晰稳定,达到了预期的效果,如图6所示。

图4 VFRAME波形

图5 VLINE波形

4 结束语

本文结合S3C2440处理器和THS8134芯片,给出了一种LCD转VGA的简易技术方法,这种方法在硬件上简单易行,在软件上设计也不复杂,适合于低成本要求的嵌入式设备开发。对解决基于ARM的嵌入式系统中大屏幕显示方面的问题有很大的实用价值和借鉴意义。

图6 同心圆显示图

[1]范加利,赵国良.嵌入式视频系统中VGA接口的设计[J].应用科技,2008,35(10):37-40.

[2]张义磊,安吉宇.ARM芯片S3C2410驱动TFT-LCD的研究[J].液晶与显示,2005,20(1):12-15.

[3]王亮,李正.VGA汉字显示的FPGA设计与实现[J].计算机工程与设计,2009,30(2):275-277.

[4]黄杰勇,邓春健.基于CPLD的VGA图像显示控制系统[J].现代计算机,2008,(12):167-169.

[5]韦东山.嵌入式Linux应用开发完全手册[M].北京:人民邮电出版社,2008:197-220.

猜你喜欢
调色板数据格式嵌入式
大自然的调色板——张掖七彩丹霞
Film review:WALL·E
大地调色板
搭建基于Qt的嵌入式开发平台
基于水利标准数据格式的BIM数据管理和水利BIM生态探索
嵌入式软PLC在电镀生产流程控制系统中的应用
世界首个可记录物体内部结构等复杂信息的3D打印数据格式问世
调色板
论子函数在C语言数据格式输出中的应用
Altera加入嵌入式视觉联盟