GPIO是一个外设最主要的功能:通过MIO观测【input】(按键按下,引脚上电平的变化,从而观测到按键的状态)和控制【output】(控制引脚上的高低电平从而控制LED的亮灭)54个引脚(provides software with observation and control of up to 54 device pins via the MIO module)【MIO是上图GPIO左边连接的】 MIO(多路复用I...
类似MIO方式(都为PS部分GPIO操作),设置为输出并设置输出使能,但要注意这里的GPIO号是从54开始的3个。 IP方式实现GPIO vivado中zynq设置如下图 图中可知GPIO中MIO和EMIO都不选择,但要打开M_AXI_GP接口(这里选择M_AXI_GP0)和复位管脚,如下图 当然用到了PL部分逻辑则至少需要一个时钟输出到PL部分,这里选择FCLK_...
二、EMIO方式实现GPIO vivado中zynq设置如下图: 图中可知GPIO中选择使用EMIO,并选择位宽(这里例子中选择3);其vivado中连接如下图: 上图可知除了FIXED IO和DDR接口外,还多了3个3对(一个输入,一个输出和一个输出使能)GPIO管脚。 不同于MIO,这里三个IO管脚(一个输入,一个输出和一个输出使能在自动生成的顶层模...
而AXI_GPIO是通过AXI总线挂在PS上的GPIO上。 我们先看一下MIO和EMIO:下图EMIO和MIO的结构。其中MIO分布在BANK0,BANK1,而EMIO则分布在BANK2、BANK3。 注意一下几项: 首先、MIO在zynq上的管脚是固定的,而EMIO,是通过PL部分扩展的,所以使用EMIO时候需要在约束文件中分配管脚,所以设计EMIO的程序时,需要生成PL部分...
status = XGpioPs_CfgInitialize(&xgpio, xgpio_config, xgpio_config->BaseAddr); if(status!=XST_SUCCESS) return XST_FAILURE; 后面就是设置引脚工作模式: 这里的引脚号从54开始,因为从54后才是EMIO引脚: 0—53是MIO,53—...是EMIO。 之后点灯就可以了。在运行之前先下载比特流文件到FPGA,另外这个黑金...
ZYNQ的三种GPIO分别是MIO、EMIO和AXI-GPIO。PS部分直接连接到芯片引脚的IO叫MIO,经过FPGA再连接到引脚的是EMIO。EMIO可以通过硬件约束指定不同的端口号和电压标准,提高了ARM IO的灵活性。而AXI-GPIO相当于是对ARM IO的补充,通过调用AXI-GPIO IP核与外部通信。以下通过一个实例来说明三种IO的使用方式。
//初始化GPIO驱动 XGpioPs_CfgInitialize(&Gpio, ConfigPtr,ConfigPtr->BaseAddr); //把gpio的方向设置为输出(0:输入,1:输出) XGpioPs_SetDirectionPin(&Gpio, MIO52_LED, 1); XGpioPs_SetDirectionPin(&Gpio, EMIO_78, 1); //设置输出使能(0:关闭/1:打开) ...
ZYNQ 共有三种GPIO:MIO、EMIO、AXI_GPIO。 Ug585 MIO & EMIO 1、MIO multiuse I/O,多功能IO接口,分配在 GPIO 的 Bank0 和Bank1,属于Zynq的PS部分。在芯片外部有54个引脚,这些引脚可以用在GPIO、SPI、UART、TIMER、Ethernet、USB等功能上,每个引脚都同时具有多种功能,故叫多功能。这些 IO 与 PS 直接相连。
GPIO的结构体系 zynq的GPIO,分为两种,MIO(multiuse I/O)和EMIO(extendable multiuse I/O)。 ZYNQ的GPIO由4个BANK组成,其体系结构如图1所示。其中Bank0有32个GPIO引脚,Bank1有22个引脚,共54个GPIO引脚直接通过MIO连接到PS上,每个引脚可以通过寄存器的设置来确定该引脚为输入、输出或者中断,因为54个MIO引脚直接连接...
1.1 EMIO 和MIO的对比介绍 在ZYNQ SOC 入门基础(二)MIO 实验中讲解了MIO的使用,本节就来讲一下EMIO的使用。在实上一章中对ZYNQ的GPIO做了简单的介绍,ZYNQ的GPIO有(multiuse I/O)MIO和(extendable multiuse I/O) EMIO. MIO分配在Bank0和Bank1直接与PS相连,EMIO分配在Bank2和Bank3与PL部分相连。除了Bank1是...