TQ15EG开发板教程:MPSOC创建fmcomms8工程

news2024/11/16 8:18:50
链接:https://pan.baidu.com/s/1jbuYs9alP2SaqnV5fpNgyg 
提取码:r00c 

本例程需要实现在hdl加no-OS系统中,通过修改fmcomms8/zcu102项目,实现在MPSOC两个fmc口上运行fmcomms8项目。

目录

1 下载文件与切换版本

2 编译fmcomms8项目

3 ZCU102配置修改为15EG

4 编译no-os文件

5 创建VITIS项目并导出BOOT.bin文件

6 上机测试

7 修改FMC引脚使用FMC1启动


1 下载文件与切换版本

首先需要在github上下载hdl和no-OS两个文件,也可以在ubuntu中使用git工具下载,运行如下两条命令进行下载:

git clone https://github.com/analogdevicesinc/hdl
git clone https://github.com/analogdevicesinc/no-os

下载完成后需要切换版本,注意fmcomms8在vivado2019.1版本后才更新出来。本历程使用的是vivado2021.1版本,在hdl下载网址中可以查看vivado版本对应使用的版本,进入下载地址后点击releases。

找到所需要的版本,可以看到与vivado2021.1所对应的是2021_r1。

分别进入hdl与no-os目录,使用git命令进行切换版本,命令如下所示:

cd hdl/

git checkout 2021_r1

cd ../no-os

git checkout 2021_R1

注意hdl的“r”是小写,no-os的是大写。

2 编译fmcomms8项目

        进入目录hdl/projects/fmcomms8/zcu102,设置vivado的环境变量并编译,等待编译完成。若编译失败,可以调整虚拟机的内存大小,重新多编译几次大概率可以编译过。

cd hdl/projects/fmcomms8/zcu102

source vivado安装地址/settings64.sh

make

3 ZCU102配置修改为15EG

        编译完成后在命令行输入vivado打开vivado,打开项目-->选择默认项目-->确定,默认项目选择的是打开vivado命令行的地址。

设置-->general-->更换芯片-->搜索15eg-->选择15eg-->确定-->应用

提示框选择No

打开bd文件-->升级IP核-->全部升级,弹出的提示窗口选择OK。

选择generate

打开ZYNQ IP核,修改配置,从zcu102的配置改为15eg的配置需要修改的地方有SD卡,PCIE,DP和DDR的部分。具体配置如下所示:

15EG没留出PCIE的接口需要关闭

DDR的配置如下,修改完成后生成bit文件。

4 编译no-os文件

       在vivado中导出新的XSA文件

        弹窗默认下一步到选保存地址,地址选择当前目录中的.sdk目录,继续下一步,弹窗都选择确定到完成导出。

       进入目录:no-os/projects/adrv9009/src/app,打开app_config.h文件,取消注第47行的注释保存退出。

        进入目录:no-os/projects/adrv9009,把上面导出XSA文件复制过来,编译,若是新开启的窗口需要提前设置环境变量。

5 创建VITIS项目并导出BOOT.bin文件

       回到vitis中,打开vitis,tools-->Launch Vitis LDE

       地址选择上面保存XSA的.sdk文件夹

       创建平台项目-->设置名称-->Next

        选择导出的XDC文件-->Finish

       选择项目进行编译

 

        xilinx-->create... -->zynq...

       选择Zynq -->选择保存地址-->添加文件-->按图中顺序和路径添加文件,共有3个-->生成BOOT.bin文件

  1. 6 上机测试

       子卡插入fmc0,插入串口,电源和SD卡,启动模式设置为SD卡启动:↓↓↓↑ ,打开串口助手软件,由于会识别出两个串口,需要都打开

串口输出内容如下所示:

7 修改FMC引脚使用FMC1启动

      回到vivado中,使用历程提供的文件替换内容,工程目录中MPSOC_fmcomms8_fmc1.xdc。

保存后生成bit文件,制作BOOT.bin文件,流程与上面相同。子卡插入fmc1口进行测试

