威视锐ZYNQ开发板-ZingSK入门设计--Hello_led

2020-02-24 20:30发布

实验概述
ZingSK开发套件是基于赛灵思最新的ZC7Z020 EPP芯片而设计的开发平台。该套件主要由ZingSom核心模块和ZingStarter底板组成,其主控芯片为ZC7Z020 EPP芯片。它将ARM®处理系统和与Xilinx 7系列可编程逻辑完美地结合在一起,使用户可以创建独特而强大的设计。
本实验教程目的在于让用户快捷高效地熟悉和使用ZingSK系列可扩展处理平台,从而方便用户自己在该平台上进行相关的开发,提高成本效益,缩短研发时间。
实验说明
本次实验主要是通过详细介绍如何使用Xilinx ISE集成开发环境(14.4及以上版本)设计并建立一个sw_pb_led的工程,并在ZingSK开发套件上实现通过按键或者拨码开关来控制小灯的功能。
本实验的硬件搭建和软件设计比较简单。通过此次实验可以让用户熟悉ZYNQ嵌入式Soc的开发流程,熟悉Xilinx ISE集成开发环境,为后续的实验打下基础。本次实验可以使用户初步掌握以下技能:
1) 熟悉Xilinx ISE集成开发环境下PlanAhead、XPS、SDK软件的使用;
2) 学习和掌握利用ZingSK套件进行ZYNQ Soc嵌入式开发的流程;
3) 了解ZingSK开发板中相关硬件的原理和特点;
4) 根据建立的工程可以在ZingSK开发板上进行sw_pb_led的结果验证。
实验环境
要进行此次实验,用户需要准备好以下两方面的条件:
硬件平台:
PC机1台;ZingSK开发套件1套;Red-Cable-USB下载电缆1套;
USB_Uart转串口电缆1条;电源适配器(6V 3A)1个。
软件环境:
Windows7+Xilinx ISE 14.4(或以上版本)集成开发环境+putty串口调试终端。
实验步骤
用户可根据下面步骤进行操作,学习使用Xilinx ISE集成开发环境建立一个sw_pb_led工程的开发流程。
(1)在windows界面单击开始--->所有程序--->Xilinx Design Tools--->ISE Design Suite 14.4--->PlanAhead进入PlanAhead开发环境,如图1所示。

图1 PlanAhead开发环境界面
(2)单击 Create New Project,开始新建工程向导,如图2所示。

图2 新建工程向导
(3)单击Next,进入工程建立对话框,输入要建立的工程名称,并选择工程所在的路径,如图3所示。

图3 输入工程名并选择其所在路径
(4)单击Next,进入工程类型选择,这里选择新建RTL级工程,并且不指定源文件。如图4所示。

         
图4 工程类型的选择
(5)单击Next,进入芯片选型对话框,按照图5进行芯片选型。

图5 芯片选型
(6)单击Next,进入工程结束阶段,这个对话框总结了我们建立工程时的相关工程参数,如图6所示。

图6 新建工程总结
(7)单击Finish,完成工程新建,进入工程设计界面,在工程设计界面Project manager工程管理中单击Add Sources添加和创建工程源文件,如图7所示。

图7 在工程管理界面添加源文件
(8)单击Add Sources选项后进入向导,选择红 {MOD}框区内的选项,添加或创建嵌入式源文件,如图8所示。

图8 添加或创建嵌入式源文件
(9)单击Next,创建一个嵌入式的源文件,并键入名称为system,如图9所示。

图9 创建一个嵌入式源文件system
(10)单击OK,Finish,创建了一个嵌入式源文件,此时软件自动连接到XPS软件的启动界面,在完全启动XPS软件前会弹出一个对话框询问是否要添加Processing System7 instance到系统中,这时单击Yes即可。如图10所示。

图10 添加Processing System7 instance
(11)单击Yes后,进入XPS软件界面,如图11所示。

图11 XPS软件界面
(12)在XPS软件界面下,我们可以根据用户需求,定制相应的系统。这里要实现按键拨码控制小灯的功能,首先我们对PS进行配置:
Ø 时钟配置:可根据硬件资源情况作相应的修改,我们根据ZingSK开发板的硬件资源,对时钟做如下配置,单击红 {MOD}框区图标,如图12.1所示。

图12.1 选择时钟配置
进行时钟配置,配置后单击红 {MOD}框区图标可对配置的时钟进行有效校验,确保时钟锁相环能够分出有效的时钟。校验完毕后单击OK,如图12.2所示。

图12.2 时钟配置及校验
Ø MIO外设配置:单击I/O Peripherals选项,按照图12.3对MIO外设配置,这里根据ZingSK套件的硬件信息配置UART0,其它保持默认即可。配置完毕后单击Close。

图12.3 MIO外设配置
然后在Genernal Settings选项设置串口的波特率。



图12.4 设置串口波特率
Ø DDR配置:单击Memory Interfaces进行DDR的配置,如图13所示。

