0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Vitis的使用教程

电子设计 来源:IC学习者 作者:IC学习者 2022-07-25 18:03 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

在学习ZYNQ嵌入式开发的过程中,正点原子的教程是采用SDK,而我下载的vivado2020.1已经变成了vitis,所以写一这篇博客,方便后续查阅。

找到vitis
vivado->tools->launch vitis ide

pIYBAGAKRmuAPYuaAAC7xXV6UIQ457.png

如果打开失败,说明没有安装vitis,先进行安装

安装vitis
vivado->help->Add Design Tools or Devices…

o4YBAGAKRqqAUoshAACN27nz8hY767.png

退出杀软来加速安装,下一步,登录,

o4YBAGAKRuiAFRuMAABFAxyZecw400.png

建议点击preference,关闭optimize disk usage,否则安装结束后可能会卡在optimize disk usage上。有人优化了一晚上没结束,不得已重装。我晚上打开安装程序,第二天发现电脑已经睡眠了,程序卡在optimize disk usage上,等了半上午,快失去耐心得时候安装完成了。

pIYBAGAKRyeABj86AABrCdeXUHo986.png

pIYBAGAKR2WAVWCEAADaQF-0tjI110.png

我已经安装完成了,所以是灰色状态。

创建platform工程
vivado->tools->launch vitis ide

选择工作路径

pIYBAGAKR7aAC6wYAABuSs1FsJo920.png

先创建一个 platform project,填写工程名

o4YBAGAKR_SAI8hgAADO_mgfFTw764.png

选择xsa文件路径

pIYBAGAKSDOAeaoZAADMGLf2COQ955.png

创建application工程
新建一个应用工程

pIYBAGAKSHmASDaOAALHAEaqtFY100.png

选择刚刚创建的平台

o4YBAGAKSL-APU53AAErWI1I-cc020.png

填写应用工程名

o4YBAGAKSQaAFUyzAADw7pivg1E891.png

默认、

pIYBAGAKSXeACPidAAC-VJnlQUM467.png

选择空白C工程

o4YBAGAKSeWALOKpAADnfrEDK-4305.png

结束工程创建

o4YBAGAKSiWAejD2AAKFaU31P5g286.png

找例程
explorer->platform工程名->platform.spr->board support package
board support package点击一次显示

pIYBAGAKSmeASRGuAAK055P66C4625.png

board support package再点击一次,并拖动滚动条找到GPIO部分

o4YBAGAKSriANFswAAHDpJsVcDQ722.png

可以查看文档documentation,也可以加载例程
点击 Documentation 将在浏览器窗口打开 GPIO 的 API 文档,里面有关于 GPIO 的详细信息

o4YBAGAKSvuARu93AAIVGT5f9GA146.png

点击 Import Examples,会弹出下图所示的导入示例界面

o4YBAGAKS22AciRsAACbFDHZzE4838.png

这两个示例的介绍可以在刚才打开的 API 文档中看到。
xgpiops_intr_example.c 包含有关如何直接使用 XGpiops 驱动程序的示例。此示例显示了中断模式下驱动程序的用法,并使用 GPIO 的中断功能检测按钮事件,根据输入控制 LED 输出。
xgpiops_polled_example.c同样包含有关如何直接使用 XGpiops 驱动程序的示例。此示例提供了用于读取/写入各个引脚的 API 的用法。
选择 xgpiops_polled_example 示例

在 Project Explorer 中,新增了 pio_mio_bsp_xgpiops_polled_example_1 目录,我们打开其 src 目录下的 xgpiops_polled_example.c 文件。

pIYBAGAKS-CAWvJlAANaAyQQYl0058.png

代码没看懂,先放放,删了,写其他的吧。

o4YBAGAKTDGALWeUAANoX9OEL30144.png

删除应用工程,连本地文件一起删除

之前写了一半,但是突然有感觉了,就只顾着写代码了,教程没有写完。第二天接着前面的进度写了,工程名不太一样,但过程都是一样的。

编写源码
src右键,新建文件

o4YBAGAKTHCAYYgWAACWtEG4Nss381.png

文件名main.c

