BANK0控制32个信号,BANK1控制22个信号,总共是MIO的54个引脚,BANK2和BANK3共能控制64个PL端引脚,每一组都有三个信号,输入EMIOGPIOI,输出EMIOGPIOO,输出使能EMIOGPIOTN,共192个信号。 下图为GPIO的控制,实验中会用到输出部分的寄存器,数据寄存器DATA,数据掩码寄存器MASK_DATA_LSW,MASK_DATA_MSW,方向控制寄存器DIR...
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引脚直接连接在PS上,像其他...
Bank0,Bank1通过MIO连接到PS的引脚,Bank2/Bank3通过EMO连接到PL 软件通过一组存储映射的寄存器来控制GPIO。 寄存器组 DATA RO.用来反映器件引脚的状态。 DATA,在GPIO被配置成输出的时候,该寄存器可以控制输出的数值 MASK DATA LSW, 用于屏蔽DATA的低16位 MASK DATA MSW, 用于屏敲DAIA的高16位DRM, DIRM,用于...
GPIO, 全称 General-Purpose Input/Output(通用输入输出),是一种软件运行期间能够动态配置和控制的通用引脚。 RK3288 有 9 组 GPIO bank: GPIO0,GPIO1, …, GPIO8。每组又以 A0~A7, B0~B7, C0~C7, D0~D7 作为编号区分(不是所有 bank 都有全部编号,例如 GPIO5 就只有 B0~B7, C0~C3)。 每个GPIO ...
gpio-controller;--表示gpioi是一个GPIO控制器。#gpio-cells = <2>;--表示GPIO有两个cell属性:第一个cell是GPIO在bank中的的编号;第二个cell表示GPIO的属性,GPIO_ACTIVE_HIGH(0)或GPIO_ACTIVE_LOW(1)。interrupt-controller; #interrupt-cells = <2>; ...
所有的 GPIO 在上电后的初始状态都是输入模式,可以通过软件设为上拉或下拉,也可以设置为中断脚,驱动强度都是可编程的,其核心是填充 GPIO bank 的方法和参数,并调用 gpiochip_add 注册到内核中。 本文以 GPIO0_B4 和 GPIO4_D5 这两个 GPIO 口为例写了一份简单操作 GPIO 口的驱动,在 SDK 的路径为:...
其核心是填充 GPIO bank 的方法和参数,并调用 gpiochip_add 注册到内核中。 使用 开发板有两个电源 LED 灯是 GPIO 口控制的,分别是: 从电路图上看,GPIO 口输出低电平时灯亮,高电平时灯灭。 另外,扩展槽上引出了几个空闲的 GPIO 口,分别是:
RK3288 有 9 组 GPIO bank: GPIO0,GPIO1, ..., GPIO8。每组又以 A0~A7, B0~B7, C0~C7, D0~D7 作为编号区分(不是所有 bank 都有全部编号,例如 GPIO5 就只有 B0~B7, C0~C3)。 每个GPIO 口除了通用输入输出功能外,还可能有其它复用功能,例如 GPIO5_B4,可以复用成以下功能之一: ...
GPIO是英文“general purpose I/O”的缩写,即通用的输入/输出。它是MPSOCPS中的一个外设,用于观测和控制器件引脚的状态。图2.1.1是GPIO的框图,从中我们可以看到GPIO分为6个Bank,其中Bank0、Bank1和Bank2连接到MIO;而Bank3、Bank4和Bank5连接到EMIO。 ...
引脚编号=控制寄存器的寄存器基数+控制引脚寄存器位数。 GPIO2_PC4 pin脚计算方法: bank = 2; //GPIO2_C4=> 2, bank ∈ [0,4]group = 2; //GPIO2_C4 => 2, group ∈ {(A=0), (B=1), (C=2), (D=3)}X = 4; //GPIO2_C4=>4, X ∈ [0,7]number = group * 8 + X = 2 *...