图13 DDR配置
(13)然后在IP Catalog中双击AXI General Purpose IO添加到系统中去,如图14所示。

图13 添加AXI General Purpose IO
(14)在该IP配置框中按红 {MOD}框区进行配置,配置完毕后单击OK,如图15.1
所示。

图14.1 IP核的配置
然后将该IP通过AXI总线与处理器连接,如图15.2进行选择,然后单击OK。

图14.2 选择该IP的连接
(15)在Ports 项中对axi_interconnect_1进行一下配置,如图15.1和图15.2所示。

图15.1 axi_interconnect_1的时钟配置

图15.2 axi_interconnect_1的复位配置
(16)为了保证模块时钟同步,processing_system7_0的AXI clock也需要连接到FCLK_CLK0上,如图16所示。

图16 processing_system7_0的AXI clock配置
(17)继续展开sw_pb_led项,分别对该IP进行时钟和引脚配置。其中时钟配置如图17.1所示,引脚配置如图17.2和图17.3所示。

图17.1 sw_pb_led的时钟配置

图17.2 sw_pb_led的引脚配置

图17.3 sw_pb_led的引脚配置
然后修改外部信号的管脚名称,如图17.4所示。


图17.4 修改外部管脚名称
(18)选择Addresses项,可以在这里查看到相关外设的地址分配,用户可以在这里对外设地址空间的大小进行配置,配置完成后,单击红 {MOD}区域按钮Generate Address就可以分配相关外设地址空间。如图18所示。

图18 外设地址的分配及产生
(19)配置完毕后,单击Project ---> Design Rule Check进行DRC检查,检查无误后,选择File---> Exit 来退出XPS,返回到PlanAhead 开发环境。
(20)这时,一个嵌入式系统硬件已基本搭建完成。接下来需要我们进行顶层文件的创建以便PlanAhead工具可以进行分析、综合、布局布线,最终产生FPGA配置文件bit文件。首先,我们需要对综合、仿真、IP相关的选项进行配置,这里我们选择默认就可以了,如需修改,在Project Setting选项中进行设置。
(21)工程设置完毕后,产生顶层文件,如图19所示,

图19 产生顶层文件
(22)顶层文件产生后,需要添加ucf约束文件,具体操作如下图所示,其中图2.20.1为启动添加源文件向导;图2.20.2为选择添加或创建约束文件选项;图2.20.3为创建新的约束文件并命名为sw_pb_led;图2.20.4为编辑约束文件。

图20.1 启动添加源文件向导

图20.2 选择添加或创建约束文件选项

图20.3 创建约束文件并命名为sw_pb_led


图20.4 编辑约束文件
(23)完成上述操作后,根据图21生成FPGA可执行文件bit文件。

图21 实现后生成编程文件bit文件
(24)当生成bit文件后,会出现编译成功的提示信息。如图22所示。

图22 成功产生bit文件
(25)然后就要把生成硬件文件和相关信息一同导出到SDK下,如图23.1和23.2所示。

图23.1 导出生成的硬件编程文件

图23.2 选择全部三项
(26)导出并启动SDK软件,进入软件编程界面,如图24所示,

图24 进入SDK界面
(27)进入SDK界面后,单击File--->New--->Xilinx Board Support Package,进入创建BSP对话框,按照图25.1键入工程名称后,单击Finish,然后在弹出的图25.2中直接单击OK即可。

图25.1 键入工程名称

图25.2 BSP设置
(28)等待BSP库编译完毕后,单击File--->New--->Xilinx C Project,创建sw_pb_led_app应用程序,并指定好该应用程序的BSP库。具体操作如图26.1。选择好后,单击Next进入图16.2,选择要创建的模板,单击Finish。

图26.1 创建sw_pb_led_app应用程序

图26.2 模板选择
(29)之后我们按照图27.1展开sw_pb_led_app工程文件夹,双击testperiph.c文件,按照图27.2可查看和修改源代码。

图27.1 打开testperiph.c文件查看和修改源码

图27.2 查看和修改源代码
(30)修改完成后保存,然后右键sw_pb_led_app工程文件夹,单击Generate Linker Script产生编译器脚本。如图28所示,配置好后单击Generate即可。

图28 产生编译器脚本

(31)下面主要介绍如何通过JTAG接口配置ZYNQ芯片的方法。

         

         
第一步,设置启动方式跳线为JTAG模式,并且连接好JTAG下载电缆,如图29.1所示。


图29.1 JTAG跳线设置和连接

         
给板卡供电,电源使用6V 3A的直流电源,如图29.2所示。

图29.2板卡上电
第二步,然后配置FPGA的bit文件,如图29.3所示。


图29.3 配置FPGA bit文件
当bit文件配置完毕后,FPGA_DONE信号会被拉高,DC1灯熄灭。
第三步,下载ARM应用程序,如图29.4所示。


图29.4 下载ARM应用程序
当配置完应用程序后,用户可以通过按键或者拨码来观察实验现象。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。