0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用DE10-Nano的HDMI方块移动案例的整体实现

友晶FPGA 来源:友晶FPGA 2026-01-19 09:20 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

1 实验要求

FPGA上生成1280x720@60分辨率的视频信号,通过DE10-Nano的 HDMI输出到显示屏上进行显示,显示的内容是一个黑色方块每隔10ms移动一个像素位置,方块遇到边框自行回弹,屏幕背景为白色,屏幕边框为绿色。

2 设计框图

根据实验要求分析可得出,想要控制ADV7513最终在HDMI显示器上显示画面,需要先配置ADV7513寄存器,配置通过I2C总线,该部分的控制原理在前面(参考文末往期阅读的链接)已经讲解过。

想要在HDMI显示器上显示边框,方块和白色背景,需要设计一个满足DMT时序的视频信号。

1280x720@60分辨率的像素时钟是74.25MHz,所以这里可调用Altera的PLL IP来生成这个时钟(系统时钟是50MHz)。

整个系统的设计框图如下所示:

14e3b310-f0e8-11f0-92de-92fbcf53809c.png

3 代码实现

(1)Top level代码

主要是例化PLL、HDMI显示和I2C控制三个模块。具体代码参考工程。

(2)HDMI控制器模块

HDMI控制器模块用于生成1280x720分辨率的视频信号,并在屏幕上显示一个每隔10ms移动的黑色方块,背景为白色,屏幕边框为绿色。

1. 首先是1280*720分辨率时序参数的设定。如下是行时序参数设定:

15465092-f0e8-11f0-92de-92fbcf53809c.png

这些参数对应到时序如下图所示:

15a18872-f0e8-11f0-92de-92fbcf53809c.png

如下是场时序参数设定:

15ffbc4e-f0e8-11f0-92de-92fbcf53809c.png

这些参数对应到时序如下图所示:

165a380e-f0e8-11f0-92de-92fbcf53809c.png

2. 实现行计数器和场计数器,用于跟踪当前像素位置,以及生成像素点横纵坐标:

16b1afda-f0e8-11f0-92de-92fbcf53809c.png

3. 根据行场计数器生成行场同步信号:

170d248c-f0e8-11f0-92de-92fbcf53809c.png

4. 根据行场计数器生成像素点横纵坐标:

1765c24a-f0e8-11f0-92de-92fbcf53809c.png

5. hdmi_ctrl模块的时钟是74.25MHz(1280*720@60对应的像素时钟),利用计数器产生10ms间隔:

17c55124-f0e8-11f0-92de-92fbcf53809c.png

6. 当方块移动到边界时,改变移动方向:

182013f2-f0e8-11f0-92de-92fbcf53809c.png

根据代码画出方向改变的框图示意图如下:

188138a8-f0e8-11f0-92de-92fbcf53809c.png

7. 根据方块移动方向,改变其纵横坐标:

18de9318-f0e8-11f0-92de-92fbcf53809c.png

19425ae2-f0e8-11f0-92de-92fbcf53809c.png

8. 给不同的区域绘制不同的颜色:

19a03194-f0e8-11f0-92de-92fbcf53809c.png

(3)I2C控制模块

I2C控制模块直接参考本文第8.3章节(内容一模一样)。

4 硬件准备

DE10-Nano开发板一套(包括电源USB 线缆)

HDMI显示器一台

HDMI cable 一根

5 软件安装 1. 进入Altera官网选择Quartus Prime Lite 17.1版本:

1a00b578-f0e8-11f0-92de-92fbcf53809c.png

2. 点击Indicidual Files 找到Cyclone V的器件包并下载:

1a5ccc28-f0e8-11f0-92de-92fbcf53809c.png

3. 往下继续找到Intel Quartus Software下载QuartusLiteSetup压缩包和ModelSimSetup压缩包(后续会有仿真章节):

1abb1008-f0e8-11f0-92de-92fbcf53809c.png