串口输出内容如下:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1901070.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

从0到1制作单只鳌虾运动轨迹追踪软件

前言 需要准备windows10操作系统,python3.11.9,cuDNN8.9.2.26,CUDA11.8,paddleDetection2.7 流程: 准备数据集-澳洲鳌虾VOC数据集 基于RT-DETR目标检测模型训练导出onnx模型进行python部署平滑滤波处理视频帧保留的…

Linux Centos7部署Zookeeper

目录 一、下载zookeeper 二、单机部署 1、创建目录 2、解压 3、修改配置文件名 ​4、创建保存数据的文件夹 ​5、修改配置文件保存数据的地址 ​6、启动服务 7、api创建节点 一、下载zookeeper 地址:Index of /dist/zookeeper/zookeeper-3.5.7 (apache.org…

在5G/6G应用中实现高性能放大器的建模挑战

来源:Modelling Challenges for Enabling High Performance Amplifiers in 5G/6G Applications {第28届“集成电路和系统的混合设计”(Mixed Design of Integrated Circuits and Systems)国际会议论文集,2021年6月24日至26日,波兰洛迪} 本文讨…

Stream 很好,Map 很酷,但答应我别用 toMap()

文章目录 Collectors.toMap() 的常见问题替代方案1. 使用 Collectors.groupingBy()2. 处理空值3. 自定义合并逻辑 总结 🎉欢迎来到Java学习路线专栏~探索Java中的静态变量与实例变量 ☆* o(≧▽≦)o *☆嗨~我是IT陈寒🍹✨博客主页:IT陈寒的博…

键盘异常的检测与解决方案

今天对象用Word写文档,按下Ctrl的时候,页面不停地上下滑动,导致无法正常编辑文本。 重启之后,仍然无法解决,推断是键盘坏了。 但是当按下Fn或其他功能键,焦点移除,页面就不会再抖动了。 现在…

2.2.2.1 如何在vscode 中设置ROS2的 用户代码片段

1. vscode中设置C版本的ROS2用户代码片段 1) 找到vscode 下的设置选项,选择用户代码片段 2) 选择用户代码片段后,会弹出选择框,如下图,输入C,选择 cpp.json 配置好的文件 进入如下文件,下图为本人配置的代码片段模版文…

E1.【C语言】练习:用函数求两个整数的较大值

有关创建函数见&#xff1a; 12.【C语言】创建函数 写法 1&#xff1a;if语句 #define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h> int max(int a, int b) {if (a > b)return a;elsereturn b; } int main() {int a 0;int b 0;scanf("%d%d", &a,…

数据可视化之智慧城市的脉动与洞察

在数字化转型的浪潮中,城市作为社会经济发展的核心单元,正经历着前所未有的变革。城市数据可视化大屏看板作为这一变革中的重要工具,不仅极大地提升了城市管理效率,还为公众提供了直观、全面的城市运行状态视图,成为智慧城市建设不可或缺的一部分。本文将深入探讨以“城市…

【MySQL04】【 redo 日志】

文章目录 一、前言二、redo 日志1. redo 日志格式2. Mini-Transaction2.1 以组的形式写入 redo 日志2.2 Mini-Transaction &#xff08;MTR&#xff09;概念 3. redo 日志写入过程3.1 redo 日志缓冲区3.3 redo 日志写入 log buffer 4. redo 日志文件4.1 redo 日志刷盘机制4.2 r…

实现桌面动态壁纸(二)

目录 前言 一、关于 WorkerW 工作区窗口 二、关于窗口关系 2.1 窗口以及窗口隶属关系 2.2 桌面管理层窗口组分简析 2.3 厘清两个概念的区别 2.4 关于设置父窗口 三、编写代码以供在 Vista 上实现 3.1 方法二&#xff1a;子类化并自绘窗口背景 四、初步分析桌面管理层…

qt 如何添加子项目

