开发板环境:vivado 2017.1 ,开发板型号xc7z020clg400-1,这个工程主要功能是使用拔码开关 U20 的三个开关来触发 PL 中断,并且通过串口打印出已经触发的中断按键。


Step1 这是已经新建好的vivdao 工程 

MYIR-ZYNQ7000系列-zturn教程(7):pl_int


Step2 点击Flow Navigator 下的Create Block Desion新建一个Block Desion

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

在弹出的对话框中可以自己填写新建的Block Desion名称,我这里选择默认名称不更改,点击OK

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

已经新建好的Block Desion如下图所示

MYIR-ZYNQ7000系列-zturn教程(7):pl_int


Step 3 点击工作区的Add IP添加IP核,在弹出的搜索栏Search中输入zynq,发现可以搜到ZYNQ IP核,

双击这个ZYNQ核添加到工作区内

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

添加好的ZYNQ核如下图所示

MYIR-ZYNQ7000系列-zturn教程(7):pl_int


Step4 双击ZYNQ IP核添加tcl配置文件,然后点击OK(如果不知道怎样添加请参考hello_world工程里面有详细步骤)

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

配置后的ZYNQ核如下图所示

MYIR-ZYNQ7000系列-zturn教程(7):pl_int


Step 5 点击Run Block Automation进行自动布线

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

在弹出的对话框中点击OK

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

自动布线完成后如下图所示

MYIR-ZYNQ7000系列-zturn教程(7):pl_int


Step 6 再次点击工作区的Add IP添加IP核,在弹出的搜索栏Search中输入concat,将搜到的concat

双击这个ZYNQ核添加到工作区内

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

添加好的concat核如下图所示

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

双击这个concat核将Number of Ports设置为3,然后点击OK(这里只有三个中断输入所以设置为3)

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

用同样的方法在搜索栏Search中输入vector,将搜到的vector双击添加到工作区内

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

所要的核添加完成如下图所示

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

双击这个vector核将C_SIZE设置为1,然后点击OK

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

用同样的方法添加另外两个vector核,添加完成后如下图所示

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

按照下图中的接法将这几个IP核连接起来

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

再在这个OP引脚上右击选择Make Extermal将OP1的引脚引出来

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

用同样的方法将其它两个OP的引脚引出来,如下图所示

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

将第一个OP1引脚改名为SW1,将第二个OP1引脚改名为SW2,将第三个OP1引脚改名为SW3

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

引脚改完后如下图所示

MYIR-ZYNQ7000系列-zturn教程(7):pl_int


Step7  右击 design_1->Generate Ouput Products   生成综合文件

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

在弹出的对话框中点击Generate

MYIR-ZYNQ7000系列-zturn教程(7):pl_int


Step8 右击 design_1->Create HDL Wrapper  生成顶层文件

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

在弹出的对话框中点击OK

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

顶层文件生成后如下图所示

MYIR-ZYNQ7000系列-zturn教程(7):pl_int


Step9 将我提供网盘提供的工程的xdc文件复制到当前这个工程里面,如下图所示

MYIR-ZYNQ7000系列-zturn教程(7):pl_int


Step10 点击Generate Bitstream产生bit文件

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

点击Yes

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

点击OK

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

在弹出的对话框中可以看出bit文件生成成功 ,点击Cancel关闭对话框

MYIR-ZYNQ7000系列-zturn教程(7):pl_int


Step11 点击菜单栏上的 File->Export->Export Hardware 导出硬件配置文件

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

在弹出的对话框中勾选Include bitstream ,然后点击OK

MYIR-ZYNQ7000系列-zturn教程(7):pl_int


Step12 点击菜单栏上的 File->Launch SDK->OK启动SDK

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

点击OK

MYIR-ZYNQ7000系列-zturn教程(7):pl_int


Step13 点击菜单栏上的 File->New->Application Project新建工程新建一个fsbl

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

在弹出的对话框中填写fsbl

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

在工程模板中选择Zynq FSBL

MYIR-ZYNQ7000系列-zturn教程(7):pl_int


Step14   再次点击菜单栏上的 File->New->Application Project 新建工程 

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

在弹出的对话框中填写工程名为pl_int

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

在工程模板中选择Hello World

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

将网盘里提供的工程代码复制到这个新建的hello_world里面如下图所示

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

按住ctrl键点击这个XPAR_PS7_SCUGIC_0_DEVICE_ID ,然后进入这个xparameters.h这个文件

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

在这个xparameters.h文件中添加将这三个 :

#define XPAR_FABRIC_UTIL_VECTOR_LOGIC_0_RES_INTR 61
#define XPAR_FABRIC_UTIL_VECTOR_LOGIC_1_RES_INTR 62

#define XPAR_FABRIC_UTIL_VECTOR_LOGIC_2_RES_INTR 63

中断添加进去,然后按ctrl+S保存

MYIR-ZYNQ7000系列-zturn教程(7):pl_int


Step15  右击 pl_int工程->Create boot Image, 生成BOOT.bin启动文件

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

在弹出的对话框中点击Create Image 

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

将生成的BOOT.bin文件拷贝到SD卡插到开发板运行

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

可以看到当我们拨动拨码开关就会产生中断,并且串口会打印出相应的按键

MYIR-ZYNQ7000系列-zturn教程(7):pl_int

链接:http://pan.baidu.com/s/1hsL7afi 密码:a9cb


相关文章:

  • 2021-05-02
  • 2022-01-22
  • 2021-10-27
  • 2022-12-23
  • 2021-04-05
  • 2021-09-27
  • 2022-12-23
  • 2021-05-11
猜你喜欢
  • 2021-06-18
  • 2022-01-20
  • 2021-04-03
  • 2021-06-08
  • 2021-10-29
  • 2021-12-05
  • 2021-05-20
相关资源
相似解决方案