4. 所有文件都下载完以后,双击QuartusLiteSetup-17.1.0.590-windows.exe文件进行安装。安装的过程中会默认选择一起安装Nios II IDE、ModelSim和Cyclone V器件包(未勾选时可自行勾选这些内容),建议安装的过程中所有默认设置都保留(除了安装路径自己选择外)。USB Blaster II驱动程序将在软件安装结束时提示安装。 6 操作步骤 1. 打开Quartus软件,点击File——New Project Wizard...

1b130308-f0e8-11f0-92de-92fbcf53809c.png

2. 点击Next:

1b704e28-f0e8-11f0-92de-92fbcf53809c.png

3. 在如下对话框里面选择工程路径和工程名称:

1bc841aa-f0e8-11f0-92de-92fbcf53809c.png

4. 继续点击Next:

1c280702-f0e8-11f0-92de-92fbcf53809c.png

5. 继续点击Next:

1c87f8ba-f0e8-11f0-92de-92fbcf53809c.png

6. 然后在如下对话框里面键入DE10-Nano对应的FPGA器件(5CSEBA6U23I7):

1ce06086-f0e8-11f0-92de-92fbcf53809c.png

7. 点击Finish结束工程的创建:

1d40b22e-f0e8-11f0-92de-92fbcf53809c.png

8. 开始新建Top工程,点击File——New...

1d9ea906-f0e8-11f0-92de-92fbcf53809c.png

9. 选择Verilog HDL File 然后点击OK:

1dfc64e2-f0e8-11f0-92de-92fbcf53809c.png

10. 编Verilog代码(代码可以参考随本文一起提供的工程)并保存为HDMI_block_move.v文件:

1e545062-f0e8-11f0-92de-92fbcf53809c.png

11. 用同样的方法新建.v文件,编Verilog代码(代码可以参考随本文一起提供的工程)并保存为hdmi_ctrl.v文件:

1eb5a33a-f0e8-11f0-92de-92fbcf53809c.png

12. 将第八章节提到的I2C控制器所包含的三个.v文件拷贝到当前工程路径下:

1f10dfc0-f0e8-11f0-92de-92fbcf53809c.png

13. 并将这三个文件添加到当前工程里面以便后面编译的时候会调用这三个文件,具体做法是点击Project——Add/Remove Files in Project..., 然后点击File Name旁边的...浏览到三个文件所在路径,选中这三个文件然后点击打开按钮:

1f71e34c-f0e8-11f0-92de-92fbcf53809c.png

1fcf4302-f0e8-11f0-92de-92fbcf53809c.png

14. 然后点击Apply和OK按钮结束工程文件的添加:

2036f524-f0e8-11f0-92de-92fbcf53809c.png

15. 接下来配置PLL IP,在IP Catalog里面搜索pll 找到Altera PLL,点击它:

209192c2-f0e8-11f0-92de-92fbcf53809c.png

16. 在出现如下的对话框里填入pll的名称为pll,然后点击OK:

20f6b53a-f0e8-11f0-92de-92fbcf53809c.png

17. 在Reference Clock Frequency处填写50,在outclk0处填写74.25,然后点击Finish结束pll的配置:

2159b090-f0e8-11f0-92de-92fbcf53809c.png

18. 等pll模块生成以后会弹出如下对话框,点击Yes将其添加到当前工程:

21b3627a-f0e8-11f0-92de-92fbcf53809c.png

19. 这时FPGA电路设计基本完成,接下来是引脚分配,首先点击Start Analysis&Synthesis按钮对工程进行分析和综合,这样在后面引脚分配的时候信号端口才能出现:

220c6992-f0e8-11f0-92de-92fbcf53809c.png

20. 接下来参考DE10-Nano的 usermanual文档或者schematic文件来分配引脚,该工程引脚分配如下:

22670960-f0e8-11f0-92de-92fbcf53809c.png

22cccdfe-f0e8-11f0-92de-92fbcf53809c.png

