【zynq 7020 开发板教程】Flash程序固化

上篇文章主要分享了操作PS端的GPIO控制开发板上的LED灯,这篇文章分享如何把程序固化到开发板的外部Flash中,实现断电重启程序能够加载运行。

    首先我们在上篇工程中配置一路PS端的串口,使能串口是用来打印程序加载时的vlog信息。打开工程,双击ZYNQ7 Processing System IP核。

图片

    打开Peripheral I/O Pins选项,勾选UART 0选项,选择MIO[10]和MIO[11]对应的UART0,这里为什么要选择MIO[10]和MIO[11]对应的UART0呢?因为我们在硬件设计上,调试串口使用的就是MIO[10]和MIO[11]对应的UART0。

图片

图片

    UART0一端接的是ZYNQ器件,另一端接的是开发板上的type-c调试USB口,在开发板上做了JTAG和UART集成在一个FT2232芯片的调试电路,通过一根type-c线缆,既可以实现ZYNQ器件的程序下载,也可以实现串口调试信息的打印。

图片

    在ZYNQ7 Processing System IP核中选择完UART0以及对应的引脚后,点击Ok退出界面,然后点击导航栏左上角的保存按钮。回到PROJECT MANAGER界面,生成bit文件。

图片

    生成bit文件后,导出硬件配置。运行SDK软件。

图片

    在SDK软件中,更新硬件配置信息,弹出的对话框中选择最新导出的xxx.hdf文件。

图片

图片

    更新完硬件配置信息之后,双击打开bsp文件中的xxx.mss文件,重新生成bsp板级支持包。

图片

    等待生成编译成功之后,开始新建FSBL功能,该工程主要用在bootloader功能中。

图片

    输入FSBL工程的名称,然后点击Next。   

图片

    接下来我们选择官方的FSBL模板,然后点击Finish完成工程创建。

图片

    在FSBL工程中,我们需要手动修改一个fsbl_debug.h文件,双击打开该文件后,加入一段宏定义#define FSBL_DEBUG_INFO。然后保存重新编译FSBL工程。

图片

图片

    此时为了保证我们的点灯程序和FSBL程序编译的结果是最新的,点击导航栏的Project->Clean...,SDK软件会自动清除工程的编译结果并重新编译新的可执行文件。

图片

    编译完成生成新的可执行文件后,我们开始生成boot.bin文件。

图片

    首先输出文件路径我们选择ps_gpio_task下的Debug文件夹。

图片

    然后添加我们的可执行文件,首先添加fsbl的.elf文件。

图片

图片

图片

    然后添加我们在vivado中生成的bit文件。

图片

图片

    最后添加我们的ps_gpio_task.elf文件,该文件为我们最终执行的应用程序。

图片

图片

    最终文件全部添加完成后如下图所示,确认无误后,点击Create Image按钮,生成boot.bin文件。

图片

    生成完成后,我们开始下载boot.bin文件到Flash中。首先点击导航栏的Xilinx->Porgram Flash,Image File选择刚才生成的boot.bin文件,在刚才选择的Debug路径下。

图片

图片

    FSBL File选择fsbl工程Debug路径下的fsbl_task.elf文件。

图片

    整个配置界面如下图所示,Flash Type选择qspi-x4-single,勾选Blank check after erase和Verify after flash选项。开发板上电,插上type-c线缆,然后点击Programa按钮。

图片

    Flash下载成功后,SDK界面打印信息如下。

图片

    然后给开发板断电,把启动模式拨动到QSPI启动模式。

图片

    打开串口调试助手,波特率设置为115200,给开发板上电。串口调试助手会打印以下vlog启动信息。并且开发板上的LED灯会隔一秒闪烁一次。

图片

图片

    有时会出现Flash固化失败的问题,一般有两个思路解决,1,如果是首次烧写板子上的Flash器件,请将boot模式切换为JTAG,然后固化Flash程序;2,在电脑中添加环境变量:新建系统变量 变量名:XIL_CSE_ZYNQ_UBOOT_QSPI_FREQ_HZ 变量值:10000000。

    以上就是今天的主要分享,如何对zynq的Flash进行固化操作。

    本工作室推出的所有开发板,大家可加入下面所示微信群进行采购、讨论以及技术交流。大家可微信搜索“凌霄工作室”或者微信号“LingXiao_Studio”。

图片

    各位同仁需要该开发板的,可以联系凌霄工作室的市场销售:18691898395 史总。

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值