pIYBAGAKTLCAE1VlAACllC_F6ek204.png

写代码,我直接粘贴现成的代码了

o4YBAGAKTPCATrovAAIz7Ybtkfk188.png

编译工程,点击一下应用工程名
再点击Project->build project

pIYBAGAKTTmAXx2tAADAomIDjRI262.png

等右下角进度条跑完,build finished

pIYBAGAKTXiAfqZCAADy5-Q926U224.png

下载程序
如果使用到了PL资源,需要加载比特流,反之不用。
因为本次实验使用了 PL 内的资源,因此我们在下载软件编译生成的 elf 文件之前,需要先下载硬件设计过程中生成的 bitstream 文件,对 PL 部分进行配置。
点击“ Xilinx-> Program FPGA

pIYBAGAKTbaAQShpAADasHih7Qw206.png

点击右下角的“Program”

一段进度条过去了

配置 PL 完成后, 接下来我们要下载软件程序。在应用工程 上右击,选择“Run As->launch hardware

一段进度条过去了

程序就已经运行了,可以从串口的打印结果上看到。

pIYBAGAKTfSAaKNKAABi-05q_qE398.png

没了

插入一下,串口界面可以在windows->show view
搜索terminal

pIYBAGAKTjSAcBHjAABeU7VjwP0088.png

单机右上角+连接相应串口

pIYBAGAKTnmACwn4AAB1AnKU_Ic900.png

参考文献

正点原子ZYNQ嵌入式开发

Xilinx vitis学习教程:ZYNQ之Hello world(1)