21. 引脚分配完成就点击Start Compilation按钮开始全编译工程:

232501fe-f0e8-11f0-92de-92fbcf53809c.png

22. 工程全编译结束后在HDMI_block_moveoutput_files路径下会产生HDMI_block_move.sof文件,接下来点击Programmer 按钮将此文件配置到FPGA里面去:

237de206-f0e8-11f0-92de-92fbcf53809c.png

23. 点击Hardware Setup(在这之前记得用一根HDMI线缆连接HDMI显示器和DE10-Nano, 然后用一根Mini USB线连接PC和DE10-Nano, 然后给DE10-Nano开发板插上5V电源),选择DE-SoC[USB-1]端口,点击Close:

23dda1e6-f0e8-11f0-92de-92fbcf53809c.png

24. 点击Auto Detect,选择5CSEBA6,然后点击OK:

24410358-f0e8-11f0-92de-92fbcf53809c.png

25. 如果出现如下窗口,点击Yes:

24a73b82-f0e8-11f0-92de-92fbcf53809c.png

26. 此时系统会出现两个器件,一个是SOCVHPS, 一个是5CSEBA6U23,鼠标右击5CSEBA6U23选择Change File:

250521fc-f0e8-11f0-92de-92fbcf53809c.png

27. 浏览到HDMI_block_move.sof路径下选择该文件,然后点击Open:

256b6660-f0e8-11f0-92de-92fbcf53809c.png

28. 点选如下复选框,然后点击Start开始FPGA 文件配置:

25c3e1e6-f0e8-11f0-92de-92fbcf53809c.png

29. 当Progress进度条显示100%(颜色变绿了)代表FPGA配置完成:

261f2f92-f0e8-11f0-92de-92fbcf53809c.png

7 实验现象

可以观察到HDMI显示器上有个绿色边框,中间背景为白色,有个黑色小方块在屏幕中移动。

HDMI_block_move工程下载链接: https://pan.baidu.com/s/1LwQjqLpmZMl5IkvTgzo-3w

提取码: tera

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1664

    文章

    22503

    浏览量

    639242
  • 显示器
    +关注

    关注

    22

    文章

    5159

    浏览量

    144766
  • HDMI
    +关注

    关注

    34

    文章

    1916

    浏览量

    161378

原文标题:7-DE10-Nano的HDMI方块移动案例的整体实现(含Quartus完整工程免费下载)

