首页 > 其他分享 >Rockchip RK3399 - HDMI音频

Rockchip RK3399 - HDMI音频

时间:2024-01-30 20:56:44浏览次数:39  
标签:hdmi HDMI Rockchip i2s 声卡 RK3399 rk3399 root card

(转载请删除括号里的内容)

----------------------------------------------------------------------------------------------------------------------------

开发板 :NanoPC-T4开发板
eMMC :16GB
LPDDR3 :4GB
显示屏 :15.6英寸HDMI接口显示屏
u-boot :2023.04
linux   :6.3
----------------------------------------------------------------------------------------------------------------------------

在前面的章节我们已经介绍了machine驱动(simple-audio-card)、platform驱动(i2s)、以及codec驱动(Realtek ALC5651),并测试了通过耳机进行音频的输出。

如果我们想通过HDMI接口进行音频输出的话,我们应该怎么做呢?

我们知道音频驱动主要由三部分组成、machine、platform、codec,这里我们仅仅是更换了codec,将ALC5651更换为了HDMI,其他的并没有什么变化,因此我们只需要进行少量的调整就可以实现通过HDMI进行音频的输出。

一、I2S2接口

我们在Rockchip RK3399 - ALC5651 & I2S基础说过RK3399的I2S2模块,其连接到HDMI和DP的音频接口,支持8通道音频数据传输。

I2S2与HDMI连接(这些引脚没有对外暴露,所以是看不到的):

引脚引脚(I2S2) 方向 功能引脚(HDMI) 方向
I2S2_SCLK_OUT O ii2sclk I
I2S2_TX_LRCK_OUT O ii2slrclk I
I2S2_8CH_SDO[3:0] O ii2sdata[3:0] I

I2S2与DP连接(这些引脚没有对外暴露,所以是看不到的):

引脚引脚(I2S2) 方向 功能引脚(DP) 方向
I2S2_SCLK_OUT O source_i2s_clk I
I2S2_TX_LRCK_OUT O source_i2s_ws I
I2S2_8CH_SDO[3:0] O source_i2s_data[3:0] I

二、设备树配置

2.1 hdmi_sound设备节点

在arch/arm64/boot/dts/rockchip/rk3399.dtsi文件根节点下已经定义了hdmi_sound设备节点:

hdmi_sound: hdmi-sound {        compatible = "simple-audio-card";        simple-audio-card,format = "i2s";        simple-audio-card,mclk-fs = <256>;        simple-audio-card,name = "hdmi-sound";        status = "disabled";        simple-audio-card,cpu {                sound-dai = <&i2s2>;        };        simple-audio-card,codec {                sound-dai = <&hdmi>;        };};

(1) compatible:指定设备驱动程序的兼容性,即告诉内核该设备可以被哪些驱动程序所使用;

(2) simple-audio-card,format:指定数字音频接口格式为“I2S”,即使用I2S接口传输音频数据;

此外还支持的数字音频接口格式有:right_j、left_j、dsp_a、dsp_b、ac97、pdm、msb、lsb。

(3) simple-audio-card,mclk-fs:指定主时钟频率MCLK与采样频率之前的比值,例如256表示主时钟频率为系统频率的256倍;

(4) simple-audio-card,name:指定声卡的名称为“hdmi-sound”;

(5) status:指定设备状态为“禁止”,表示该设备状态为禁止运行;

(6) simple-audio-card,cpu:指定cpu接入音频编解码的dai;这里配置为&i2s2,即i2s2设备节点的句柄;

(7) simple-audio-card,codec:指定编解码音频接入cpu的dai;这里配置为&hdmi,即hdmi设备节点的句柄;

我们需要在arch/arm64/boot/dts/rockchip/rk3399-evb.dts文件添加如下属性,启用machine驱动:

&hdmi_sound{        status = "okay";};

2.2 hdmi设备节点

在arch/arm64/boot/dts/rockchip/rk3399.dtsi文件根节点下已经定义了hdmi设备节点:

