玩转Zynq连载2——Zynq PS的GPIO外设

2020-01-26 17:38发布

00.jpg 1 概述         Zynq的GPIO外设控制最多54个MIO引脚,也可以通过EMIO接口连接到PL(最多支持64个输入引脚或128个输出引脚)。GPIO外设可以分为4个Bank。         GPIO外设的主要特性如下:         ● 54个GPIO信号通过MIO引脚引出。    ● 192个GPIO信号通过EMIO接口连接到PL引脚引出(64个输入引脚;128个输出引脚,其中64个实际输出引脚和64个输出使能引脚)。    ●每个GPIO都可以独立编程为输入、输出或中断接口。         ● 使能信号、位或bank为单位的数据写入操作、方向控制信号。    ● 每个GPIO都有可编程的中断控制         GPIO的功能框图如下所示。 2-1.png GPIO外设分为4个Bank。         ● Bank0由32位的MIO引脚pin[31:0]组成。    ● Bank1由22位的MIO引脚pin[53:32]组成。    ● Bank2由32位EMIO信号EMIO[31:0]组成。    ● Bank3由32位EMIO信号EMIO[63:32]组成。 2 GPIO内部结构         GPIO内部结构如图所示。 2-2.png          GPIO可以被配置为输入或输出信号。DATA_RO寄存器能够反馈当前GPIO的输入(OE信号为低)或输出(OE信号为高)状态值。通过MASK_DATA寄存器的设置,可以实现对一个bank中特定一个或多个GPIO的控制。         其它几个主要寄存器的功能如下。         ● DATA寄存器。当GPIO配置为输出时,该寄存器用于配置GPIO的输出电平值。该寄存器一次性写入所有32个GPIO的输出值;读取该寄存器时,返回的是写入的电平状态,并不一定是实际的电平状态。    ● MASK_DATA_LSW寄存器。该寄存器用于屏蔽不需要更新的DATA寄存器的低16位。    ● MASK_DATA_MSW寄存器。该寄存器用于屏蔽不需要更新的DATA寄存器的高16位。    ● DIRM寄存器。方向控制寄存器。该寄存器用于控制GPIO的输入输出方向。高电平表示输出,低电平表示输入。    ● OEN寄存器。输出使能。当GPIO配置为输出引脚,该寄存器有效。高电平表示输出使能,低电平表示输出关闭。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。