特权同学

玩转Zynq连载36——[ex55] 基于VIO在线板级调试的AXI GP总线读写实例

0
阅读(1684)

00.jpg

 

1概述

         本实例(zstar_ex55)在zstar_ex54的基础上,增加Virtual IO(VIO)实现在线板级调试的功能,意图让大家学会VIO这种基于FPGA的简单实用的在线板级调试手段。

 

2 PL代码中VIO的配置和例化

         PL工程中,需要将作为开关量控制或状态显示的信号连接到VIO IP核的接口中。具体可以参考文档《玩转Zynq-工具篇:基于Vivado的Virtual IO在线板级调试.pdf》。

 

6 嵌入式软件修改

         参考文档《玩转Zynq-工具篇:导出PS硬件配置和新建SDK工程.pdf》导出PS硬件工程,并打开EDK新建一个HelloWorld的模板工程。

         修改HelloWorld工程中的HelloWorld.c源码如下。每隔1s递增变量second,同时将该数据写入到地址0x43c00008寄存器中(即PL中的reg_second寄存器),同时每隔5s读取一次0x43c0000c地址的数据值(即PL中的reg_rdtest寄存器),并且打印读出的数据。

36-1.png

 

7 板级调试

         在Zstar板子上,设置跳线帽P3为JTAG模式,即PIN2-3短接。

         连接好串口线(USB线连接PC的USB端口和Zstar板的UART接口)和Xilinx下载线(下载器连接PC的USB端口和Zstar板的JTAG插座)。使用5V电源给板子供电。

         参考文档《玩转Zynq-工具篇:SDK在线运行裸跑程序.pdf》将当前工程产生的.bit文件和.elf文件在Zstar板上运行起来。

         打开PuTTY,设定好串口号和波特率115200,可以看到不断的打印如下的信息。

36-2.png

         VIO显示信号和PuTTY打印信息的比照调试,可以参考文档《玩转Zynq-工具篇:基于Vivado的Virtual IO在线板级调试.pdf》。

 

 

更多资料共享

腾讯微云链接:https://share.weiyun.com/5s6bA0s

百度网盘链接:https://pan.baidu.com/s/1XTQtP5LZAedkCwQtllAEyw

提取码:ld9c