文章出处:【微信号:友晶FPGA,微信公众号:友晶FPGA】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    基于FPGA开发板DE10-Standard和T-Core的串口通信设计

    本文适用于DE10-Standard、T-Core、DE1-SOC以及DE10-Nano等有GPIO引脚外扩的FPGA开发板。
    的头像 发表于 10-28 11:15 4908次阅读
    基于FPGA开发板<b class='flag-5'>DE10</b>-Standard和T-Core的串口通信设计

    来自InnovateFPGA的全球令人印象深刻的创新设计

    的基础。一旦提交提案的截止日期已经过去,InnovateFPGA社区就哪些项目提案最有潜力进行了投票,那些被投票进入下一轮的提案获得了免费的DE10-Nano工具包,以实现他们的想法。本次比赛将看到
    发表于 10-30 14:18

    【正点原子FPGA连载】第十九章HDMI方块移动实验-领航者ZYNQ之FPGA开发指南

    原子公众号,获取最新资料第十九章HDMI方块移动实验在HDMI彩条显示实验中,我们成功地在显示器上显示出了静态的彩条图案。本章我们通过在屏幕上显示一个
    发表于 09-26 16:55

    ADI开发板扩展DE10-Nano 套件功能

    Terasic DE10-Nano 是一款基于 Intel SoC 的开发套件,它把一个 Cyclone FPGA 和一个双核 ARM Cortex-A9 处理器的能力集于一身。
    的头像 发表于 10-23 15:45 1.3w次阅读

    如何使用英特尔FPGA加速软件

    fractal image computation design running on a DE10-Nano board.
    的头像 发表于 09-18 09:08 2787次阅读

    DE 10 Nano Power Tree

    DE 10 Nano Power Tree
    发表于 02-04 16:26 7次下载
    <b class='flag-5'>DE</b> <b class='flag-5'>10</b> <b class='flag-5'>Nano</b> Power Tree

    DE 10 Nano Power Tree

    DE 10 Nano Power Tree
    发表于 03-06 10:42 3次下载
    <b class='flag-5'>DE</b> <b class='flag-5'>10</b> <b class='flag-5'>Nano</b> Power Tree

    【正点原子FPGA连载】第二十五章HDMI方块移动实验 -摘自【正点原子】新起点之FPGA开发指南_V2.1

    【正点原子FPGA连载】第二十五章HDMI方块移动实验 -摘自【正点原子】新起点之FPGA开发指南_V2.1
    发表于 11-24 14:36 13次下载
    【正点原子FPGA连载】第二十五章<b class='flag-5'>HDMI</b><b class='flag-5'>方块</b><b class='flag-5'>移动</b>实验 -摘自【正点原子】新起点之FPGA开发指南_V2.1

    自制Arduino Nano俄罗斯方块游戏

    电子发烧友网站提供《自制Arduino Nano俄罗斯方块游戏.zip》资料免费下载
    发表于 12-07 15:18 3次下载
    自制Arduino <b class='flag-5'>Nano</b>俄罗斯<b class='flag-5'>方块</b>游戏

    用于Terasic DE10-纳米套件的实际插件

    Terasic DE10-Nano是一款基于英特尔SoC的开发套件,它将Cyclone FPGA的强大功能与双核ARM Cortex-A9处理器相结合。ADI公司提供多种开发板,可帮助您扩展套件的功能。无论您是想测量有毒气体等真实现象,还是动态调整电源电压,都可能有一个解
    的头像 发表于 01-03 16:45 1826次阅读

    PwFPGA第5部分 - DE0 Nano上的乒乓游戏

    电子发烧友网站提供《PwFPGA第5部分 - DE0 Nano上的乒乓游戏.zip》资料免费下载
    发表于 06-27 14:58 0次下载
    PwFPGA第5部分 - <b class='flag-5'>DE</b>0 <b class='flag-5'>Nano</b>上的乒乓游戏

    基于互联网的摄像测量系统(二)

    摄像节点由一个DE10-Nano开发板和一个D8M摄像头实现DE10-Nano开发板的HDMI接口外接HDMI显示器来显示拍摄到的视频。
    的头像 发表于 04-18 14:42 1619次阅读
    基于互联网的摄像测量系统(二)

    基于互联网的摄像测量系统(三)

    使用HDMI线将三个HDMI显示器分别连接到摄像节点A、B和终端节点DE10-Nano开发板上的HDMI接口。
    的头像 发表于 04-18 14:43 1221次阅读
    基于互联网的摄像测量系统(三)

    使用友晶DE10-Nano开发板的HDMI彩条显示案例

    本案例将介绍如何控制HDMI发送器(ADV7513)来输出视频和音频。功能包括三部分:视频、音频和I2C控制。一组内置的视频模式和音频串行数据将被发送到HDMI发送器,驱动带有扬声器的HDMI显示器。本示例音频使用48KHz采样
    的头像 发表于 02-05 11:19 1474次阅读
    使用友晶<b class='flag-5'>DE10-Nano</b>开发板的<b class='flag-5'>HDMI</b>彩条显示案例

    友晶科技DE10DE25系列开发板在实验室该如何选择

    从经典的 DE2 到后来的 DE10-Standard 和 DE10-Nano,友晶的“DE”系列几乎陪伴了中国几代 FPGA 工程师的成长。时至今日,
    的头像 发表于 04-02 14:03 388次阅读
    友晶科技<b class='flag-5'>DE10</b>和<b class='flag-5'>DE</b>25系列开发板在实验室该如何选择