首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

ARM嵌入式的VGA接口制作(2)

ARM嵌入式的VGA接口制作(2)

3 VGA接口设计  利用高性能视频D/A转换芯片ADV7120将S3C24l0自带的LCD扫描式接口转换为VGA接口,然后用带有VGA接口的显示器显示。
  3.1 ADV7120简介
  ADV7120是美国ADI公司生产的高速视频数模转换芯片,其像素扫描时钟频率有30 MHz、50 MHz、80 MHz三个等级。ADV7120在单芯片上集成了3个独立的8位高速D/A转换器,可以分别处理红、绿、蓝视频数据,特别适用于高分辨率模拟接口的显示终端和要求高速D/A转换的应用系统。
  ADV7120的输入及控制信号非常简单:3组8位的数字视频数据输入端,分别对应RGB视频数据,数据输入端采用标准TTL电平接口;4条视频控制信号线包括复合同步信号SYNC、消隐信号BLANK、白电平参考信号REF WHITE和像素时钟信号CLOCK;外接一个1.23 V数模转换参考电压源和1个输出满度调节。只有4条输出信号线:模拟RGB信号采用高阻电流源输出方式,可以直接驱动75Ω同轴传输线;同步参考电流输出信号Isync用来在绿视频模拟信号中编码视频同步信息。
  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寄存器的设置。
  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。
继承事业,薪火相传
返回列表