提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
ADI demo PS工程的编译-以adrv9371x_zc706为例子
- 前言
- VITIS建工程
- 总结
前言
接《ADI demo PL工程的编译-以adrv9371x_zc706为例子之使用Cygwin》这篇。导出XSA文件,接下来使用vitis软件建立工程,话说vitis软件我也是第一次使用,自从2019版本之前好像还都是SDK,那个还用过一些,不过看网上说VITIS好像也差不多
VITIS建工程
1、在vivado界面中点击了launch vitis,不像SDK,SDK会自动跟我们建立一个硬件工程,这个需要自己手动创建。不过其实也差不多的操作
首先先建立platform project
然后再建立application project,中间选择一个空的项目。这样一个工程就建立好了。
现在关键是把ad9371那些代码给放进去,刚开始想当然的把这个目录的文件全部放进去
no-OS-2019_R2\projects\ad9371\src
结果发现不是缺这个文件,就是缺那个文件,好烦躁。
后面发现在这个文件夹中有个README文件,这个文件指明了需要外部的其他资源,这里因为我是Xilinx平台的,我把Intel的都删掉,剩下如下:
cp ../../../include/axi_io.h devices/adi_hal/
cp ../../../include/error.h devices/adi_hal/
cp ../../../include/spi.h devices/adi_hal/
cp ../../../include/gpio.h devices/adi_hal/
cp ../../../include/delay.h devices/adi_hal/
cp ../../../drivers/spi/spi.c devices/adi_hal/
cp ../../../drivers/platform/xilinx/axi_io.c devices/adi_hal/
cp ../../../drivers/platform/xilinx/xilinx_spi.c devices/adi_hal/
cp ../../../drivers/platform/xilinx/spi_extra.h devices/adi_hal/
cp ../../../drivers/platform/xilinx/gpio.c devices/adi_hal/
cp ../../../drivers/platform/xilinx/gpio_extra.h devices/adi_hal/
cp ../../../drivers/platform/xilinx/delay.c devices/adi_hal/
cp ../../../drivers/axi_core/axi_adc_core/axi_adc_core.c devices/adi_hal/
cp ../../../drivers/axi_core/axi_adc_core/axi_adc_core.h devices/adi_hal/
cp ../../../drivers/axi_core/axi_dac_core/axi_dac_core.c devices/adi_hal/
cp ../../../drivers/axi_core/axi_dac_core/axi_dac_core.h devices/adi_hal/
cp ../../../drivers/axi_core/axi_dmac/axi_dmac.c devices/adi_hal/
cp ../../../drivers/axi_core/axi_dmac/axi_dmac.h devices/adi_hal/
cp ../../../drivers/axi_core/clk_axi_clkgen/clk_axi_clkgen.c devices/adi_hal/
cp ../../../drivers/axi_core/clk_axi_clkgen/clk_axi_clkgen.h devices/adi_hal/
cp ../../../drivers/axi_core/jesd204/axi_adxcvr.c devices/adi_hal/
cp ../../../drivers/axi_core/jesd204/axi_adxcvr.h devices/adi_hal/
cp ../../../drivers/axi_core/jesd204/axi_jesd204_rx.c devices/adi_hal/
cp ../../../drivers/axi_core/jesd204/axi_jesd204_rx.h devices/adi_hal/
cp ../../../drivers/axi_core/jesd204/axi_jesd204_tx.c devices/adi_hal/
cp ../../../drivers/axi_core/jesd204/axi_jesd204_tx.h devices/adi_hal/
cp ../../../drivers/axi_core/jesd204/xilinx_transceiver.c devices/adi_hal/
cp ../../../drivers/axi_core/jesd204/xilinx_transceiver.h devices/adi_hal/
cp ../../../util/util.c devices/adi_hal/
cp ../../../include/util.h devices/adi_hal/
还是利用Cygwin工具,
cd /cygdrive/H/test/NEW_cgywin/hdl-hdl_2019_r2/projects/adrv9371x/zc706
source README
这样,就把其他需要的文件全部拷贝到adi_hal文件里面了。注意,这里有一个文件是不存在的
然后我把no-OS-2019_R2\projects\ad9371\src 所有的.c .h文件全部拷贝到vitis工程的src文件夹中,
但还是会报错。原因就是common.c中的
gpio_get
gpio_remove
gpio_direction_output
等函数找不到。
这不是刚才漏copy了一个函数的原因么。我搜索了一下这个文件,需要将
no-OS-2019_R2\drivers\gpio\gpio.c
和
no-OS-2019_R2\drivers\platform\xilinx\xilinx_gpio.c
这两个文件都复制到工程中去。
这些编译就没有错误了。
总结
但毕竟我手头上并没有官方的开发板,只能说编译成功了,功能对不对也不知道。但毕竟编译成功了也是成功了一小步,后续计划将这套程序挪到我的ZYNQ7030中,而且只保留SPI部分,还是需要对程序进行慢慢理解的