zcu102 hdmi example(二)
1.概述
上篇说到,调用跑HDMI IP核自带的design example,跑出来的结果是显示屏显示彩条,并伴有嘀,嘀,嘀。。。的声音。因为在实际项目中,我们只需要图像,不需要声音的,所以我要把声音给去掉。现在就做个笔记记录一下。
2.vivado工程修改
1.将上篇文章里面的HDMI IP 核的design example 工程打开。点击 open block design,会显示出结构框图。在结构框图中会看到audio_ss_0这个结构如下

点击它左上角的“+”号,会展开它里面的组成部分,如下。这些就是产生那个嘀,嘀,嘀。。。声音的来源,我们要把这些删掉。

2.直接将audio_ss_0这个结构删掉,然后将v_hdmi_tx_ss模块的s_axis_audio_aclk连接到s_axi_cpu_aclk。
3.因为我们把audio_ss_0这个结构删掉了,所以我们要把他的两个约束文件修改一下,就是把删掉的管脚的约束屏蔽掉,不然会报严重的warning.其实步修改也没啥影响。

把上图中的AudioGen.xdc 和 hdmi_acr_ctrl.xdc里面的内容全部屏蔽掉就好了。
到这vivado工程就修改完了。
然后就是像上文一样,首先生成bitstream文件,然后file -> export -> export hardware,勾选include bitstream. 接着 file -> launch SDK.
3.SDK工程修改
SDK工程打开之后,还是像上文一样
1.file -> new ->Board Support Package.然后什么都不用该,选择finnish, 然后选择OK.
2.在SDK工具的主界面上,system.mss tab将会被打开。在system.mss将会有一个名为Peripheral Drivers的部分。从Peripheral Drivers列表中,找到HDMI 1.4/2.0 Transmitter Subsystem driver (v_hdmi_tx_ss)并单击Import example。选择TxOnly_A53.
3.这时候,在SDK工具主界面的左侧的Project explorer 下面的standalone_bsp_0_TxOnly_A53_1文件夹。在他下面有个src文件夹,并且是带有红色的“x”的。也就是说有错误。
4.打开那个提示错误的文件(xhdmi_memu.c),定位到提示错误的那一行,然后把提示错误的那几行全注释掉就好了,对,就是这么简单粗暴。

5.后面的就全跟上文一样,在A53上驱动参考程序,把哪些命令再敲一遍就好了。
下一步工作想试着把那个彩色条纹的数据改成我自己想要的数据,估计有点难度。
最后附上一个效果图:说明,下图中屏幕上的白色区域是反光造成的。

zcu102 hdmi example(二)的更多相关文章
- zcu102 hdmi example(一)
1,概述 有一个计划是打算做一个摄像头的驱动与显示. 但是实际上手上只有一个zcu102开发板,没有摄像头,也没有上位机,自己也不会写.所以就将方案阉割成将录制好的视频放在SD卡里面,然后从SD卡里面 ...
- 嵌入式开发之zynqMp ---Zynq UltraScale+ MPSoC 图像编码板zcu102
1.1 xilinx zynqMp 架构 1.1.1 16nm 级别工艺 Zynq UltraScale+ MPSoC架构 Xilinx新一代Zynq针对控制.图像和网络应用推出了差异化的产品系,这 ...
- 高清HDMI编码器|上海视涛科技
HDMI编码器(E300)简介 HDMI编码器(E300)是上海视涛科技出品的高性能HDMI+VGA编码产品.该HDMI+VGA编码器是上海视涛科技完全自主研发,并适用于VGA.DVI.HDMI等信号 ...
- HDMI接口与协议
深入了解HDMI接口 一.HDMI接口的工作原理这张图是HDMI接口的架构示意图.从左边的信号源中你可以看到,HDMI接口的信源可以是任何支持HDMI输出的设备,而接入端也可以是任何带有HDMI输 入 ...
- HDMI的CEC是如何控制外围互联设备的
1. HDMI CEC算是一个相当庞大的系统,想了解还要从HDMI接口信号啊.物理地址啊.逻辑地址啊等等HDMI基础的东西说起. 2. 不过可以简单的这么理解,在HDMI CEC最小系统里,所有通过H ...
- HDMI EDID解读
现在的显示设备比如显示器,电视等都HDMI接口,那通常每个HDMI接口都保留有一份EDID数据,这个数据可以存在程序里面由系统启动过程中来初始化,更常见的做法是每个HDMI口会有一个EEPROM来保存 ...
- I.MX6 lcd lvds hdmi bootargs
/********************************************************************* * I.MX6 lcd lvds hdmi bootarg ...
- ids & hdmi 原理
http://www.taiwanwebinar.com/zh_TW/STATIC/SITE/dwc_hdmi_tx.pdf http://blog.csdn.net/g_salamander/art ...
- android系统平台显示驱动开发简要:LCD常用接口篇『二』
平台信息:内核:linux3.4.39系统:android4.4 平台:S5P4418(cortex a9) 作者:瘋耔(欢迎转载,请注明作者) 欢迎指正错误,共同学习.共同进步!! 关注博主新浪博客 ...
随机推荐
- Uber是如何重新思考GPS定位的(尤其是在城市峡谷中)
郑昀(公众号:老兵笔记) 20180424 2018年4月19日,Uber 公布了 GPS 优化算法,https://eng.uber.com/rethinking-gps/,针对GPS定位在城市环境 ...
- mysql优化一之查询优化
这一篇笔记的mysql优化是注重于查询优化,根据mysql的执行情况,判断mysql什么时候需要优化,关于数据库开始阶段的数据库逻辑.物理结构的设计结构优化不是本文重点,下次再谈 查看mysql语句的 ...
- mysql的学习笔记(二)
1.数据类型,存储的类型. 整型 TINYINT 有符号-128到127 无符号值:0到255 1字节 SMALLINT 有符号 -32768到32767 0到65535 2字节 MEDIUMINT ...
- 我的2018OKR年终回顾与2019OKR初步规划
转眼一年又过去了,在这个年底的时候,按照国际惯例,又到了重新回顾审视一下这一年来的得失,规划一下明年的奋斗方向的时候了.因此,我继续使用OKR来给自己做Review和Planning,也希望自己能够保 ...
- Koa 中的错误处理
不像 express 中在末尾处注册一个声明为 (err, req, res, next) 中间件的方式,koa 刚好相反,在开头进行注册. app.use(async (ctx, next) =&g ...
- 【大数据安全】Kerberos集群安装配置
1. 概述 Kerberos是一种计算机网络认证协议,它允许某实体在非安全网络环境下通信,向另一个实体以一种安全的方式证明自己的身份.它也指由麻省理工实现此协议,并发布的一套免费软件.它的设计主要针对 ...
- Centos7配置MongoDB以及端口修改
一.安装之前可以参考官网安装教程: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat/ 二.登录服务器,配置yum ...
- 如何在IIS上发布网站
本片博客记录一下怎么用IIS发布一个网站,以我自己电脑上一个已经开发完成的网站为例: 1.打开项目 这是我电脑上的一个项目,现在我记录一下将这个项目发布到iis上的整个过程: 2.在vs2017中发布 ...
- Java SimpleDateFormat处理日期与字符串的转换
1.为什么要使用SimpleDateFormat? 在Java中,如果我们想获取当前时间,一般会使用Date类的无参构造函数,如下所示,我们获取到当前时间并输出: import java.util.D ...
- Java高阶语法---transient
背景:听说transient Java高阶语法是挺进BAT必经之路. transient: Java中transient 关键字的作用,简单的说就是让某些被修饰的成员属性变量不被序列化. 这又扯到了序 ...