生成独立的zedboard+ad9361起始项目

文件分享

链接:https://pan.baidu.com/s/17wB_9xVWjO7HhxNvmmZyuA 
提取码:94zz 

首先下载HDL和NO-OS项目

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

下载完成后需要更换版本,要与ubuntu中下载的vivado版本相同,使用如下命令进行查看版本,摁↓键可以查看更多版本,摁Q退出查看。

git branch -a

使用如下命令进行切换版本

git checkout 版本号

具体版本号对应那个vivado在以在GitHub中查看,进入HDL的网站:

GitHub - analogdevicesinc/hdl: HDL libraries and projects

可以看到各各版本的介绍,我的电脑中使用的是vivado2018.3,所以选择hd_l2019_r1,no-os的版本切换也是同样的流程

版本切换完成后进入如下目录。设置环境变量,根据vivado安装位置不同选择对应的地址,最后进行编译

cd hdl/projects/fmcomms2/zed/

source /tools/Xilinx/Vivado/2018.3/settings64.sh 

make

编译完成后进入 fmcomms2_zed.sdk 目录,复制 system_top.hdf 文件,粘贴到no-OS/projects/ad9361目录中。并在此目录下打开命令行窗口,设置环境变量并编译

source /tools/Xilinx/Vivado/2018.3/settings64.sh 

make

编译完成后就可以进行移植,进入hdl如下目录,打开makefile文件

cd hdl/projects/fmcomms2/zed/

gedit Makefile

可以在Makefile中看到参与编译的文件有哪些,把这些文件单独拿出来,也可以把整个库拿出来,没参加编译的文件也不大。

打开hdl文件夹,复制library文件夹到hdl/projects/fmcomms2/zed中,进入hdl/projects/common/zed文件夹,复制里面的俩个引脚约束中的文件,粘贴到hdl/projects/fmcomms2/zed/xdc中,这样就可以把整个zed文件夹压缩后复制到windows系统中。进入no-OS/ projects/ ad9361 压缩并复制src文件夹到Windows中。

在windows中打开对应版本的vivado打开zed中的项目

打开项目时会提示缺少俩个文件,点击确定

添加文件—>添加设计文件—>下一步

点击添加文件—>选择文件:zed/library/common/ad_iobuf.v—>确定—>完成

删除之前的文件

继续添加第二个缺少的文件,点击添加文件-->添加引脚约束文件夹-->下一步

选择缺少的文件进行删除

添加文件-->进入到XDC文件夹中添加缺少的文件-->确定-->完成

点击设置-->IP库设置-->删除缺少的库

添加库-->选择library-->确定-->保存设置,中间提示选择确定即可

添加完成后就可以编译项目了,在等待期间可以移植SDK中的代码,直接在vivado中打开SDK,弹窗提示选择确定

打开SDK后创建一个hello world项目,在资源管理器中找到项目地址,用从Ubuntu中拿出来的src文件替换掉。回到SDK中摁F5刷新项目,可以看到src中的所有都添加进来了。

编译后会提示缺少文件,在no-OS中搜索文件添加到src文件夹中,继续编译添加,直到不报错。可以使用VS code所搜文件会比较便捷。可以使用我添加完后的src文件夹进行代替

后面添加fsbl项目和制作SD卡,把SD卡插入开发板,插入AD9361模块和串口线

给开发板上的查看串口输出内容,最后显示Done表示成功

在SDK中新建循环测试项目,名称设置为loop_tone,选择hello world工程模板,在文件夹中替换src文件。刷新后编译,若出现大量报错,可以清除之前的编译文件重新编译。弹窗点OK即可

制作成SD卡或在线烧写到开发板,在串口助手中查看输出内容

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

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

相关文章

用人工智能大模型预报气象,中国气象局示范计划公开征集火热报名中

近日,中国气象局发布了人工智能气象预报大模型示范计划(以下简称“示范计划”),推进气象大模型标准规范和有序发展,引导解决预报业务实际难题,促进人工智能气象预报大模型业务的应用转化、准入,…

【Linux】初识操作系统

一、冯•诺依曼体系结构 在学习操作系统之前,我们先来认识一下冯•诺依曼体系结构,我们常见的计算机,如笔记本。我们不常见的计算机,如服务器,大部分都遵守冯诺依曼体系。 截至目前,我们所认识的计算机&am…

Navicat上新啦

前言 Navicat,在数据库界,几乎是一个神奇的存在,似乎统治了数据库开发工具的“一片天”。且看下图: 红的蓝的绿的橙的…,可以说,留给它的color不多了。 那么商业BI到服务监控、从云托管到云协作&#xff…

VUE3-Elementplus-form表单-笔记

1. 结构相关 el-row表示一行,一行分成24份 el-col表示列 (1) :span"12" 代表在一行中,占12份 (50%) (2) :span"6" 表示在一行中,占6份 (25%) (3) :offset"3" 代表在一行中,左侧margin份数 el…

5G NR PUSCH物理层过程

物理层过程 加扰 假设要在单个码字q上传输的bit块为 b ( q ) ( 0 ) , . . . , b ( q ) ( M b i t ( q ) − 1 ) b^{(q)}(0),...,b^{(q)}(M_{bit}^{(q)} - 1) b(q)(0),...,b(q)(Mbit(q)​−1) ,其中 M b i t ( q ) M_{bit}^{(q)} Mbit(q)​是总比特数,加…

《昇思25天学习打卡营第16天 | 昇思MindSpore基于MobileNetv2的垃圾分类》

