被zynq的GPIO唬住,告诉你zynq的3种GPIO

时间:2025-05-02  作者:Diven  阅读:0

学了zynq一段时间,一上来的时候就被zynq的GPIO唬住了,实在没搞清楚zynq的GPIO怎么回事,一会这样,一会那样,最后才慢慢发现zynq至少有3种GPIO可以调用。难怪我觉得每篇介绍GPIO的博客说的有一些不一样呢。

被zynq的GPIO唬住,告诉你zynq的3种GPIO

我们先看有哪三种GPIO:MIO、EMIO、AXI_GPIO。其中MIO和EMIO是直接挂在PS上的GPIO。而AXI_GPIO是通过AXI总线挂在PS上的GPIO上。

我们先看一下MIO和EMIO:下图EMIO和MIO的结构。其中MIO分布在BANK0,BANK1,而EMIO则分布在BANK2、BANK3。注意一下几项:

首先、MIO在zynq上的管脚是固定的,而EMIO,是通过PL部分扩展的,所以使用EMIO时候需要在约束文件中分配管脚,所以设计EMIO的程序时,

需要生成PL部分的bit文件,烧写到FPGA中。

其次、由下图可以看出MIO共占54bit,而EMIO占64bit。其中MIO占用IO号为0-53。而EMIO占用IO号为54-117。

再者、无论是EMIO还是MIO都属于PS上的IO,直接由PS操作。在调用头文件,只调用#include “xgpiops.h”即可,而在调用AXI_GPIO时,则需要#include “xgpio.h”。

最后、在设计好bd文件后、系统会自动在路径:。.standalone_bsp_0ps7_cortexa9_0include生成 xparameters.h 文件。我们可以在

xparameters.h文件中查看我们在bd设计时添加的外设ID。例如我们添加了EMIO,可以查到到该IO的地址和ID号。

#define XPAR_PS7_GPIO_0_DEVICE_ID 0

#define XPAR_PS7_GPIO_0_BASEADDR 0xE000A000

#define XPAR_PS7_GPIO_0_HIGHADDR 0xE000AFFF

再举例添加了两个AXI_GPIO,例化为BTNS_4BIT和SW_4BIT

#define XPAR_XGPIO_NUM_INSTANCES 2

#define XPAR_BTNS_4BIT_BASEADDR 0x41210000

#define XPAR_BTNS_4BIT_HIGHADDR 0x4121FFFF

#define XPAR_BTNS_4BIT_DEVICE_ID 0

#define XPAR_BTNS_4BIT_INTERRUPT_PRESENT 0

#define XPAR_BTNS_4BIT_IS_DUAL 0

#define XPAR_SW_4BIT_BASEADDR 0x41200000

#define XPAR_SW_4BIT_HIGHADDR 0x4120FFFF

#define XPAR_SW_4BIT_DEVICE_ID 1

#define XPAR_SW_4BIT_INTERRUPT_PRESENT 0

#define XPAR_SW_4BIT_IS_DUAL 0

再来看一下,AXI_GPIO相当于GPIO的IP核,我们调用时是占用相应AXI总线地址空间,如下图,占用地址为0x41200000和0x41210000

猜您喜欢

热敏NTC(负温度系数)电阻是一种温度升高而阻值降低的电子元件,应用于温度测量、温度补偿、过温保护等领域。了解热敏NTC电阻的阻值与温度之间的关系,对于设计温度...
2025-03-17 00:31:10

引言光电轴角编码器是一种采用光电方法,将机械转角转换成数字电信号输出的数字测角装置。它可以和显示装置或计算机相连,实现动态测量和实时控制。也可以利用它实现直线...
2020-08-11 17:33:00

螺丝刀是常见的手动工具,主要用于拧紧或松开螺丝。作用不可小觑,应用于家庭、工业和维修等多个领域。使用螺丝刀可以轻松地组装和拆卸家具、家电,甚至进行小型的电子设备...
2017-05-18 00:00:00

盆和托盘是我们日常生活中常见的容器,但定义和用途却各有不同。盆通常是指具有较深底部和较高边缘的容器,主要用于盛放液体或固体物品,如洗菜、泡水等。盆的设计使其能够...
2021-02-02 00:00:00

22R0贴片电阻表示阻值为22欧姆,精度为±0%。 22R代表阻值22欧姆,后面的0代表精度。这意味着该电阻的实际阻值在22欧姆左右,误差范围非常小,几乎可以忽...
2024-11-29 10:26:05

电子元器件中,电容器是重要的组成部分。独石电容和瓷片电容是常见的电容类型。有各自特点和应用。本文将探讨这两种电容的不同之处。定义不同独石电容是由单个陶瓷材料制成...
2025-04-12 09:01:43

贴片电阻R220的阻值为22欧姆。在电子电路中,贴片电阻通常用三位数字代码来表示阻值。对于R220,前两位数字「22」代表有效数字,第三位数字「0」代表乘数,也...
2024-11-26 11:29:47

引言随着人工智能和5G的兴起,数据处理对芯片的算力和带宽要求更高。为了布局未来,助力人工智能和5G,赛灵思也推出了自己的FPGA加速芯片-ACAP。ACAP是...
2022-07-07 09:17:00

1206贴片电阻是一种常用的电子元件,因其尺寸为1.2mm x 0.6mm而得名。了解其关键参数对于正确选择和使用至关重要。本文将简要介绍1206贴片电阻的主要...
2025-04-14 15:03:48

电子元件中,二极管是基础而重要的元件,应用于整流、开关和信号处理等领域。在众多的二极管类型中,肖特基二极管和普通二极管是常见的两种。尽管在功能上有相似之处,但在...
2025-03-28 19:30:02