一个AXI GPIO 模块有两个GPIO,分别是GPIO和GPIO2,也就是channel1和channel2,为 双向IO。 AXI GPIO的寄存器也不多,主要是两个channel 的数据寄存器GPIO_DATA和GPIO2_DATA,两个channel的方向控制GPIO_TRI和GPIO2_TRI,以 及全局中断使能寄存器GIER,IP的中断使能IP IER和中断状态寄存器ISR,具体的功能可以看 AXI GPI...
可用的 I/O 包括标准通信接口和通用输入 / 输出 (General Purpose Input/Output,GPIO),GPIO 可以用做各种用途,包括简单的按钮、开关和 LED。 在ZYNQ7000系列PS中除了上面提到的MIO和EMIO之外,还包括AXI_GPIO。 这三者关系如下: 其中MIO和EMIO是直接挂在PS上的GPIO。而AXI_GPIO是通过AXI总线挂在PS上的GPIO上。
AXI GPIO中断属于IRQ_F2P,而IRQ_F2P的中断类型只能设置为上升沿或者高电平,而不能是下降沿或者低电平。 3.软件配置过程 AXI GPIO的函数都在xgpio.h头文件里面,具体介绍如下 (1)初始化函数 intXGpio_Initialize(XGpio*InstancePtr,u16DeviceId); (2)设置端口是输入输出 voidXGpio_SetDataDirection(XGpio*Instan...
前面简单学习了关于GPIO的操作,本次将使用PL 端调用 AXI GPIO IP 核, 并通过 AXI4-Lite 接口实现 PS 与 PL 中 AXI GPIO 模块的通信。 开发环境 vivado18.3 SDK PYNQ-Z2 AXI_GPIO简介 AXI GPIO IP 核为 AXI 接口提供了一个通用的输入/输出接口。 与 PS 端的 GPIO 不同, AXI GPIO 是一个软核( Soft...
使用ZYNQ最大的疑问就是如何把PS和PL结合起来使用。本实验使用两个AXI GPIO的IP核,一个GPIO IP核连接4个LED灯;另一个GPIO IP核用于接收4个按键(拨码开关)的中断,通过该中断来控制相应LED灯的亮灭。 2. Vivado工程的编写 2.1 Block Design工程设计
这个实验是创建一个基于AXI总线的GPIO IP,利用PL的资源来扩充GPIO资源。 通过这个实验迅速入门开发基于总线的系统。 使用的板子是zc702。 AXI总线初识:# AXI (Advanced eXtensible Interface),由ARM公司提出的一种总线协议。 总线是一组传输通道, 是各种逻辑器件构成的传输数据的通道, 一般由数据线、地址线、 控制线...
1)打开“ps_hello”另存为一个名为“ps_axi_gpio”Vivado工程,表示PS通过AXI总线控制gpio “Create project subdirectory”勾选后会在目录下创建子目录,勾选“Include run results”会包含编译后的结果 2)双击xx.bd打开block design 添加AXI GPIO 3) 添加一个AXI GPIO的IP 核 ...
一款SOC的入门必然是GPIO的使用,而中断则是MCU能保证实时性的必杀武器。硬件调试难度高一直是FPGA的痛点,集成ARM的FPGA更是如此,cross-trigger调试有效地解决了这一问题,所以它也作为入门ZYNQ的必要技能。 二、硬件系统搭建 ZYNQ的三种GPIO分别是MIO、EMIO和AXI-GPIO。PS部分直接连接到芯片引脚的IO叫MIO,经过FPGA再...
Zynq Linux AXI GPIO是一种广泛应用于嵌入式系统开发中的技术,它能够实现在Zynq芯片上通过Linux系统控制外部GPIO设备的功能。通过AXI总线连接,Linux系统能够直接访问并控制外部GPIO设备,实现了嵌入式系统与外部硬件设备的无缝连接与交互。 在嵌入式系统开发中,GPIO(General-Purpose Input/Output)是一种非常重要的接口,能够...
1)xgpio_probe函数 当linux系统加载axi gpio驱动时,如果驱动match到相应的platform device,就会调用x...