6回答

0收藏

Arrow DECA MAX 10 评估套件体验--HDMI显示

其他 其他 4679 人阅读 | 6 人回复 | 2016-02-27

  好久没有更新了,抱歉抱歉,加快速度
  DECA上有HDMI,当时忍不住温习了一下VGA的,用自己的板子(cyclone系列)做了验证:
  https://www.cirmall.com/bbs/thread-46342-1-1.html

   紧接着,对ADV7513的几篇ds进行了阅读,开始了HDMI的了解和学习。


   要用ADV7513,首先是要通过I2c来配置这款芯片,配置完成之后,像VGA那样送视频数据,当然,这里还有音频数据,我们这显示屏没有音响,所以音频留着后续研究吧,先通过HDMI把我的24寸显示屏点起来。还有,由于DECA这块板卡,HDMI是发送端,其实我们可以读取显示器的EDID,至于EDID是啥,一般将显示器插上电脑显卡的视频接口的时候,显卡会读取显示屏的EDID的信息,里面有很多关于显示器的参数。这里我们为简单,暂时不去读取了。
   所以,如果要用FPGA通过HDMI接口点亮显示器,一配置好芯片,二送数据。下面就这两部分进行分析。

一:ADV7513芯片配置

通过标准的I2c总线来配置ADV7513,相信很多FPGA设计者都用FPGA玩过eeprom、0v7670或者其他i2c接口的外设,对于这样一个HDMI芯片的配置不会太难。具体要参考编程手册:里面都有各个寄存器的一些操作。
       本次配置的寄存器如下:


状态机:

      然后就是i2c的一个配置过程,我在写verilog的时候,配置完之后,给出一个config_done信号,这样就知道,我们配置完成了,当然,我这里对I2c的配置还做了modelsim的仿真,熟悉的就可以不去做了。。
二:送数据,要符合时序
从编程手册中可以知道,ADV7513支持CEA861D定义的视频时序,于是我就去下载了这个文档,是一个视频时序标准,类似于VESA的视频标准一样。
找到我需要的分辨率  1920*1080@60Hz,选择1080P,P和I有不同的时序。

如16对应的是1080P,60Hz,4对应的是1080i,60Hz,可以看到像素频率有差别,这里还看不到SYNC的参数;

红色16部分就能找到和VGA那样的参数了。

由上图可知:
Hfornt :88  Hsync : 44  Hback  :148
Vfornt :4    Vsync : 5   Vback  :36

接着我们就可以看到时序图了,如下,有这个图就好办了!!!!和VGA的类似吧,一样处理,这里verilog就不贴出来了,一样类似的。

然后配置完成之后,我们就按照这个时序送数据咯。。

好了,上图:和VGA一样的实验效果(只拍了几张);





后续可能准备研究学习的工作:
(1)继续研究HDMI,如EDID,音频部分;
(2)0v7670(或DECA摄像头)-》DDR3-》HDMI,这部分可以为后续的接触算法打好基础。

加油&努力
分享到:
回复

使用道具 举报

回答|共 6 个

倒序浏览

沙发

yanhaijian

发表于 2016-2-27 21:44:46 | 只看该作者

恭喜,有成果了。
板凳

jwdxu2009

发表于 2016-2-27 22:44:56 | 只看该作者

写的好,有机会试用一下
地板

michael_llh

发表于 2016-2-28 00:46:13 | 只看该作者

谢谢分享!!
5#

糖悦之果飞

发表于 2016-2-29 10:09:04 | 只看该作者

亲,可以将内容一并发到经验频道,很有机会获得每月之星的呢http://jingyan.eeboard.com/
6#

6100308094

发表于 2016-2-29 21:38:34 | 只看该作者

jwdxu2009 发表于 2016-2-27 22:44
写的好,有机会试用一下

有机会的
加油&努力
7#

黑溱郎

发表于 2016-3-1 09:01:33 | 只看该作者

谢谢分享!!!
您需要登录后才可以回帖 注册/登录

本版积分规则

学生
3704 积分
24 主题
+ 关注
热门推荐
关闭

站长推荐上一条 /3 下一条