本例程使用SD卡启动模式
创建工程模板在hello_world中已经介绍过了,这里直接从配置完zynq ip核开始
点击加号,搜索GPIO,双击添加AXI GPIO IP核
双击 GPIO IP 核进行设置,设置为输出模式,位宽为4,设置完成后点击OK
选中IP核的输出引脚,右键点击Make External引出引脚
选中引脚,修改引脚名称
点击自动布线,点击OK开始布线
右键设计模块生成HDL文件
第一个选项是生成可编辑的HDL文件,第二个选项则不可编辑,这里默认即可
点击Add Sources,添加引脚约束文件
点击Create File新建设计文件,填入设计文件名称,添加完成点击Finish
打开开发板的原理图 “TQ15EG_MPSOC原理图 ” 在工程目录下的file文件夹中,搜索gpio_led,找到led灯连接的端口,从原理图中我们可以看到led所绑定的引脚,以及电压大小
打开引脚约束文件根据原理图添加引脚绑定与约束,pins.xdc文件我也会放在file文件夹中
点击Generate Bitstream 生成bit流文件
Vivado的工程完成了,接下来是创建vitis工程,其步骤也在hello_world中已经介绍过了,下面从创建好hello_world模板开始
修改helloworld中的代码并编译,在工程目录下的file文件夹中我也提供了hello_world.c文件
我们可以在vivado中看到AXI外设的基地址,打开Address Editor窗口,Name列下找到IP核的名称,查看基地址,我们只需要操作其地址就可以给led引脚传输信号
查看15eg的原理图,可以看到当引脚输出高电平时LED灯亮,所以这里的代码是让4个led小灯都亮起
这里我们使用SD卡启动,所以需要生成BOOT.bin文件,右键工程,点击Create BOOT Image
点击Browse...修改BOOT.bin文件的保存路线
vitis会自动帮我们添加fsbl文件和elf文件,我们只需要再添加bit文件就可以了,bit文件在工程目录下的 ***.runs 文件夹,下的impl_1文件夹中,点击Create Image生成BOOT.bit文件
需要拿一个SD卡,把BOOT.bin文件拷贝到其最外层的目录中,把板子插好电压已经和带有BOOT.bit文件的SD卡,把板子启动模式设置为1110,也就是SD卡启动。
打开板子的电源,等待配置,配置后DONE亮起,查看程序运行结果