hdmi: hdmi@ff940000 {        compatible = "rockchip,rk3399-dw-hdmi";        reg = <0x0 0xff940000 0x0 0x20000>;        interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH 0>;        clocks = <&cru PCLK_HDMI_CTRL>,                 <&cru SCLK_HDMI_SFR>,                 <&cru SCLK_HDMI_CEC>,                 <&cru PCLK_VIO_GRF>,                 <&cru PLL_VPLL>;        clock-names = "iahb", "isfr", "cec", "grf", "ref";        power-domains = <&power RK3399_PD_HDCP>;        reg-io-width = <4>;        rockchip,grf = <&grf>;        #sound-dai-cells = <0>;        status = "disabled";        ports {                hdmi_in: port {                        #address-cells = <1>;                        #size-cells = <0>;                        hdmi_in_vopb: endpoint@0 {                                reg = <0>;                                remote-endpoint = <&vopb_out_hdmi>;                        };                        hdmi_in_vopl: endpoint@1 {                                reg = <1>;                                remote-endpoint = <&vopl_out_hdmi>;                        };                };        };};

关于HDMI设备节点各个属性等我们后面单独介绍。

我们需要在arch/arm64/boot/dts/rockchip/rk3399-evb.dts文件添加如下属性,启用hdmi驱动:

&hdmi {        ddc-i2c-bus = <&i2c7>;        pinctrl-names = "default";        pinctrl-0 = <&hdmi_cec>;        status = "okay";};

2.3 i2s2设备节点

在arch/arm64/boot/dts/rockchip/rk3399.dtsi文件根节点下已经定义了i2s2设备节点:

i2s2: i2s@ff8a0000 {        compatible = "rockchip,rk3399-i2s", "rockchip,rk3066-i2s";        reg = <0x0 0xff8a0000 0x0 0x1000>;        interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH 0>;        dmas = <&dmac_bus 4>, <&dmac_bus 5>;        dma-names = "tx", "rx";        clock-names = "i2s_clk", "i2s_hclk";        clocks = <&cru SCLK_I2S2_8CH>, <&cru HCLK_I2S2_8CH>;        power-domains = <&power RK3399_PD_SDIOAUDIO>;        #sound-dai-cells = <0>;        status = "disabled";};

这是Rockchip RK3399中I2S2设备节点描述。它包括以下属性:

  • compatible:指定设备驱动程序的兼容性,即告诉内核该设备可以被哪些驱动程序所使用;
  • reg:指定I2S0控制器的基地址和地址空间大小,从0xff8a0000到0xff8a1000共有0x1000个字节的寄存器空间,其中0xff8a0000为I2S2寄存器基地址;
  • interrupts:指定I2S控制器的中断号为GIC_SPI 41,并且取值方式为IRQ_TYPE_LEVEL_HIGH,意味着中断信号为高电平触发;
  • dmas:指定数据传输时使用的DMA控制器,第一个表示tx数据使用的DMA控制器,第二个表示rx数据使用的DMA控制器;
  • dma-names:分别对应"tx"和"rx"的DMA名称;
  • clock-names:指定时钟名称,"i2s_clk"表示I2S0控制器时钟,"i2s_hclk" 表示I2S总线时钟;
  • clocks:i2s_clk时钟来自SCLK_I2S2_8CH,i2s_hclk时钟来自HCLK_I2S2_8CH;
  • power-domains:指定设备隶属于的电源域,这里是 RK3399_PD_SDIOAUDIO;
  • #sound-dai-cells:表示定义这个节点的sound DAI数据单元格的数量,这里为0表示没有单元格;
  • status:表示设备状态,这里 "disabled" 表示该设备当前是禁用状态;

我们需要在arch/arm64/boot/dts/rockchip/rk3399-evb.dts文件添加如下属性,启用platform驱动:

&i2s2 {        status = "okay";};

三、内核配置 

3.1 内核配置

3.1.1 HDMI配置

在linux内核根目录下执行make menuconfig配置以下选项:

Device Drivers  --->                                                                                                           Graphics support --->              [*] Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)  --->         [*] DRM Support for Rockchip          Display Interface Bridges --->                                                                                                                 [*] Synopsys Designware I2S Audio interface    # 对应DRM_DW_HDMI_I2S_AUDIO          

确保编译配置里有HDMI相关配置,如果缺少了自己补上:

CONFIG_DRM=y                   #必须CONFIG_DRM_ROCKCHIP=y          #必须CONFIG_ROCKCHIP_DW_HDMI=y      #必须CONFIG_ROCKCHIP_INNO_HDMI=yCONFIG_DRM_PANEL_SIMPLE=y      #必须CONFIG_DRM_DW_HDMI_I2S_AUDIO=y #必须CONFIG_DRM_DW_HDMI_CEC=y
3.1.2 其他

关于I2S、以及simple-audio-card驱动的配置,我们在Rockchip RK3399 - ALC5651音频调试其实已经介绍过了:

Device Drivers --->  <*> Sound card support  --->     <*> Advanced Linux Sound Architecture  --->          
<*> Sequencer support <*> ALSA for SoC audio support ---> <*> ASoC support for Rockchip {*} Rockchip I2S Device Driver <*> ASoC Simple sound card support

确保编译配置里有如下相关配置,如果缺少了自己补上:

CONFIG_SND_SEQUENCER=yCONFIG_SND_SEQ_DUMMY=yCONFIG_SND_HRTIMER=yCONFIG_SND_DYNAMIC_MINORS=yCONFIG_SND_SOC=yCONFIG_SND_SOC_ROCKCHIP=yCONFIG_SND_SOC_ROCKCHIP_I2S=yCONFIG_SND_SIMPLE_CARD=y

配置完内核之后记得保存配置,存档:

root@zhengyang:/work/sambashare/rk3399/linux-6.3# mv rk3399_defconfig ./arch/arm64/configs/

重新配置内核:

root@zhengyang:/work/sambashare/rk3399/linux-6.3# make rk3399_defconfig

3.2 编译内核

在linux内核根目录下执行如下命令进行编译内核:

root@zhengyang:/work/sambashare/rk3399/linux-6.3# make -j8

u-boot-2023.04路径下的mkimage工具拷贝过来,然后在命令行使用mkimage工具编译即可:

root@zhengyang:/work/sambashare/rk3399/linux-6.3# cp ../u-boot-2023.04/tools/mkimage ./root@zhengyang:/work/sambashare/rk3399/linux-6.3# ./mkimage -f kernel.its kernel.itb

3.3 通过tftp烧录内核

给开发板上电,同时连接上网线,进入uboot命令行。我们将内核拷贝到tftp文件目录:

root@zhengyang:/work/sambashare/rk3399/linux-6.3# cp kernel.itb /work/tftpboot/

接着给开发板上电。通过uboot命令行将kernel.itb下到内存地址0x10000000处:

=> tftp 0x10000000 kernel.itb

通过mmc write命令将内核镜像烧录到eMMC第0x8000个扇区处:

=> mmc erase 0x8000 0xA000=> mmc write 0x10000000 0x8000 0xA000

四、测试 

4.1 查看音频设备节点

查看音频设备节点:

root@rk3399:/# ll /dev/snddrwxr-xr-x  2 root root       80 Aug  6 15:04 by-path/crw-rw----  1 root audio 116,  4 Aug  6 15:04 controlC0crw-rw----  1 root audio 116,  7 Aug  6 15:04 controlC1crw-rw----  1 root audio 116,  3 Aug  6 15:04 pcmC0D0ccrw-rw----  1 root audio 116,  2 Aug  6 15:04 pcmC0D0pcrw-rw----  1 root audio 116,  6 Aug  6 15:04 pcmC1D0ccrw-rw----  1 root audio 116,  5 Aug  6 15:04 pcmC1D0pcrw-rw----  1 root audio 116,  1 Aug  6 15:04 seqcrw-rw----  1 root audio 116, 33 Aug  6 15:04 timer

其中:

  • controlCx:用于声卡的控制,例如通道选择,混音,麦克控制,音量加减,开关等;
  • pcmCxD0c:用于录音的pcm设备;
  • pcmCxD0p:用于播放的pcm设备;
  • seq:音序器;
  • timer:定时器;

C0D0代表的是声卡0中的设备0,pcmC0D0c最后一个c代表capture,pcmC0D0p最后一个p代表playback,这些都是alsa-driver中的命名规则。

从上面的列表可以看出,我里应该是有2个声卡,声卡0/1下各挂了3个设备,根据声卡的实际能力,驱动实际上可以挂载更多种类的设备,我们通常更关心的是pcm和control这两种设备,默认一个声卡对应一个Control设备。

4.2 查看所有声卡

查看所有声卡:

root@rk3399:/# cat /proc/asound/cards 0 [hdmisound      ]: simple-card - hdmi-sound                      hdmi-sound 1 [realtekrt5651co]: simple-card - realtek,rt5651-codec                      realtek,rt5651-codec

第一个数字为声卡编号,第二个数字为声卡唯一标识,最长16个字符。以声卡编号1为例:

1为声卡编号,realtekrt5651co为ALSA声卡的唯一标识,因为struct snd_card  id字段其长度为16,所以存放的就是realtek,rt5651-codec去除特殊字符之后的的前15个字符。

声卡分两种通道,一种是Capture、一种是Playback。Capture是输入通道,Playback是输出通道;我们以声卡0为例;

root@rk3399:/# ll /proc/asound/card0-r--r--r--  1 root root 0 Aug  6 16:43 iddr-xr-xr-x  5 root root 0 Aug  6 16:43 pcm0c/dr-xr-xr-x  5 root root 0 Aug  6 16:43 pcm0p/root@rk3399:/# cat /proc/asound/card0/idhdmisound

pcm0p属于声卡0输出通道,pcm0c属于声卡0输入通道。

4.2.1 查看播放设备
root@rk3399:/# aplay -l**** List of PLAYBACK Hardware Devices ****card 0: hdmisound [hdmi-sound], device 0: ff8a0000.i2s-i2s-hifi i2s-hifi-0 [ff8a0000.i2s-i2s-hifi i2s-hifi-0]  Subdevices: 1/1  Subdevice #0: subdevice #0card 1: realtekrt5651co [realtek,rt5651-codec], device 0: ff880000.i2s-rt5651-aif1 rt5651-aif1-0 [ff880000.i2s-rt5651-aif1 rt5651-aif1-0]  Subdevices: 1/1  Subdevice #0: subdevice #0

这里看到的ff8a0000.i2s-i2s-hifi i2s-hifi-0为声卡0音频数据链路的名称、ff880000.i2s-rt5651-aif1 rt5651-aif1-0为声卡1音频数据链路的名称。

4.2.2 查看录音设备
root@rk3399:/# arecord -l**** List of CAPTURE Hardware Devices ****card 0: hdmisound [hdmi-sound], device 0: ff8a0000.i2s-i2s-hifi i2s-hifi-0 [ff8a0000.i2s-i2s-hifi i2s-hifi-0]  Subdevices: 1/1  Subdevice #0: subdevice #0card 1: realtekrt5651co [realtek,rt5651-codec], device 0: ff880000.i2s-rt5651-aif1 rt5651-aif1-0 [ff880000.i2s-rt5651-aif1 rt5651-aif1-0]  Subdevices: 1/1  Subdevice #0: subdevice #0

4.3 音频播放

4.3.1 播放音频测试

找到一个wav音频文件,播放音频:

root@rk3399:/# cd /root@rk3399:/# aplay AbuduOffice.wavPlaying WAVE 'AbuduOffice.mp3' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
4.3.2 声卡配置

默认是实使用声卡0进行音频播放的,如果需要更改默认声卡,需要修改/etc/asound.conf文件。

asound.conf配置文件,是alsa-lib的默认配置文件,路径在 /etc/,可以用来配置alsa库的一些附加功能。这个文件不是alsa库运行时所必须的,没有它alsa库也可以正常运行。asound.conf允许对声卡或者设备进行更高级的控制,提供访问alsa-lib中的pcm插件方法,允许你做更多的复杂的控制,比如可以把声卡组合成一个或者多声卡访问多个I/O。

比如我们配置:

defaults.pcm.card 0defaults.pcm.device 0

名字为default的声卡,指向card 0,也就是hdmisound。

4.3.3 查看I2S2寄存器值

在音频播放时运行如下命令查看I2S2控制器寄存器值:

root@rk3399:~# cat /sys/kernel/debug/regmap/ff8a0000.i2s/registers00: 0000000f04: 0000000f08: 00033f3f0c: 0000001410: 000f0110  # 第8位写入0x01,Transmit DMA enabled14: 01f0000018: 000000001c: 00000003  # 第0位写入0x01,开始TX传输20: 0000000024: 00000000
4.3.4 查看时钟

查看所有与i2s2相关的时钟,如下图所示:

root@rk3399:~# cat /sys/kernel/debug/clk/clk_summary | grep i2s                hclk_i2s2             2        2        0   100000000          0     0  50000         Y                hclk_i2s1             1        2        0   100000000          0     0  50000         Y                hclk_i2s0             1        2        0   100000000          0     0  50000         Y          clk_i2s2_div                1        1        0   800000000          0     0  50000         Y             clk_i2s2_frac            1        1        0    11289600          0     0  50000         Y                clk_i2s2_mux          1        1        0    11289600          0     0  50000         Y                   clk_i2s2           2        2        0    11289600          0     0  50000         Y          clk_i2s1_div                0        0        0   800000000          0     0  50000         N             clk_i2s1_frac            0        0        0    40000000          0     0  50000         N          clk_i2s0_div                0        0        0   800000000          0     0  50000         N             clk_i2s0_frac            0        0        0    40000000          0     0  50000         N clk_i2s1_mux                         0        1        0           0          0     0  50000         Y    clk_i2s1                          0        1        0           0          0     0  50000         N clk_i2s0_mux                         0        1        0           0          0     0  50000         Y    clk_i2s0                          0        1        0           0          0     0  50000         N       clk_i2sout_src                 0        0        0           0          0     0  50000         Y          clk_i2sout                  0        0        0           0          0     0  50000         N

从从上面输出的信息看到hclk_i2s1、clk_i2s2已经使能了,并且输出的时钟频率为11289600,由于I2S2并没有对外相关引脚,因此无法通过仪器测量。

五、设置系统默认音频设备

由于我们之前移植了ubuntu操作系统,因此在我尝试打开一个有视频的网页时,发现视频播放竟然没有声音。而我想通过HDMI接口将声音播放出来,应该怎么办呢?

5.1 安装pavucontrol

一般情况下,系统都自带该命令,无需再下载,如果没有就下载。

root@rk3399:/# sudo apt-get install pavucontrol

5.2 配置pavucontrol

pavucontrol命令功能比较强大,可以禁用指定声卡、可以选择指定声卡只能录音或者只能放音,用来切换声卡非常方便。

在ubuntu桌面环境运行如下命令打开pavucontrol界面:
root@rk3399:/ pavucontrol

如果没有打开pavucontrol界面,并且一直处于等待加载状态,尝试在桌面系统环境执行如下命令:

root@rk3399:/ pulseaudio --system &

pavucontrol界面如下图所示:

第一个Built-in Audio对应着声卡0,第二个Built-in Audio对应着声卡2;这里我们配置声卡0的Profile为Stereo Output,即立体声输出。然后将声卡2 关闭掉。

然后我们看一下输出设备配置,可以看到声卡0的输出端口信息:

修改/etc/pulse/system.pa文件:

root@rk3399:/# vim  /etc/pulse/system.pa 

在load-module module-native-protocol-unix之后添加auth-anonymous=1:

load-module module-native-protocol-unix auth-anonymous=1

需要注意的问题: pavucontrol命令打开界面设置的信息只能本次有效,如果系统重启,配置也会还原,也就是说设置之后不会永久保存。

5.3 永久保存配置

如果不想每次开机都设置一次,可以将配置写入到配置文件:/etc/pulse/default.pa。

在ubuntu桌面环境控制台运行如下命令,查看当前系统可用的音频端口:

root@rk3399:/ pacmd list | grep "active port" 
active port: <analog-output>

根据打印的结果,可以知道HDMI声卡的输出端口是:active port: <analog-output>。

将打印的数据输出到text.txt文本文件中:

root@rk3399:/ pacmd list  > text.txt

然后使用vim打开文本文件,搜索active port字段:

root@rk3399:/ vim text.txt

如下图所示:

搜索到之后,再向前翻,找到index字段,找到这个声卡对应的编号。确定节点编号是22之后,就设置配置文件;

root@rk3399:/# vim /etc/pulse/default.pa

在文件末尾增加一行代码: 其中的22就是找到编号,analog-output是使用的声卡端口名称,前面查找到的。

set-sink-port 22 analog-output

重启即可生效。

参考文章

[1] 在RK3399上使用pavucontrol命令设置系统默认声卡(ubuntu18.04桌面系统)

[2] PulseAudio

[3] Ubuntu18.04设置系统默认音频设备:使用pavucontrol命令

标签:hdmi,HDMI,Rockchip,i2s,声卡,RK3399,rk3399,root,card
From: https://www.cnblogs.com/wanglongjiang/p/17997945

相关文章

  • 基于ROM的HDMI显示
    前言如何实现FPGA驱动HDMI显示在之前的文章已经实现了,其参考的代码主要是基于野火FPGA的教程,在正点原子的达芬奇FPGA开发板上实现。系统框架这里简单介绍一下各个框架。1、clk_wiz_0调用的vivado的PLL生成了两种时钟频率:1280720@60Hz驱动时钟7......
  • CS5569芯片,CS556,设计资料,CS5569规格书,CS5569原理图,typec转HDMI 8K带PD方案
    集睿致远/ASL的CS5269是一款低成本、低功耗的半导体器件,通过USBType-C连接器将DisplayPort信号转换为HDMI2.1。这款创新的基于USBType-C的DisplayPort接收器具有高性能DSC解码器,集成的HDMI2.1发射器专门针对USBType-C到HDMI2.1转换器而设计,一个NG设备。通过CS5269的先进的解码/......
  • 瑞芯微的RK3399pro上运行YOLOv8模型
    瑞芯微(Rockchip)介绍公司背景瑞芯微(Rockchip)成立于2001年,是一家专注于半导体芯片设计和研发的公司。作为中国领先的集成电路设计企业之一,瑞芯微在全球范围内拥有广泛的客户群体和市场份额。公司致力于为智能终端设备提供高性能、低功耗的芯片解决方案,并在多个领域取得了显著的成就。......
  • HDMI光端机技术概述:高清多媒体传输的前沿
    在数字多媒体传输领域,HDMI光端机代表着高清传输技术的前沿。作为现代视听设备的标准接口,HDMI光端机在高清视频和音频传输方面的应用日益广泛,它不仅支持更高的分辨率和更丰富的色彩,还提供了更加稳定和高效的传输方式。技术特点高清晰度传输HDMI光端机支持从1080p到4K、8K甚至更高分......
  • 11PCIE图片输出到HDMI显示器
    软件版本:vitis2021.1(vivado2021.1)操作系统:WIN1064bit硬件平台:适用XILINXA7/K7/Z7/ZU/KU系列FPGA登录"米联客"FPGA社区-www.uisrc.com视频课程、答疑解惑!11.1概述前面的例子相对来说使用了中断采集数据比较复杂一些,本方案实现把电脑上的图片发送给开发板,让开发板的HDMI输......
  • 12PCIE实现同屏输出到HDMI显示器
    软件版本:vitis2021.1(vivado2021.1)操作系统:WIN1064bit硬件平台:适用XILINXA7/K7/Z7/ZU/KU系列FPGA登录"米联客"FPGA社区-www.uisrc.com视频课程、答疑解惑!12.1概述和前面关于"PCIE图片输出到HDMI显示器"的内容基本一致,本方案通过上位机的抓屏功能,把屏幕的图像数据实时发送......
  • 09PCIE图像采集卡HDMI输入
    软件版本:vitis2021.1(vivado2021.1)操作系统:WIN1064bit硬件平台:适用XILINXA7/K7/Z7/ZU/KU系列FPGA登录"米联客"FPGA社区-www.uisrc.com视频课程、答疑解惑!9.1概述本方案使用自定义AXI4IPFDMA实现视频的采集和播放,关于FDMA的详细教程可以参考"米联客2024版FPGA数据缓存方......
  • 03光通信之HDMI视频回环传输
    软件版本:VIVADO2021.1操作系统:WIN1064bit硬件平台:适用XILINXA7/K7/Z7/ZU/KU系列FPGA登录米联客(MiLianKe)FPGA社区-www.uisrc.com观看免费视频课程、在线答疑解惑!1概述        通过前文中实验的学习,相信读者已经掌握了7SeriesFPGAsTransceiverswizard这个IP......
  • 39 HDMI视频输入测试
    软件版本:VIVADO2021.1操作系统:WIN1064bit硬件平台:适用XILINXA7/K7/Z7/ZU/KU系列FPGA登录米联客(MILIANKE)FPGA社区-www.uisrc.com观看免费视频课程、在线答疑解惑!1概述米联客开发板上集成的HDMI输入芯片方案采用ADV7611实现,对于没有集成HDMI输入芯片的开发板可以采用FEP......
  • 19光通信之HDMI视频回环传输
    软件版本:VIVADO2021.1操作系统:WIN1064bit硬件平台:适用XILINXA7/K7/Z7/ZU/KU系列FPGA登录米联客(MiLianKe)FPGA社区-www.uisrc.com观看免费视频课程、在线答疑解惑!1概述        通过前文中实验的学习,相信读者已经掌握了7SeriesFPGAsTransceiverswizard这个IP......