当前位置: 首页 > article >正文

使用vivado2023.2新版Vitis创建hello world项目以及新版vitis的一些说明

1,创建vivado端的项目

        打开vivado2023.2,创建新的项目。

        默认下一步至填写项目名称与保存地址

        默认下一步

        选择芯片型号,我这里使用15EG MPSOC开发。注意根据自己的开发板型号选择芯片型号。选择好后默认下一步完成工程创建。

        添加设计文件

        添加ZYNQ IP核,

        配置IP核,此部分需要根据实际使用开发板进行配置,

        生成底层文件

        默认输出

        生成顶层文件,提示框默认OK即可

        生成bit文件

        导出硬件设计文件

        默认下一步至选择地址和名称,名称随意设置,我这里地址在后面多加一级vitis文件夹,这是我的个人习惯。大家可随意更改。后续默认下一步即可。

2 ,创建vitis项目

        打开vitis的方式我这里提供两种,其一是使用vivado的联动打开,此方法可能会导致vivado卡主,或者打不开vitis。

        其二则是在开始菜单栏中寻找到vitis2023.2,单击打开。

        打开工作空间,可以在欢迎界面打开,若没有欢迎界面也可以在左上角的选项栏中打开。

        创建平台组件

        默认下一步,导出在vivado中导出的xsa文件,下一步等待识别出PS核,后续默认下一步即可。创建时可能需要等于一会,左下角可以看到显示条。

        创建完成后就可以到一个全新的界面,这里介绍最主要的功能编译,在选择项目后在下方FLOW栏目中可以看到编译按钮,其他常用功能后面使用到的时候在介绍。

        先点击点击编译,查看项目是否创建成功

        创建helloworld工程项目非常简单,如下图所示选择左边选项卡倒数第二个,找到hello world,点击加号即可,主要鼠标需要放到hello world栏上才会显示加号。此处可以看到有很多其他的历程项目,大家可以在这里学习到很多其他的历程。

        默认选择名称与地址,下一步选择刚创建的平台项目。后续默认下一步即可完成创建。

        创建完成后点击编译,若要更改代码可以在如下所示的路径中进行修改。

        也可以使用手动的方式创建应用项目,可以点击VITIS栏右边的加号,主要鼠标需要放到这个栏才会显示,

        或者可以在上方file栏中创建项目

        输入名称与地址,地址一般默认即可

        选择刚创建的平台项目,后续默认下一步即可完成创建

        右键新建项目的sources目录的src目录,新建文件,

        名称设置为main.c

        接下来就可写代码了,我这里就以上面的helloworld项目为例,可直接将其内容复制过来,最后编译检查代码无误。

3,在线下载

        编译通过后,连接好硬件开发板,点击Run就可在线烧写PS端的项目,打开串口可以到输出的内容。

        若想要添加bit文件进行烧写可以点击RUN右边的齿轮,在打开的设置中添加bit文件,添加完成后点击run再烧写一次即可。等待烧写完成后可以观察开发板的DONE灯是否亮,判断bit文件是否烧写完成。

4,生成BOOT.BIN文件

        点击Create Boot Image生成BOOT.bin文件,如下图所示可以看到系统自动帮我们添加了两个文件,点击文件查看地址,可以看到添加的使fsbl文件和elf文件,我们只需要再添加bit文件即可。

        点击加号添加BIT文件。

        根据以前生成BOOT.BIN文件的经验bit文件需要放在中间,所以需要选择bit文件,点击上箭头调整位置。如下图所示为调整好后的位置。

        最后选择文件保存的位置,再点击Create Image生成bit文件即可。将BOOT.bin文件复制到SD卡中插入开发板,将开发板启动模式设置为SD卡启动,上电查看串口是否有输出以及DONE灯是否亮起。

5,flash烧写

        点击 Program Flash

        添加bit文件和fsbl文件,fsbl文件路径可以参考如下图所示的地址,从hello_world项目名称开始。点击Program开始烧写。

        耐心等待烧写完成,烧写完成后输出窗口内容如下所示。将开发板的启动模式设置为flash模式,复位开发板,查看是否启动。

有相关问题欢迎评论。内容不定时更新。


http://www.kler.cn/a/572919.html

相关文章:

  • 前端基础之组件自定义事件
  • 项目工坊 | Python驱动淘宝信息爬虫
  • CSS设置文字渐变色样式(附带动画效果)
  • 鸿蒙5.0实战案例:基于OpenGL渲染视频画面帧
  • 网络编程之TCP协议
  • 数据结构:八大排序(冒泡,堆,插入,选择,希尔,快排,归并,计数)详解
  • CHAPTER 5 Data Class Builders
  • MWC 2025 | 移远通信大模型解决方案加速落地,引领服务机器人创新变革
  • Tripo3D使用体验
  • C语言_图书管理系统_借阅系统管理
  • E22-xxxT22D lora模块配置
  • OpenFeign 学习笔记
  • 并查集—数组实现
  • 【Linux】进程间通信 续
  • 美颜SDK架构揭秘:人脸美型API的底层实现与优化策略
  • 立体仓WMS同MES制造的协同
  • upload-labs Pass5-18 文件上传
  • 观察者模式的C++实现示例
  • 从零开始的kafka学习 (一)| 概念,Java API
  • 从vue源码解析Vue.set()和this.$set()