16天 本节学习了垃圾分类代码开发的方法。通过读取本地图像数据作为输入,对图像中的垃圾物体进行检测,并且将检测结果图片保存到文件中。 MobileNet网络是由Google团队于2017年提出的专注于移动端、嵌入式或IoT设备的轻量级CNN网络,相比于传…

2024.6.30周报

目录 摘要 ABSTRACT 一、文献阅读 一、题目 二、摘要 三、模型架构 四、文章解读 一、Introduction 二、创新点 三、RBM 四、贪心算法 五、实验 六、结论 二、代码复现 总结 摘要 本周我阅读了一篇题目为Generative Pre-Trained Physics-Informed Neural Netwo…

树莓派4B学习笔记16:Python引用自定义模块_简单模块化

今日继续学习树莓派4B 4G:(Raspberry Pi,简称RPi或RasPi) 本人所用树莓派4B 装载的系统与版本如下: 版本可用命令 (lsb_release -a) 查询: Python 版本3.7.3: 今日学习:Python引用自定义模块 文章提供测试…

【机器学习】机器学习的重要方法——强化学习:理论,方法与实践

目录 一、强化学习的核心概念 二、强化学习算法的分类与示例代码 三.强化学习的优势 四.强化学习的应用与挑战 五、总结与展望 强化学习:理论,方法和实践 在人工智能的广阔领域中,强化学习(Reinforcement Learning, RL&…

一文带你了解乐观锁和悲观锁的本质区别!

文章目录 悲观锁是什么?乐观锁是什么?如何实现乐观锁?什么是CAS应用局限性ABA问题是什么? 悲观锁是什么? 悲观锁它总是假设最坏的情况,它会认为共享资源在每次被访问的时候就会出现线程安全问题&#xff0…

SCI二区|北极海鹦优化算法(APO)原理及实现【免费获取Matlab代码】

目录 1.背景2.算法原理2.1算法思想2.2算法过程 3.结果展示4.参考文献5.代码获取 1.背景 2024年,W Wang受到北极海鹦的生存和捕食行为启发,提出了北极海鹦优化算法(Arctic Puffin Optimization, APO)。 2.算法原理 2.1算法思想 …

Unity Shader 极坐标

Unity Shader 极坐标 前言项目简单极坐标极坐标变体之方形极坐标变体之圆形拉花 鸣谢 前言 极坐标记录 项目 简单极坐标 极坐标变体之方形 极坐标变体之圆形 拉花 鸣谢 【菲兹杂货铺】【Unity Shader教程】极坐标实现以及极坐标的两种变体

【Android】在App里面安装Apk文件

项目需求 在一个App里面内置一个第三方的APK文件,然后通过这个App可以安装这个APK文件。 需求实现 1.内置APK文件 在App里面创建一个assets文件夹,然后把想要安装的APK文件放到这里面。 2.定义文件路径访问权限 创建一个文件,命名【file…

springcloud第4季 seata报could not find any implementation for class

一 问题说明 1.1 描述 在使用seata2.0alibaba-cloud 2022.0.0.0-RC2nacos 2.2.3 模拟下订单分布式事务场景,出现如下问题:java.lang.ArrayIndexOutOfBoundsException: Index 0 out of bounds for length 0 查看服务端:java.util.ServiceCo…

鸿蒙开发Ability Kit(程序框架服务):【向用户申请授权】

向用户申请授权 当应用需要访问用户的隐私信息或使用系统能力时,例如获取位置信息、访问日历、使用相机拍摄照片或录制视频等,应该向用户请求授权,这部分权限是user_grant权限。 当应用申请user_grant权限时,需要完成以下步骤&a…

鸿蒙开发设备管理:【@ohos.multimodalInput.inputDevice (输入设备)】

输入设备 输入设备管理模块,用于监听输入设备连接、断开和变化,并查看输入设备相关信息。比如监听鼠标插拔,并获取鼠标的id、name和指针移动速度等信息。 说明: 本模块首批接口从API version 8开始支持。后续版本的新增接口&…

11_电子设计教程基础篇(磁性元件)

文章目录 前言一、电感1、原理2、种类1、制作工艺2、用途 3、参数1、测试条件2、电感量L3、品质因素Q4、直流电阻(DCR)5、额定电流6、谐振频率SRF(Self Resonant Frequency)7、磁芯损耗 4、应用与选型 二、共模电感1、原理2、参数…

RocketMQ常用基本操作

文章中的rabbitmq使用的是rocketmq-all-5.1.3-bin-release版本,需要安装包的可自行下载 RockerMQ启动停止命令 启动命令 nohup sh bin/mqnamesrv & nohup sh bin/mqbroker -n localhost:9876 --enable-proxy & 查看日志 tail -f ~/logs/rocketmqlogs/…

对话贾扬清:我创业这一年所看到的 AI

引言 在这次对话中,前阿里巴巴人工智能专家、现LIBRINAI创始人贾扬清分享了他在AI领域创业一年的见解和经历。作为一位从科学家转型为CEO的创业者,他探讨了AI计算、异构计算和云原生软件的结合带来的革命性变化,并讨论了LIBRINAI如何在激烈的…

EasyExcel数据导入

前言: 我先讲一种网上信息的获取方式把,虽然我感觉和后面的EasyExcel没有什么关系,可能是因为这个项目这个操作很难实现,不过也可以在此记录一下,如果需要再拆出来也行。 看上了网页信息,怎么抓到&#x…