【工程师分享】在MPSoC ZCU106单板的HDMI-Tx上基于eglfs_kms的运行QT应用程序
judy 在 周六, 09/18/2021 - 09:40 提交
按照在MPSoC上运行基于eglfs_kms的QT应用程序, 可以在MPSoC ZCU106单板的DP上基于eglfs_kms的运行QT应用程序。按照在VCUTRD 2020.1 里设置HDMI-TX显示QT界面, 可以在MPSoC ZCU106单板的HDMI-Tx上基于X11的运行QT应用程序。
按照在MPSoC上运行基于eglfs_kms的QT应用程序, 可以在MPSoC ZCU106单板的DP上基于eglfs_kms的运行QT应用程序。按照在VCUTRD 2020.1 里设置HDMI-TX显示QT界面, 可以在MPSoC ZCU106单板的HDMI-Tx上基于X11的运行QT应用程序。
UBIFS是更强壮的FLash文件系统。很多嵌入式系统都使用了UBIFS。Xilinx PetaLinux 2018.2也支持UBIFS。只需要在Linux/U-Boot里添加相关配置选项,就能为QSPI Flash创建UBIFS。
在文章中如何将zcu106例程移植到自定义单板,描述了如何在自定义单板平台构建硬件平台、软件系统添加配方,运行zcu106例程。实现过程很复杂。zcu106单板的bsp不能直接用在习惯单板上呢?下面是我做的一些试点,大家可以参考。
在zcu106开箱即用vcu示例中用到了USB摄像头,本节介绍如何对摄像头输出图像进行编解码。
软硬件系统构建好之后,VCU可以正常工作了。可以在VCU软件堆栈的不同层次上对VCU进行编解码,下面介绍一下使用VCU控制软件如何进行编解码。
前几节已经构建好Linux系统,但控制VCU还需要了解VCU软件架构,并加入各种库文件,也就是在Petalinxu中加入配方文件。
FZU5构建Linux系统过程和FZU3类似,FZU3构建过程参照前一篇文章。下面主要描述一下不同的地方。
硬件设计主要包括PS设置和VCU设置,VCU参考了pg252和zcu106例程,如下图所示。FZU5输入25MHz时钟,通过PLL产生33MHz和300MHz时钟输入到VCU。此外,PL部分还需要产生风扇控制信号,控制单板风扇。
本次设计目标是将ZCU106使用的例程移植到自定义单板上。例程指的是pg252中开箱即用7个例子。
上一篇文章讲到了如何生成可供Vitis使用的XRT platform。这次我们使用生成的platform来开发一个完整的加速器Demo并在ZCU06上跑通。