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上驅動參考程序,把哪些命令再敲一遍就好了。
下一步工作想試着把那個彩色條紋的數據改成我自己想要的數據,估計有點難度。
最后附上一個效果圖:說明,下圖中屏幕上的白色區域是反光造成的。