首先我们正常流程创建一个项目文件&#xff1a; 这是我已经创建好的&#xff0c;请无视红线 然后找到该项目的文件夹&#xff0c;在文件夹下创建一个文件夹&#xff0c;再到创建好的文件夹下面创建一个 .pri 文件&#xff1a; &#xff08;创建文件夹&#xff09; &#xff08…

自闭症在生活中的典型表现

自闭症&#xff0c;这个看似遥远却又悄然存在于我们周围的疾病&#xff0c;其影响深远且复杂。在日常生活中&#xff0c;自闭症患者的典型表现往往让人印象深刻&#xff0c;这些表现不仅揭示了他们内心的世界&#xff0c;也提醒我们要以更加包容和理解的心态去面对他们。 首先…

嵌入式C语言面试相关知识——关键字(不定期更新)

嵌入式C语言面试相关知识——关键字 一、博客声明二、C语言关键字1、sizeof关键字2、static关键字3、const关键字4、volatile关键字5、extern关键字 一、博客声明 又是一年一度的秋招&#xff0c;怎么能只刷笔试题目呢&#xff0c;面试题目也得看&#xff0c;想当好厂的牛马其实…

六、快速启动框架:SpringBoot3实战-个人版

六、快速启动框架&#xff1a;SpringBoot3实战 文章目录 六、快速启动框架&#xff1a;SpringBoot3实战一、SpringBoot3介绍1.1 SpringBoot3简介1.2 系统要求1.3 快速入门1.4 入门总结回顾复习 二、SpringBoot3配置文件2.1 统一配置管理概述2.2 属性配置文件使用2.3 YAML配置文…

前端面试题8

基础知识 解释一下什么是跨域问题&#xff0c;以及如何解决&#xff1f; 跨域问题是由于浏览器的同源策略限制了从一个源加载的网页脚本访问另一个源的数据。解决方法包括使用JSONP、CORS&#xff08;跨源资源共享&#xff09;、设置代理服务器等。 描述一下事件冒泡和事件捕获…

kubernetes集群部署:node节点部署和cri-docker运行时安装(四)

安装前准备 同《kubernetes集群部署&#xff1a;环境准备及master节点部署&#xff08;二&#xff09;》 安装cri-docker 在 Kubernetes 1.20 版本之前&#xff0c;Docker 是 Kubernetes 默认的容器运行时。然而&#xff0c;Kubernetes 社区决定在 Kubernetes 1.20 及以后的…

Spring中的事件监听器使用学习

一、什么是Spring中的事件监听机制&#xff1f; Spring框架中的事件监听机制是一种设计模式&#xff0c;它允许你定义和触发事件&#xff0c;同时允许其他组件监听这些事件并在事件发生时作出响应。这种机制基于观察者模式&#xff0c;提供了一种松耦合的方式来实现组件间的通信…

自动缩放 win7 远程桌面

https://mremoteng.org/download 用这个软件&#xff0c;下载 zip 版&#xff0c;不需要管理员权限 在这里找到的&#xff0c;选票最高的一个就是 https://superuser.com/questions/1030041/remote-desktop-zoom-and-full-screen-how-win10-remote-win7-2008-2003-ho

蓝桥杯开发板STM32G431RBT6高阶HAL库学习FreeRtos——认识HAL_Delay和osDelay的区别

一、修改两个任务的优先级 任务一 任务二 二、使用HAL_Delay的实验结果 结果&#xff1a; LED1亮&#xff0c;LED2不亮 三、使用osDelay的实验结果 结果&#xff1a; LED1亮&#xff0c;LED2亮 四、解释原因 vTaskDelay 与 HAL_Delay 的区别 1.vTaskDelay 作用是让任务阻…

基于RK3588的8路摄像头实时全景拼接

基于RK3588的8路摄像头实时全景拼接 输入&#xff1a;2路csi转8路mpi的ahd摄像头&#xff0c;分辨率1920 * 1080 8路拼接结果&#xff1a; 6路拼接结果&#xff1a; UI界面&#xff1a; UI节目设计原理