创建工程模板在hello_world中已经介绍过了,这里直接从配置完zynq ip核开始
点击tools - Create and ...创建IP核
选择创建AXI外设IP核,
设置IP核的名称即可,其他默认点击next
默认设置即可
勾选编辑IP核,vivado会自动打开另一个程序,进行编辑IP核,
打开IP核的顶层设计,添加led输出端口
把端口引入底层
打开IP核的底层设计,添加led输出端口
在底层代码添加led控制逻辑,由axi总线的4个接口最低位控制
打开Package IP窗口,打开Identification界面,修改版本号,以便于区分
挨个点击这些没打勾的界面,点击Merge ch...对我们做的修改进行保存,
最后打开Rec...界面,对修改过的IP进行打包
点击yes会自动关闭IP编辑的Viado界面
回到vivado工程中,把时钟线连上
由于在vivado2023.1版本中,使用自建AXI IP核会导致vitis无法编译成功,所以这里先不添加IP核,右键设计模块,点击Generate Output ...
默认设置点击生成
右键设计模块生成HDL文件
第一个选项是生成可编辑的HDL文件,第二个选项则不可编辑,这里默认即可
点击Generate Bitstream 生成bit流文件
接下来是创建vitis工程,其步骤也在hello_world中已经介绍过了,下面从创建好hello_world模板开始
创建好vitis程序后回到vivado中,添加IP核
点击自动布线
点击环形箭头自动布局
右键端口axi ip的led输出端口,点击make E...引出端口
单击端口,修改端口名称
点击Add Sources,添加引脚约束文件
点击Create File新建设计文件,填入设计文件名称,添加完成点击Finish
打开开发板的原理图 “TQ15EG_MPSOC原理图 ” 在工程目录下的file文件夹中,搜索gpio_led,找到led灯连接的端口,从原理图中我们可以看到led所绑定的引脚,以及电压大小
打开引脚约束文件根据原理图添加引脚绑定与约束,pins.xdc文件我也会放在file文件夹中
点击Generate Bitstream 生成bit流文件
回到vitis中,修改helloworld里面的代码并编译,代码文件我也会提供在file文件中
在Vivado2023.1版本中使用axi外设后,想要在线调试需要进行额为的设置,在vitis中选择应用程序,右键在Run As中选择Run Configurations...
打开Target Setup窗口,取消勾选 Reset entire system ,设置完毕后点击Apply,有两个TAR...都需要取消勾选
选择应用程序的下一级目录,右键在Run As中选择Run Configurations...
打开Application窗口,取消勾选Reset Processor
打开Target Setup窗口,取消勾选Reset entire system,设置完毕后点击,完成设置
插好板子上的电源,JTAG和UART线,把启动模式设置为JTAG模式0000,开启电源开关
点击vitis下的Program Device,把bit流文件烧录进去
点击borwse...选择bit文件,文件在工程目录下的 ***.runs 文件夹,下的impl_1文件夹中,点击program进行烧录
烧录成功,板子上的DONE灯会亮起
右键项目点击1 Launch Hardware把程序烧录进去
观察开发板,4个led全亮