TQ15EG开发板教程:使用vivado2023.1建立hello world工程

1:打开软件建立工程

2:使用vivado创建设计模块并生成bit文件

3:导出硬件平台,使用vitis建立工程

4:使用vitis创建应用程序项目

5:硬件设置与调试

1:打开软件建立工程

打开VIVADO2023.1

创建一个新的工程

输入项目名称和地址,下面那个选项为是否使用项目名称新建一个文件夹,我这里已经建了一个hello_world文件夹,所以不勾选

选择RTL工程,勾选不添加文件

搜索15eg,选择xqzu15eg-ffrb1156-2-i。这一步选择芯片型号,一定要选择和自己开发板相匹配的型号(本实验使用的开发平台是 XCZU15EG对应 的芯片型号xqzu15eg-ffrb1156-2-i)

完成创建工程

2:使用vivado创建设计模块并生成bit文件

添加设计模块并且设置模块名称

在模块中添加ZYNQ IP

配置 ZYNQ IP 的参数

双击 IP 对 IP 的各个功能参数进行配置,这个配置必须参考硬件原理图完成,所以 FPGA 或者 SOC 工程师必须 具备一定的硬件分析能力,可以阅读原理图,实现对硬件资料在软件上的定义分配。

若有配置文件预设可以直接导入配置,这里我们使用已经提供的配置文件对参数进行位置。

配置文件在 hello_world\file 目录下,选择配置文件点击OK即可导入

导入完成点击OK,把配置导入到ZYNQ内

把ZYNQ模块的时钟线连接起来

右键设计模块,点击Generate Output ...

默认设置点击生成

右键设计模块生成HDL文件,该文件就是一个 FPGA Verilog 文件。而 BD 图形化工程,VIVADO 把 BD 封装成了一个模块。顶层的 verilog 文件通过模块接口就可以调用 BD 图形代码了,和 ZYNQ 的调用相比,ZYNQ MPSOC 没有了 DDR 等内部信号接口,简洁了很多。

第一个选项是生成可编辑的HDL文件,第二个选项则不可编辑,这里默认即可

点击Generate Bitstream 生成bit流文件

默认设置点击OK

3:导出硬件平台,使用vitis建立工程

首先需要在vivado中导出硬件平台

设置名称与选择保存地址,建议地址选择新建一个vitis文件夹,完成导出硬件平台

打开vitis

可用通过vivado打开vitis,tools->Launch vitis IDE

也可以通过vitis应用直接打开

无论那种方式打开后都会提示选择工作空间,我们选择上面创建的vitis文件夹为工作空间

打开vitis后创建平台项目

设置项目名称

导入在vivado中创建的硬件平台

4:使用vitis创建应用程序项目

设置项目名称

选择hello_world模板例程

右键创建的项目,选择编译

5:硬件设置与调试

插好板子上的电源,JTAG和UART线,把启动模式设置为JTAG模式0000,开启电源开关

在vitis中点击Debug,进入调试界面

进入Vitis Ser...窗口,点击加号打开串口设置界面,选择COM口后点击OK

点击vitis下的Program Device,把bit流文件烧录进去

点击borwse...选择bit文件,文件在工程目录下的 ***.runs 文件夹,下的impl_1文件夹中,点击program进行烧录

烧录成功,板子上的DL7,DL11和DL12都会亮起来

右键项目点击1 Launch Hardware把程序烧录进去

烧录成功后打开vitis ser...窗口,查看串口输出数据,与例程代码相同

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

深入了解关联查询和子查询

推荐阅读 给软件行业带来了春天——揭秘Spring究竟是何方神圣(一) 给软件行业带来了春天——揭秘Spring究竟是何方神圣(二) 文章目录 推荐阅读关联查询子查询 关联查询 关联查询 从多张表中查询对应记录的信息,关联查…

网络原理-TCP/IP(5)

TCP协议 延迟应答 它也是基于滑动窗口,提高效率的一种机制,结合滑动窗口以及流量控制,能够以延迟应答ACK的方式,把反馈的窗口,搞大.核心在于允许范围内,让窗口尽可能大. 如果接收数据的主机立刻返回ACK应答,这时候返回的窗口可能比较小. 1.假设接收端缓冲区为1M.一次收到了5…

Java特别篇--关于线程创建的三种方式的总结对比

文章目录 一、常见3种创建线程的方式(1)方式1:继承Thread类的方式(2)方式2:实现Runnable接口的方式(3)方式3:通过Callable和Future接口创建线程 二、对比三种方式&#x…

CUDA/TensorRT部署知识点

CUDA相关: 1、CUDA核函数嵌套核函数的用法多吗? 答:这种用法非常少,主要是因为启动一个kernel本身就有一定延迟,会造成执行的不连续性。 2、如下代码里的 grid/block 对应硬件上的 SM 的关系是什么? 答:首先需要理解grid/block是软件层的概念,而SM是硬件层的概念。所…

python脚本将照片按时间线整理

说明:有一次自己瞎折腾,然后把服务器相册搞崩了,后来做了备份同步给找了回来,但是相册的时间线全乱了,看起来非常难受。所以就想通过文件夹的形式把照片重新分类,分类后的结构如下(红色字体为文件夹)&#…

