欢迎来到天天文库
浏览记录
ID:27515135
大小:704.50 KB
页数:12页
时间:2018-12-04
《zynq使用自带外设IP让ARM PS访问FPGA(八).doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、zynq使用自带外设IP让ARMPS访问FPGA(八) 参考超群天晴的博客,使用XPS为PS处理系统添加额外的IP。从IPCatalog标签添加GPIO,并与ZedBoard板子上的8个LED灯相连。当系统建立完后,产生bitstream,并对外设进行测试。以后还有一个很重要的自定义用户Ipcore设计,下个实验来做下这个(一开始以简单的led和sw为例)。这个实验就使用呢自带外设IP。 使用的平台是XPS14.2+SDK14.2 一硬件配置 1、启动xps创建工程CreateNewProjectUsingBaseSystemBuilder 创建工程。因为PS系统和
2、FPGA连接是采用AXI接口,因而选择内部互联类型(InterconnectType)为AXI。 选择设计平台为ZynqZC702 到外设配置界面,系统会默认有GPIO_SW和LEDs_4bits这两个外设,我们不需要,remove 2、添加AXIGPIO外设 进入主界面 工程建立后,在IPCatalog中,找到GeneralPurposeIO,找到AXIGPIO,双击添加到系统中。 修改元件实例化名称为axi_LED,这个名称就是将要实例化连接到PS的元件。将长度改为8,其他默认。 Ok后出现 点击ok, 点开BusInterf
3、aces标签,可以看到系统汇总现在有PS(这里是processing_systems7_0)、添加的外设axi_LDs和AXI内部互联总线axi_interconnet_1。可以看到对于axi_interconnet_1来说,PS是AXI主设备,外设是AXI从设备。 在Port标签,将IO_IF中的GPIO_IO设置为ExternalPorts,将Port名称改为LED。LED就是顶层对外的引脚名称,注意这里和参考博客不同。按照参考博客中的不能成功。 3、设定引脚约束 在project标签中,找到system.ucf约束文件, 4、点击GenerateBitS
4、tream,生成bitstream 5、将硬件配置导入到SDK,启动SDK。这里需要将bitstream和BMM文件同时包括到SDK中。 二、创建软件程序 使用新建工程向导。注意,这里使用工程模板为MemoryTests。 新建工程后,会有几个存储空间测试的文件,我们不需要,删掉。 修改main文件,内容如下 //@超群天晴#include#include“xparameters.h”#include“xil_types.h”#include“xstatus.h”#include“xil_testmem.h”#include“xgpio.h”#includ
5、e“platform.h” voidprint(char*ptr); intmain(){staTIcXGpioLED_Ptr;//定义GPIO指针intXStatus;//函数返回状态 init_platform(); print(“ZedBoardproject_7:PS_AXI_LEDr”);print(“xzy2013年09月18日18:12:31r”);注意下面一定要改名字哦,以前XPAR_AXI_LDS_DEVICE_IDXStatus=XGpio_IniTIalize(&LED_Ptr,XPAR_AXI_LED_DEVICE_ID);if(XST
6、_SUCCESS!=XStatus)print(“GPIOINITFAILEDr”); XGpio_SetDataDirecTIon(&LED_Ptr,1,0x00);//通道1;设置方向0输出1输入 XGpio_DiscreteWrite(&LED_Ptr,1,0xaa); cleanup_platform(); } 在下载软件程序前,需要将bitstream文件烧如FPGA,对FPGA进行配置。在工具栏中Xilinxtools->ProgramFPGA,也可以使用XPS中的DeviceConfiguraTIon->DownloadBitstream等其他配置F
7、PGA的方式。
此文档下载收益归作者所有