本次测试使用广州创龙开发板 TLZ7x-EasyEVM(基于Xilinx Zynq-7000 SoC高性能低功耗处理器,集成PS端单核/双核Cortex-A9 ARM + PL端 Artix-7 架构可编程逻辑资源;PS 端最高主频可达 866MHz;),芯片型号为 XC7020,如果芯片型号为 XC7Z010,操作方法类似。本次以加载 axi_gpio 裸机程序为例,例程功能:使用板子上的 3 个 PL 端按键与 3 个 PL 端 LED 进行实验,按键作输入,LED 作输出,通过读取按键的状态来控制LED。
1 打开 工程文件
用下载器连接开发板,拨码开关拨至 JTAG MODE 010101(1~6),开发板上电。双击 图标打开 Vivado 软件。在 Recent Projects 处可以看到之前创建的 Vivado 工程,点击打开一个工程。
如果没有创建 Vivado 工程,可以按照用户手册《Vivado 工程新建及使用》文档来创建一个 Vivado 工程,或者直接在已经创建好的工程存放路径下双击工程文件打开已经创建好的工程文件。
打开工程后如下:
2 配置存储设备
打开工程后,点击"PROGRAM AND DEBUG ->Open Hardware Manager->Open Target->Auto Connect"自动连接到本地硬件目标。
弹出如下界面。
点击硬件部件,选择"Add Configuration Memory Device"来添加配置存储设备。
TLZ7x-EasyEVM 核心板(SOM-TLZ7020 和 SOM-TLZ7010)的 QSPI FLASH 型号如下。
选择与上面 QSPI FLASH 对应的型号 S25FL256SAGNFI001。
点击 OK,对配置内存设备进行编程。
3 将 BOOT.bin 烧写到 到 QSPI FLASH
选择上面生成的 BOOT.bin(或者是已经改名字的 BOOT.BIN,名字不影响测试结果)。
Vivado 会先擦除 QSPI FLASH,再烧写裸机程序,擦除和烧写的过程需要一些时间,大概几分钟,如下 Vivado 在擦除 QSPI FLASH。
如下 Vivado 再将 BOOT.bin 烧写到 QSPI FLASH。
点击 OK 烧写完成。
4QSPI FLASH 启动 运行程序
烧写完成后,断电,拨码开关拨至 QUAD–SPI 启动方式 100101(1~6),再上电即可从 QSPI FLASH 加载程序。开发板断电后提示连接关闭,忽略此提示或者点击 OK 即可。
QSPI FLASH 启动后,可以看到开发板上 3 个 LED(LED2、LED3 和 LED4)点亮,可被KEY2、KEY3、KEY4 控制。按如上操作方法,按下 KEY2 后 LED2 灯灭,PL 端串口打印的数值变为 6;按下 KEY3 后 LED3 灯灭,PL 端串口打印的数值变为 5;按下 KEY4 后 LED4 灯灭,PL 端串口打印的数值变为 3。松开按下的按键后 PL 端串口打印数值变回原来的 7,对应的 LED 灯再次被点亮。