ARM嵌入式平台的VGA接口设计

技术分类: 嵌入式系统  | 2007-07-09
来源:单片机及嵌入式系统应用 | 作者:陈桂 田学隆等

  3.2 原理图设计

  VGA接口的同步信号和LCD扫描式接口的同步信号是一致的。利用ADV7120可以方便地将S3C24l0的LCD扫描式接口转换成VGA接口,电路原理如图2所示。

电路原理图

  S3C2410处理器接口中的同步扫描信号HSYNC和VSYNC直接接到VGA接口,VDEN信号(显示数据有效信号)则被用于控制ADV7120芯片。由于ADV7120对参考电平的要求精度很高,不能以电阻分压电路代替。在此采用了1.2 V电压基准芯片AD589来产生参考电压。该电路设计中需要注意的是,在PCB布板时要将模拟地和数字地分开。

  4 S3C2410相关寄存器设置

  以分辨率为640×480、刷新频率为60 Hz、16位彩色显示模式为例,根据图3所示VGA接口同步信号时序,介绍S3C2410中LCDCON1~LCDCON5寄存器的设置。

VGA接口同步信号时序

  4.1 LCDCONl寄存器

  LINECNT:行计数器的状态位。只读,不用设置。

  CLKVAL:确定VCLK频率的参数。公式为VCLK=HCLK/[(CLKVAL+1)×2],单位为Hz。笔者所用的硬件系统HCLK=100 MHz,640×480的显示屏需要VCLK=20 MHz,故需设置CLKVAL=1。

  MMODE:确定VM的改变速度。在此选择MMODE=O,为每帧变化模式。

  PNRMODE:确定扫描方式。选择PNRMODE=0x3,为TFT LCD面板扫描模式。

  BPPMODE:确定BPP(每像素位数)模式。在此选择BPPMODE=0xC,为TFT 16位模式。

  ENVID:数据输出和逻辑信号使能控制位。选择ENVID=1,为允许数据输出和逻辑控制。

  4.2 LCDCON2寄存器

  VBPD:确定帧同步信号和帧数据传输前的一段延迟时间,是帧数据传输前延迟时间和行同步时钟间隔宽度的比值,如图3,VBPD=t3/t6=1.02 mS/31.77μs=32。

  LINEVAL:确定显示的垂直方向尺寸。公式:LINEVAL=YSIZE-1=479。

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

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

  4.3 LCDCON3寄存器

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

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

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

  4.4 LCDCON4寄存器

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

  4.5 LCDCON5寄存器

  VSTATUS:垂直方向状态。只读,不用设置。

  HSTATUS:水平方向状态。只读,不用设置。

  BPP24BL:确定显示数据存储格式。此处设置BPP24BL=0x0,为小端模式存放。

  FRM565:确定16位数据输出格式。此处设置FRM565=0x1,为5:6:5格式输出。

  INVVCLK:确定VCLK脉冲有效边沿极性。根据屏幕信息确定,此处选择INVVCLK=0xl,VCLK上升沿到来时数据传输开始。

  INVVLlNE:确定HSYNC脉冲的极性。由图3可知,为负极性,设置INVVLINE=0x1选择负极性脉冲。

  INVVFRAME:确定VSYNC脉冲的极性。由图3可以看出,为负极性,故设置INVVFRAME=0x1选择负极性脉冲。

  INVVD:确定数据输出的脉冲极性。根据屏幕信息确定,此处设置INVVD=0x0选择正极性脉冲。

  INVVDEN:确定VDEN信号极性。根据屏幕信息确定,此处设置INVVDEN=0x0为正极性脉冲。

1】【2】【3
加载中

对文章的评论

更多评论

剩余字数:  

浏览该文章的用户还看过...

  • 文 章

  • 论 坛

  • 博 客

  • 小 组

设计资源与分销