审核编辑 黄昊宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 教程
    +关注

    关注

    25

    文章

    265

    浏览量

    55093
  • Vitis
    +关注

    关注

    0

    文章

    158

    浏览量

    8427
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    如何使用AMD Vitis硬件在环功能运行Vitis子系统设计

    到目前为止,本文关于 AMD Versal AIE 验证和 AMD Vitis 新的验证功能的研究,所有内容都基于仿真完成。
    的头像 发表于 04-02 10:29 7146次阅读
    如何使用AMD <b class='flag-5'>Vitis</b>硬件在环功能运行<b class='flag-5'>Vitis</b>子系统设计

    AMD Versal自适应SoC中eMMC烧录/启动调试检查表(下)

    有多种受支持的方式可用于烧录 eMMC 器件,包括使用 AMD Vivado IDE、使用 AMD Vitis GUI 或使用 U-Boot。
    的头像 发表于 03-09 10:27 3731次阅读
    AMD Versal自适应SoC中eMMC烧录/启动调试检查表(下)

    Vivado+Vitis将程序固化的Flash的操作流程

    ZYNQ 的程序固化是指将程序代码永久存储到非易失性存储器中,使系统上电后能自动加载运行的过程。主要固化方式:QSPI Flash固化:常用方式,容量小,如启动代码、FPGA 配置。NAND Flash固化:适合大容量程序存储,如文件系统。SD卡固化:方便更新,适合开发阶段。
    的头像 发表于 01-20 16:17 876次阅读
    Vivado+<b class='flag-5'>Vitis</b>将程序固化的Flash的操作流程

    基于Vitis Model Composer完成全流程AI Engine开发

    基于Vitis Model Composer进行AI Engine(AIE)开发,核心优势体现在AIE专属优化、开发流程简化、灵活的适配性、高效验证及量产适配等方面。
    的头像 发表于 12-31 11:20 6315次阅读
    基于<b class='flag-5'>Vitis</b> Model Composer完成全流程AI Engine开发

    全新AMD Vitis统一软件平台2025.2版本发布

    AMD Vitis统一软件平台 2025.2 版现已推出,此版本为使用 AMD Versal AI Engine 的高性能 DSP 应用提供了更出色的设计环境,还增强了仿真功能以加快复杂设计。
    的头像 发表于 12-12 15:06 854次阅读

    如何在AMD Vitis Unified IDE中使用系统设备树

    您将在这篇博客中了解系统设备树 (SDT) 以及如何在 AMD Vitis Unified IDE 中使用 SDT 维护来自 XSA 的硬件元数据。本文还讲述了如何对 SDT 进行操作,以便在 Vitis Unified IDE 中实现更灵活的使用场景。
    的头像 发表于 11-18 11:13 3313次阅读
    如何在AMD <b class='flag-5'>Vitis</b> Unified IDE中使用系统设备树

    AMD Vitis AI 5.1测试版现已开放下载

    AMD Vitis AI 5.1全新发布——新增了对 AMD Versal AI Edge 系列神经网络处理单元( NPU )的支持。Vitis AI 包含优化的 NPU IP、模型编译工具和部署 API,可在嵌入式平台上实现可扩展的高性能推理。
    的头像 发表于 11-08 09:24 1447次阅读

    AMD Vitis AI 5.1测试版发布

    AMD Vitis AI 5.1全新发布——新增了对 AMD Versal AI Edge 系列神经网络处理单元 (NPU) 的支持。Vitis AI 包含优化的 NPU IP、模型编译工具和部署 API,可在嵌入式平台上实现可扩展的高性能推理。
    的头像 发表于 10-31 12:46 991次阅读

    如何在应用程序调试期间分析栈和堆使用情况

    随着 AMD Vitis 统一软件平台 2021.2 的发布,Vitis 引入了一个 Tcl 脚本,用于在应用程序运行的特定时间点协助查找栈和堆的内存使用情况。该脚本已延续到后续的 Vitis 版本
    的头像 发表于 10-24 16:54 1043次阅读
    如何在应用程序调试期间分析栈和堆使用情况

    如何在AMD Vitis Unified 2024.2中连接到QEMU

    在本篇文章我们将学习如何在 AMD Vitis Unified 2024.2 中连接到 QEMU。 这是本系列的第 2 篇博文。要了解如何设置和使用 QEMU + 协同仿真,请参阅开发者分享|在 AMD Versal 自适应 SoC 上使用简单的 QEMU + 协同仿真示例。
    的头像 发表于 08-06 17:24 2000次阅读
    如何在AMD <b class='flag-5'>Vitis</b> Unified 2024.2中连接到QEMU

    如何在Unified IDE中创建视觉库HLS组件

    最近我们分享了开发者分享|AMD Vitis HLS 系列 1 - AMD Vivado IP 流程(Vitis 传统 IDE)和开发者分享|AMD Vitis HLS 系列 2:AMD
    的头像 发表于 07-02 10:55 1676次阅读
    如何在Unified IDE中创建视觉库HLS组件

    全新AMD Vitis统一软件平台2025.1版本发布

    全新 AMD Vitis 统一软件平台 2025.1 版正式上线!此最新版本为使用 AMD Versal AI 引擎的高性能 DSP 应用提供了改进后的设计环境。
    的头像 发表于 06-24 11:44 1932次阅读

    使用AMD Vitis Unified IDE创建HLS组件

    这篇文章在开发者分享|AMD Vitis HLS 系列 1 - AMD Vivado IP 流程(Vitis 传统 IDE) 的基础上撰写,但使用的是 AMD Vitis Unified IDE,而不是之前传统版本的
    的头像 发表于 06-20 10:06 2549次阅读
    使用AMD <b class='flag-5'>Vitis</b> Unified IDE创建HLS组件

    如何使用AMD Vitis HLS创建HLS IP

    本文逐步演示了如何使用 AMD Vitis HLS 来创建一个 HLS IP,通过 AXI4 接口从存储器读取数据、执行简单的数学运算,然后将数据写回存储器。接着会在 AMD Vivado Design Suite 设计中使用此 HLS IP,并使用嵌入式 Vitis
    的头像 发表于 06-13 09:50 2240次阅读
    如何使用AMD <b class='flag-5'>Vitis</b> HLS创建HLS IP

    正点原子Z20 ZYNQ 开发板发布!板载FMC LPC、LVDS LCD和WIFI&amp;蓝牙等接口,资料丰富!

    接口等外设。开发板提供了丰富的开发文档和软件资源,涉及FPGA开发、Vitis开发、Linux系统开发和Qt开发! 一、资料下载 正点原子Z20 ZYNQ开发板/核心板:http
    发表于 05-30 16:55