人生百相,不过熵增熵减

这篇博文由两个问题衍生而来,分别是:“为什么除法比加法困难”、“什么是生命进化的目的”。在阅读其他人的解读时,发现都关联到了一个概念,熵。觉得十分有意思,因此记录一下自己的遐想。 熵(Entropy&#…

vulhub中spring的CVE-2022-22965漏洞复现

在JDK 9上运行的Spring MVC或Spring WebFlux应用程序可能存在通过数据绑定执行远程代码(RCE)的漏洞。 现在已知的利用方法要求应用程序以WAR部署的形式在Tomcat上运行,然而,该漏洞的性质更为普遍,可能有其他方法可以利…

docker安装-centos

Docker CE 支持 64 位版本 CentOS 7,并且要求内核版本不低于 3.10 卸载旧版本Docker sudo yum remove docker \ docker-common \ docker-selinux \ docker-engine使用yum安装 yum 更新到最新版本: sudo yum update执行以下命令安装依赖包: sudo yum…

【无刷电机】无感方波驱动方案

无感方波驱动方案 1.通过无感过零信号构造霍尔换相信号2.无刷硬件驱动方案3.无感方波控制程序框架3.1有感方波控制3.2无感方波控制3.3无感启动方案3.4无感速度闭环控制1.通过无感过零信号构造霍尔换相信号 实现无感方波控制有软件比较和硬件比较两种方案。 软件比较是通过ADC采…

张维迎《博弈与社会》威胁与承诺(3)承诺行为

承诺的作用 上一节,我们探讨了如何在求解博弈时把不可置信的威胁或许诺排除出去,从而对参与人的行为做出合理的预测。如前所述,其中一个隐含的前提条件是,参与人要具有理性共识。而理性共识是一个要求很高的条件,现实生…

基于Springboot的校园失物招领网站(有报告)。Javaee项目,springboot项目。

演示视频: 基于Springboot的校园失物招领网站(有报告)。Javaee项目,springboot项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构…

基于Springboot的兼职网(有报告)。Javaee项目,springboot项目。

演示视频: 基于Springboot的兼职网(有报告)。Javaee项目,springboot项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构&#xff0…

Oracle喊你领取免费AI 助理级证书啦!

拿证秘籍如下: 1. 登录Oracle的考试中心网站:https://education.oracle.com/certification 2. 选择AI 助理级考试,考试代码:1Z0-1122-23,也可以点击这里直达 3. AI学习视频免费看,也可以选择不看 3.5 去…

【git 本地管理版本及与github合并】 Init Push Pull操作解决方案

文章目录 创建本地仓库,并与远程仓库链接更新本地仓库并使用Push推送到远程仓库 1. 几种基础命令介绍:2. git push操作流程 .gitignore删除本地仓库,断开本地与远程的链接设置用于提交commit的用户名,邮箱,以便githu…

自建服务器监控工具uptime kuma

web服务器使用 雨云 提供的2核2g 这里使用1panel的uptime kuma 首先,如果你使用雨云,那么可以直接省去安装1panel的烦恼 直接选择预装后,等待部署完成即可看到面板信息,进入面板,点击应用商店 在应用商店里找到upti…

安装配置Oracle 11g 、PLSQL及使用Navicat远程连接Oracle

目录 一、下载 二、安装 1.执行安装程序 2.配置安全更新 3.安装选项 4.系统类 5.网络安装选项 6.选择安装类型 7.选择产品语言 8.选择数据库版本 9.指定安装位置 10.选择配置类型 ​编辑11.指定数据库标识符 12.指定配置选项 13.电子邮箱 14.指定数据库存储…

Android学习之路(28) 进程保活组件的封装

前言 远古时代,出现过很多黑科技,比如MarsDaemon,使用双进程守护的方式进行保活,在当时可谓风光无限,可惜在8.0时代到来就被废弃了。 又比如后面出现的1像素Activity的保活方式,说他流氓一点不过分&#…

解决Android camera 录像中拍照帧率不足30fps

问题现象 camera录像中拍照,录出来的视频帧率为29.3fps,未达到30fps。 问题分析 这个场景相当于跑了previevediocapture,极其损耗性能。 当前场景CPU频率已处于最高。 抓取systrace分析。 1,分析掉帧直接原因 SinkNode存在大…

【Leetcode】第 383 场周赛

文章目录 100214. 边界上的蚂蚁题目思路代码结果 100204. 将单词恢复初始状态所需的最短时间 I题目思路代码结果 100189. 找出网格的区域平均强度题目思路代码结果 100203. 将单词恢复初始状态所需的最短时间 II题目思路代码结果 100214. 边界上的蚂蚁 题目 题目链接 给你一个…

容器和镜像

容器和镜像是现代软件开发和部署中重要的概念,它们通常与容器化技术(如Docker)相关联。以下是它们的基本定义和关系: 容器(Container): 容器是一种轻量级、可移植的运行环境,其中包含了应用程序及其依赖项(…