目录
1,下载工程需要使用的文件
2,编译以及修改工程
3,获取生成BOOT.BIN所需要的3个文件
3.1生成bit文件
3.2生成elf文件
3.3生成fsbl文件
4,生成boot.bin文件
5,上板测试
6,切换FMC接口
7,资源分享
1,下载工程需要使用的文件
首先需要在github上下载两个文件,本例程用到的文件以及最终文件我都会放在网盘里面,
地址放在最后面。在github搜搜索hdl选择第一个,如下图所示
网址:Releases · analogdevicesinc/hdl · GitHub
点击releases选择版本
本例程所使用的vivado版本为2019.1,需要找到对应的版本
在附件中下载资源
在github上搜索no_os,选择第一个
地址:https://github.com/analogdevicesinc/no-OS/tree/2019_R1
点击main,找到2019_R1
点击Code->Download下载
下载完成后复制到Ubuntu中并解压
2,编译以及修改工程
打开命令行窗口,进入工程文件夹,fmcomms3兼容fmcomms2所以这里可以选择fmcomms2。
cd hdl-2019_r2/projects/fmcomms2/zcu102/
设置环境变量
source /tools/Xilinx/Vivado/2019.1/settings64.sh
使用20个线程编译文件,这里对电脑内存需求较大,我使用4G时会提示内存不够,设置为16G后再次编译即可成功
这里的编译会经常报错,一般来说只需要重新编译即可,当命令行输入make后不会有反应视为成功
编译完成后打开vivado,在命令行输入vivado即可
点击打开工程
选择上面那个make路径生产的工程
打开设置->修改器件->搜索15eg->选择使用的器件,点击OK
保存时提示信息选择NO
打开设计文件->点击更新IP核->点击更新
点击OK确定更新
点击Gennerate
点击ZYNQ,只需要修改MIO的外设和DDR配置即可,修改为所使用器件的配置
我这里修改完了,使用15eg开发板的可以直接导入我的配置,配置文件会放在最后的网盘连接中,配置完点击OK
3,获取生成BOOT.BIN所需要的3个文件
3.1生成bit文件
保存修改
点击ok
等待bit文件生成后,进入fmcomms2_zcu102.runs/impl_1/文件夹
复制.bit文件到一个你能找到的地方
3.2生成elf文件
导出硬件配置文件
打开上面工程文件夹,打开.SDK文件夹,复制.hdf文件
进入之前下载的no-OS-2019_R1文件夹,路径:projects/ad9361/
把刚刚复制的文件粘贴到这里
进入src文件夹,打开parameters.h文件
在第一行加入 #define XPS_BOARD_ZCU102保存
在命令行中输入make,若是新开的命令行窗口需要重新设置环境变量
编译完成后打开build文件夹,复制生成的.elf文件与上面的BIT文件放在一起
3.3生成fsbl文件
然后回到vivado,打开SDK,创建应用程序
设置名称为fsbl
回到zcu102文件夹,进入目录:fmcomms2_zcu102.sdk/fsbl/Debug/
复制fsbl与上面那两个文件放在一起
4,生成boot.bin文件
回到SDK,点击xilinx->create Boo...
选择zynq mp->选择保存的地址->添加文件
首先需要添加fsbl文件,然后继续点Add,添加elf文件和bit文件
三个文件添加完成后点击生成BOOT.BIN文件
5,上板测试
把BOOT.BIN文件复制到SD卡中,把SD卡插入开发板,启动模式设置为SD卡启动,工程默认的FMC引脚绑定的是FCM0,所以把AD9361模块插入FMC0接口,插入串口线和电源线
打开串口软件,开启电源,可以看到打印信息,AD9361初始化成功
6,切换FMC接口
回到vivadio,打开XDC文件,把引脚绑定修改到FMC1上,引脚绑定内容我会放在下面提供的网盘连接中,里面有个PINS.txt文件,FMC012的引脚都在里面
找到FMC1的引脚绑定,替换system_constr.xdc文件中的内容
等待bit文件生成后打开SDK生成BOOT.BIN文件,只需要把之前的bit文件替换为修改引脚后的bit文件,把AD9361模块插入FMC1接口,把新的BOOT.BIN文件复制到SD卡中插入
打开串口软件,开启电源可以看打印信息AD9361初始化成功
7,资源分享
本工程所选需要以及产生的文件,和整个工程都以上传到网盘
链接:https://pan.baidu.com/s/1drHiuDJt4v9XTITNF3sozw
提取码:ia2e