Pynq_Z2-hdmi输出图像、文字流程(VDMA)
相关代码:附件2
1. 软件平台
vivado2019.1web
2. 硬件平台
PYNQ_Z2
3. 具体操作流程
3.1 新建一个工程
新建立一个工程hdmi_vdma
create BD
如果不想手动连线请转到此处:利用tcl命令设计(建议使用Tcl方式)
add zynq - IP
run block automation
配置PYNQ参数,使能HP0口,用于VDMA快速读取DDR3
配置时钟,FCLK_CLK0配置为100Mhz,FCLK_CLK1配置为142MHz,这个时钟用于VDMA
配置中断,使能IRQ_F2P,用于接收PL的中断响应信号
因为使用了boardfile,bu不需要做其他配置,点击OK
添加VDMA IP
配置DMA参数
配置advanced参数,然后点击OK
添加视频时序控制器
配置视频时序控制器参数,取消Enable Detection
add AXI4-stream to video out
配置AXI-stream to video out参数(clock,timing mode)
添加自定义的IP(附件)
点击 IP Catalog然后在空白处右击,点击add respository
选择select->ok
然后添加时钟控制器
添加 HDMI编码器
设置编码器参数,如下(可能不需要修改)
点击regenerate layout (重新布局)
手动连接时钟信号
FCLK_CLK1
连接clk。。。
连接serialclk
连接aRst_n
连接一些数据传输通道信号
add concat IP用于连接中断信号
连接中断信号
点击Run connection Automation,选择所有模块自动连接
完成所有连线
再一次
#regenerate layout
regenerate_bd_layout
导出端口
按F6检查设计,无误后,create HDL wrapper
添加HDMI输出的xdc文件,约束管脚
#hdmi_out
set_property -dict { PACKAGE_PIN L17 IOSTANDARD TMDS_33 } [get_ports { TMDS_Clk_n_0 }]; #IO_L11N_T1_SRCC_35 Sch=hdmi_tx_clk_n
set_property -dict { PACKAGE_PIN L16 IOSTANDARD TMDS_33 } [get_ports { TMDS_Clk_p_0 }]; #IO_L11P_T1_SRCC_35 Sch=hdmi_tx_clk_pset_property -dict { PACKAGE_PIN K18 IOSTANDARD TMDS_33 } [get_ports { TMDS_Data_n_0[0] }]; #IO_L12N_T1_MRCC_35 Sch=hdmi_tx_d_n[0]
set_property -dict { PACKAGE_PIN K17 IOSTANDARD TMDS_33 } [get_ports { TMDS_Data_p_0[0] }]; #IO_L12P_T1_MRCC_35 Sch=hdmi_tx_d_p[0]
set_property -dict { PACKAGE_PIN J19 IOSTANDARD TMDS_33 } [get_ports { TMDS_Data_n_0[1] }]; #IO_L10N_T1_AD11N_35 Sch=hdmi_tx_d_n[1]
set_property -dict { PACKAGE_PIN K19 IOSTANDARD TMDS_33 } [get_ports { TMDS_Data_p_0[1] }]; #IO_L10P_T1_AD11P_35 Sch=hdmi_tx_d_p[1]
set_property -dict { PACKAGE_PIN H18 IOSTANDARD TMDS_33 } [get_ports { TMDS_Data_n_0[2] }]; #IO_L14N_T2_AD4N_SRCC_35 Sch=hdmi_tx_d_n[2]
set_property -dict { PACKAGE_PIN J18 IOSTANDARD TMDS_33 } [get_ports { TMDS_Data_p_0[2] }]; #IO_L14P_T2_AD4P_SRCC_35 Sch=hdmi_tx_d_p[2]set_property -dict { PACKAGE_PIN R19 IOSTANDARD LVCMOS33 } [get_ports { oen_0 }]; #IO_0_34 Sch=hdmi_tx_hpdn
生成bitstream
number of jobs与电脑CPU有关,数量越多跑的越快
编译时间与电脑性能有关,现在你可以去歇会了,等待编译完成吧
…(等待着。。。半个小时了还没编译完成)
编译完成后,
file->export hardware->include bitstream->ok
file->luanch SDK
下面的操作参考
https://blog.csdn.net/qq_42263796/article/details/101828046
SDK部分的src部分代码将放在附件2
显示字母、符号、以及数字的库文件可以参考LCD屏幕的写法
或者下载附件2
附件2
最终图像显示效果如下
Pynq_Z2-hdmi输出图像、文字流程(VDMA)相关推荐
- ZYNQ-IO模拟HDMI输出图像
开发软件:Vivado 2018.3 开发板:PYNQ-Z2 IP核:rgb2dvi(Digilent官方) 我一直想使用FPGA开发图像处理算法,在学习图像处理前要学会如何显示图像.我使用的开发板是 ...
- Android HDMI输出设置流程
Android的Surface系统定义了一个DisplayType的枚举,其中有代表手机屏幕的DISPLAY_PRIMARY和代表HDMI等外接设备的DISPLAY_EXTERNAL,还有用于Wi-F ...
- HDMI原理详解以及时序流程(视频是三对差分信号,音频Audio是PCM级(无压缩)传输,包含在数据包内,依靠协议规定采样)HDMI可以传输RGB与YUV两种格式
资料来源:HDMI介绍与流程 - TaigaComplex - 博客园 最近要用ZYNQ开发版的HDMI做显示,看着硬件管脚和例程只能发呆,于是决心去弄清楚HDMI的工作原理,查找了很多资料,都是碎片 ...
- 【正点原子FPGA连载】第二十四章HDMI彩条显示实验 -摘自【正点原子】新起点之FPGA开发指南_V2.1
1)实验平台:正点原子新起点V2开发板 2)平台购买地址:https://detail.tmall.com/item.htm?id=609758951113 2)全套实验源码+手册+视频下载地址:ht ...
- android 480p分辨率,[RK3399][Android7.1] HDMI显示屏(副屏)调试记录小结
Platform: RK3399 OS: Android 7.1 Kernel: v4.4.83 驱动文件: dw-hdmi.c: HDMI驱动,包括内部I2C接口实现. drm_edid.c: ed ...
- 嵌入式应用-详解移植并使用freetype显示文字
目录 前言 1. freetype和相关概念简介 2.freetype显示文字流程和主要函数 2.1 包含头文件及API头文件:ft2build.h 2.2 初始化: FT_InitFreetype ...
- kernel下HDMI调试记录
目录 平台环境及验证工具 1.1 软件环境 1.2 硬件环境 libdrm 移植 DRM 组件探测 HDMI图像显示调试流程 4.1 故障定位过程 4.1.1 modetest 匹配 connecto ...
- 转载: HDMI 基础知识
转自:http://www.cnblogs.com/TaigaCon/p/3840653.html HDMI,全称为(High Definition Multimedia Interface)高清多媒 ...
- PYNQ-Z2 HDMI输出图形实验
在本文中作者使用Xilinx的IP搭建一个HDMI输出图形的平台.在这个平台上设计目标是输出800*600像素的图像,本实验没有使用DDR缓存图像数据.本次实验使用到的工具: 开发板:PYNQ-Z2: ...
最新文章
- 学界丨北大清华合力打造通用人工智能实验班,朱松纯教授领衔
- 2017年11月01日普及组 I Liked Matrix!
- (转)java datetime date 类型
- Android编译笔记四
- openstack密钥对_您对OpenStack了解多少?
- 冲锋衣和羽绒服哪个保暖?
- ubuntu 16.04无法正常关机、重启
- layui上传文件限制选择文件类型 upload.render
- Windows 启动 Idea 报错 if you already hava a 64-bit JDK ... 以及 failed to create jvm...
- 如何下载秦皇岛市卫星地图高清版大图
- 495. Teemo Attacking(提莫攻击)
- 电脑如何分盘win10_Win10电脑如何刻录光盘?利用win10自带刻录工具来刻录DVD光盘教程...
- 健身的基本知识(1)
- iOS 如何判断静音开关是否打开
- html5把六张图片做成立方体,一篇文章教会你利用html5和css3实现3D立方体效果图...
- 3D可视化信息管理平台让运维管理更高效率!
- 手把手教学使用Halo搭建自己的博客网站
- 酒精测试仪检测方法分析
- IT风云15年的那些人、那些事
- 【Java编程】遗传算法简介与简单二进制编码计算