ZYNQ vitis2024Flash Program

使用VITIS 2024 下载PS端代码到Flash中;

1 创建vivado工程

可参考其他教程或者按照下面的过程相对简略,也仅仅只是简单的simple。

① 创建block design

在这里插入图片描述

②配置IP

在这里插入图片描述
选择SPI和UART引脚,clock 、配置DDR等。
然后ctrl+s保存。

③valid Design

在这里插入图片描述

④生成顶层HDL

在这里插入图片描述
在这里插入图片描述

⑤ Export Hardware

在这里插入图片描述

2 创建vitis 工程

①打开vitis

打开vitis,可以通过vivado tool,也可直接使用双击打开软件
在这里插入图片描述

②open workspace

在某目录创建一个文件夹。打开软件后,选择open workspace,选择刚才创建的文件夹。
在这里插入图片描述

③创建platform

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
上面的.xsa是vivado最后到处的硬件设计。
然后next --> finish.
在这里插入图片描述这里注意选择Generate Boot artifacts。后面烧录程序时,就不需要单独创建FSBL了。
创建好的platform 如下
在这里插入图片描述
然后编译一下,看看是否有错,一般几乎不会错。
在这里插入图片描述

④创建application

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
选中刚才创建的platform–>next–>next–finish
在这里插入图片描述

⑤ biuld Application:

在这里插入图片描述
连好板子,然后点run或者debug,就可以运行或者调试程序了。

3 创建Boot image

在这里插入图片描述
点击"Create Boot image"后在弹出的对话框中,可以看到上面创建的platform和application中的编译文件已经自动加载进来了,可以点击查看详情,类型自动分配为Bootloader何datafile
在这里插入图片描述
在这里插入图片描述
可以点+后面添加其他的datafile,,但bootloader只有一个。
选择路径,然后create Image
在这里插入图片描述

4 Flash Program

在这里插入图片描述
在这里插入图片描述
这里会出现一个问题:
在这里插入图片描述
在这里插入图片描述
上面的乱码是不支持中文。
这里Program Flash cancel的原因暂未找到。
需要使用终端来烧录Flash。烧录Flash时需要注意板子的模式选择JTAG。
打开终端:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
复制上面的指令,然后粘贴到终端中,,删除无用的信息,然后回车

e:\ZYNQ\EmbedSystem\09_timer\sw>program_flash -f E:\ZYNQ\EmbedSystem\09_timer\sw\timer_intr_led\output\BOOT.bin -offset 0 -flash_type qspi-x4-single -fsbl E:\ZYNQ\Em
bedSystem\09_timer\sw\timer_platform\zynq_fsbl\build\fsbl.elf -url TCP:127.0.0.1:3121
'\gnu\microblaze\lin\bin\' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
'\gnu\microblaze\nt\bin\' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
'\gnuwin\bin\' 不是内部或外部命令,也不是可运行的程序
或批处理文件。

****** Program Flash
****** Program Flash v2024.1 (64-bit)
  **** SW Build (by xbuild) on 2024-05-19-14:06:15
  **** Start of session at: Mon Sep  2 15:29:14 2024
    ** Copyright 1986-2022 Xilinx, Inc. All Rights Reserved.
    ** Copyright 2022-2024 Advanced Micro Devices, Inc. All Rights Reserved.


Connected to hw_server @ TCP:127.0.0.1:3121

Target not specified. Selecting target_id 2 (arm_dap) by default.

Retrieving Flash info...

Initialization done
Using default mini u-boot image file - F:/DevelopSoft/Xilinx/Vitis/2024.1/data\xicom\cfgmem\uboot\zynq_qspi_x4_single.bin
BOOT_MODE REG = 0x00000000
Downloading FSBL...
Running FSBL...
Finished running FSBL.
READ: ARM_PLL_CFG (0xF8000110) = 0x000FA220
READ: ARM_PLL_CTRL (0xF8000100) = 0x00028008
READ: ARM_CLK_CTRL (0xF8000120) = 0x1F000200
READ: IO_PLL_CFG (0xF8000118) = 0x000FA240
READ: IO_PLL_CTRL (0xF8000108) = 0x00036008
Info:  Remapping 256KB of on-chip-memory RAM memory to 0xFFFC0000.
MASKWRITE: addr=0xF8000008, mask=0x0000FFFF, newData=0x0000DF0D
MASKWRITE: addr=0xF8000004, mask=0x0000FFFF, newData=0x0000767B


U-Boot 2024.01-07119-gd02ba93-dirty (Mar 21 2024 - 01:38:17 +0530)

Model: Zynq CSE QSPI SINGLE Board
DRAM:  256 KiB
WARNING: Caches not enabled
Core:  8 devices, 7 uclasses, devicetree: embed
Loading Environment from <NULL>... OK
In:    dcc
Out:   dcc
Err:   dcc
Zynq> sf probe 0 0 0
SF: Detected w25q128 with page size 256 Bytes, erase size 64 KiB, total 16 MiB
Zynq> Sector size = 65536.
f probe 0 0 0
Performing Erase Operation...
sf erase 0 20000
SF: 131072 bytes @ 0x0 Erased: OK
Zynq> Erase Operation successful.
INFO: [Xicom 50-44] Elapsed time = 1 sec.
Performing Program Operation...
0%...sf write FFFC0000 0 10000
device 0 offset 0x0, size 0x10000
SF: 65536 bytes @ 0x0 Written: OK
Zynq> 100%
sf write FFFC0000 10000 F218
device 0 offset 0x10000, size 0xf218
SF: 61976 bytes @ 0x10000 Written: OK
Zynq> Program Operation successful.
INFO: [Xicom 50-44] Elapsed time = 1 sec.

Flash Operation Successful

over

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值