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(二)的更多相关文章

  1. zcu102 hdmi example(一)

    1,概述 有一个计划是打算做一个摄像头的驱动与显示. 但是实际上手上只有一个zcu102开发板,没有摄像头,也没有上位机,自己也不会写.所以就将方案阉割成将录制好的视频放在SD卡里面,然后从SD卡里面 ...

  2. 嵌入式开发之zynqMp ---Zynq UltraScale+ MPSoC 图像编码板zcu102

    1.1 xilinx zynqMp 架构 1.1.1 16nm 级别工艺 Zynq UltraScale+  MPSoC架构 Xilinx新一代Zynq针对控制.图像和网络应用推出了差异化的产品系,这 ...

  3. 高清HDMI编码器|上海视涛科技

    HDMI编码器(E300)简介 HDMI编码器(E300)是上海视涛科技出品的高性能HDMI+VGA编码产品.该HDMI+VGA编码器是上海视涛科技完全自主研发,并适用于VGA.DVI.HDMI等信号 ...

  4. HDMI接口与协议

    深入了解HDMI接口 一.HDMI接口的工作原理这张图是HDMI接口的架构示意图.从左边的信号源中你可以看到,HDMI接口的信源可以是任何支持HDMI输出的设备,而接入端也可以是任何带有HDMI输 入 ...

  5. HDMI的CEC是如何控制外围互联设备的

    1. HDMI CEC算是一个相当庞大的系统,想了解还要从HDMI接口信号啊.物理地址啊.逻辑地址啊等等HDMI基础的东西说起. 2. 不过可以简单的这么理解,在HDMI CEC最小系统里,所有通过H ...

  6. HDMI EDID解读

    现在的显示设备比如显示器,电视等都HDMI接口,那通常每个HDMI接口都保留有一份EDID数据,这个数据可以存在程序里面由系统启动过程中来初始化,更常见的做法是每个HDMI口会有一个EEPROM来保存 ...

  7. I.MX6 lcd lvds hdmi bootargs

    /********************************************************************* * I.MX6 lcd lvds hdmi bootarg ...

  8. ids & hdmi 原理

    http://www.taiwanwebinar.com/zh_TW/STATIC/SITE/dwc_hdmi_tx.pdf http://blog.csdn.net/g_salamander/art ...

  9. android系统平台显示驱动开发简要:LCD常用接口篇『二』

    平台信息:内核:linux3.4.39系统:android4.4 平台:S5P4418(cortex a9) 作者:瘋耔(欢迎转载,请注明作者) 欢迎指正错误,共同学习.共同进步!! 关注博主新浪博客 ...

随机推荐

  1. vscode创建net core控制台程序

    vscode近来深受的开发人员的喜爱.在下的前端同事们也纷纷使用vscode.在下就想了我等后端程序员也可以用vscode写C#代码.毕竟是从宇宙第一IDE  ----Visual Studio衍生的 ...

  2. MySQL命令窗口下中文显示乱码的解决过程

    在dos客户端输出窗口中查询表中的数据,还有项目部署到服务器上时前台的页面,中文数据都显示成乱码,如下图所示: 这个问题困扰了我一天,后来解决了才发现原来我的方向错了,一直我以为是SpringBoot ...

  3. 《前端之路》之 this 的使用技巧总结

    06: JS 中 this 的使用技巧总结 this 是 JavaScript 中的关键字. 一.基本认识 在 JS 中我们把 this 关键字当作成一个 快捷方式,用来引用当前调用者. 解释上面这句 ...

  4. 【Android Studio安装部署系列】二十七、Android studio修改项目名称和包名

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 实际项目开发中可能碰到项目名称写错了或者需要修改,而且包名可能也想要修改,那么如何操作呢. 本文是在Android Studio3. ...

  5. Java集合详解5:深入理解LinkedHashMap和LRU缓存

    今天我们来深入探索一下LinkedHashMap的底层原理,并且使用linkedhashmap来实现LRU缓存. 摘要: HashMap和双向链表合二为一即是LinkedHashMap.所谓Linke ...

  6. springboot~thymeleaf页面布局的步骤

    参考:https://ultraq.github.io/thymeleaf-layout-dialect/Installation.html 依赖包 注意里面的thymeleaf-layout-dia ...

  7. Docker最全教程——MongoDB容器化(十二)

    MongoDB容器化 MongoDB是一个免费的.开源的.跨平台分布式面向文档存储的数据库,由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案. MongoDB是一个介于关系数据库和 ...

  8. 命令行程序增加 GUI 外壳

    Conmajia © 2012 Updated on Feb. 21, 2018 命令行大家都用过: 图 1 命令行程序工作界面 现在想办法为它做一个 GUI 外壳,实际效果参考图 2. 图 2 带 ...

  9. 在React中使用Typescript的实践问题总结

    1.布尔值的大小写问题: 声明变量类型的时候,使用小写boolean 2. 对于从父组件传递过来的函数,子组件在模版中调用时,如果采用原来的写法,会报错: 改变写法后是如下这样,如果有参数和函数返回值 ...

  10. Java笔记(day1~day6)

    绪论:   Java版本区别:J2EE (企业版)                  J2SE(标准版)              J2ME(小型版) Java特性:跨平台 JVM.JRE.JDK介绍 ...