zynq PS端 GPIO

记录一下PS端 GPIO

1. GPIO 简介

        ZYNQ PS 中包含一组丰富的外设,用于和外部设备进行通信。ZYNQ 的 IO 包括对外连接的 GPIO 和内部 PS PL 通信的 AXIO。其中对外的 GPIO 又分为两种:MIO EMIO

        MIO 和 EMIO 只是 GPIO 信号的两种接口,MIO 直连到PSEMIO 则是 PS 扩展到 PL,从 PL 接出的 I/OEMIO 依然属于 PS,只是连接到了 PL,再从 PL 输出信号。所以 MIO 不需要管脚约束,而 EMIO 需要管脚约束。

        MIO I/O 外设连接的基础,软件程序将 I/O 信号路由到 MIO 引脚。由于MIO 引脚数量有限,I/O 外围信号也可以通过 EMIO 接口路由到 PL(包括 PL 设备引脚),用于访问更多的设备引脚(PL引脚)和允许 I/O 外设控制器接口到 PL中的用户逻辑,如下图所示。

        I/O控制器信号的 I/O 复用是不同的,也就是说,一些 IOP I/O Peripheral)信号仅在 MIO 接口上可用,如 USB 外设信号;一些信号在 MIO EMIO 接口上可用,如 UART 信号;而一些接口信号只能在 EMIO 接口上访问,如 UART的 Modem signals 接口信号。 I/O 复用如下图   所示。

2. GPIO 通道

INT_MASK
This register is read-only and shows which bits are currently masked and which are un-masked/enabled.
这个寄存器是只读的,并显示哪些位当前被屏蔽,哪些位未被屏蔽/启用。
INT_EN
Writing a 1 to any bit of this register enables/unmasks that signal for interrupts. Reading from this register returns an unpredictable value.
将1写入此寄存器的任意位,可启用/揭示中断信号。
从这个寄存器中读取会返回一个不可预测的值。
INT_DIS
Writing a 1 to any bit of this register masks that signal for interrupts.
Reading from this register returns an unpredictable value.
对这个寄存器的任意一点写入1都会屏蔽中断的信号。
从这个寄存器中读取会返回一个不可预测的值。
INT_STAT
This registers shows if an interrupt event has occurred or not.
Writing a 1 to a bit in this register clears the interrupt status for that bit.
Writing a 0 to a bit in this register is ignored.
此寄存器显示是否发生了中断事件。
在这个寄存器中写入一个1到一个位可以清除该位的中断状态。
在此寄存器中写入0到某个位将被忽略。
INT_TYPE
This register controls whether the interrupt is edge sensitive or level sensitive.
此寄存器控制中断是对边缘触发还是对电平触发。
INT_POLARITY
This register controls whether the interrupt is active-Low or active High (or
falling-edge sensitive or rising-edge sensitive).
此寄存器控制中断是低电平还是高电平(或下降缘触发或上升缘触发)。
INT_ON_ANY
If INT_TYPE is set to edge sensitive, then this register enables an interrupt event on both rising and falling edges.
This register is ignored if INT_TYPE is set to level sensitive.
如果INT_TYPE被设置为边缘触发,那么将在上升和下降边缘启用中断事件。
如果将INT_TYPE设置为电平触发,则将忽略此寄存器。
DATA_RO
This register enables software to observe the value on the device pin. If the GPIO signal is configured as an output, then this would normally reflect the value being driven on the output. Writes to this register are ignored.
Note: If the MIO is not configured to enable this pin as a GPIO pin, then DATA_RO is unpredictable because software cannot observe values on non-GPIO pins through the GPIO registers.
此寄存器使软件能够观察设备引脚上的值。如果GPIO信号被配置为一个输出,那么这通常会反映在输出上被驱动的值。写入此寄存器将被忽略。
注意:如果MIO没有配置为启用此引脚作为GPIO引脚,那么DATA_RO是不可预测的,因为软件无法通过GPIO寄存器观察非GPIO引脚上的值。
DATA
This register controls the value to be output when the GPIO signal is configured as an output. All 32 bits of this register are written at one time. Reading from this register returns the previous value written to either DATA or MASK_DATA_{LSW,MSW}; it does not return the current value on the device pin.
此寄存器控制当GPIO信号配置为输出时要输出的值。这个寄存器的所有32位都是一次写入的。从此寄存器读取将返回先前写入DATA或MASK_DATA_{LSW,MSW}的值;它不返回设备引脚上的当前值。
MASK_DATA_LSW
This register enables more selective changes to the desired output value.
Any combination of up to 16 bits can be written. Those bits that are not written are unchanged and hold their previous value.
Reading from this register returns the previous value written to either DATA or MASK_DATA_{LSW,MSW}; it does not return the current value on the device pin. This register avoids the need for a read-modify-write sequence for unchanged bits.
此寄存器允许对所需的输出值进行更多选择性的更改。最多16位的任何组合。那些未写入的位保持不变,并保持它们以前的值。从此寄存器读取将返回先前写入DATA或MASK_DATA_{LSW,MSW}的值;它不返回设备引脚上的当前值。这个寄存器避免了对不变的位: 读-修改-写。
MASK_DATA_MSW
This register is the same as MASK_DATA_LSW, except it controls the upper16 bits of the bank.
这个寄存器与MASK_DATA_LSW相同,只是它控制了bank的上16位。
DIRM
Direction Mode. This controls whether the I/O pin is acting as an input or an output.
Since the input logic is always enabled, this effectively enables/disables the output driver. When DIRM[x]==0 , the output driver is disabled.
方向模式。它控制输入/输出引脚是作为输入还是作为输出。
由于输入逻辑总是启用的,因此这可以有效地启用/禁用输出驱动程序。当DIRM[x]==0时,输出驱动程序被禁用。
OEN
Output Enable. When the I/O is configured as an output, this controls whether the output is enabled or not. When the output is disabled, the pin is 3-stated. When OEN[x]==0 , the output driver is disabled.
Note: If MIO TRI_ENABLE is set to 1 , enabling 3-state and disabling the driver, then OEN is
ignored and the output is 3-stated.
输出启用。当I/O配置为输出时,它控制是否启用输出。当输出被禁用时,引脚是三态。当OEN[x]==0时,输出驱动程序被禁用。
注意:如果MIO TRI_ENABLE设置为1,启用三态并禁用驱动程序,则OEN将被忽略,输出为三态。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/844251.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从零到一建设数据中台 - 数据可视化

从零到一建设数据中台(八)- 数据可视化 一、数据可视化大屏 数据可视化是借助于图形化手段,清晰有效地传达与沟通信息。 将一些业务的关键指标通过数据可视化的方式展示到一块或多块LED大屏上,以大屏为主要展示载体的数据可视化设计。 在数据可视化大屏构建过程中,为了…

排序(前篇)

1.排序的概念及其运用 2.插入排序的概念及实现 3.希尔排序的概念及实现 4.选择排序概念及实现 总代码(对比各个排序在大量的数据情况排序所化的时间): 1.排序的概念及其运用 1.1排序的概念 排序:所谓排序,就是使…

Jetpack架构组件_4. 数据绑定库页面传递数据

本篇介绍数据源从activity_main(1级页面)传递给include布局(2级页面)。 1.实现步骤 step1.修改build.gradle文件 修改app模块下的build.gradle文件,增加如下内容: dataBinding {enabled true} step2.创建…

java版本数字化时代的智能ERP管理系统:引 领企业高 效管理与创新发展

随着数字化浪潮的席卷,现代企业对于高 效、稳定、易于扩展的管理系统需求愈发迫切。为了满足这一需求,我们倾力打造了一款基于Java技术的企业级资源规划(ERP)管理系统。该系统以Spring Cloud Alibaba、Spring Boot、MybatisPlus、…

理解多线程看这一篇就够了

一、基本概念与关系 程序 程序是含有指令和数据的文件,静态地存储在磁盘等存储设备上。它是软件的实体,但未被激活。 进程 进程是程序的一次执行过程,是系统运行程序的基本单位。当程序被操作系统加载并执行时,就成为一个进程&a…

Nacos 进阶篇---Nacos服务下线做了哪些事情 ?(八)

一、引言 本章节是第一阶段最后一篇,那么我们今天要学习的源码内容是 “服务下线”. 当Nacos客户端下线的时候,是要去通知服务端,告诉服务端 “ 我已经下线,不可用了 ”。并且在服务下线时,还要去通知其他客户端服务更…

Linux命令那么多,先来一篇文件和目录管理命令!

💡本文建议大家收藏! 文件和目录管理命令 1. ls - 列出目录内容 ls命令是Linux中最常用的命令之一,用于列出目录中的文件和子目录。 ls显示当前目录下的所有文件和目录。 ls -l以长格式列出目录内容,显示文件权限、所有者、大…

如何便捷申请免费SSL证书,实现网站HTTPS安全传输

申请免费SSL证书的教程可以概括为以下几个通用步骤,这里以Lets Encrypt为例,因为它是最受欢迎的免费SSL证书提供商之一,同时也适用于多数其他免费SSL证书提供商: 1.准备工作 确认域名:确保你拥有一个有效的域名&…

CSS学习笔记:响应式布局的原理——媒体查询

什么是响应式布局? 在实际书写代码时,我们不会自己去手写媒体查询来实现响应式布局,我们一般会调用现成的代码库或使用现成的框架(但这些代码库或框架的底层原理是媒体查询,所以了解媒体查询也是很有必要的&#xff0…

AB实验人群定向HTE模型1 - Causal Tree

背景 论文给出基于决策树估计实验对不同用户的不同影响。并提出Honest,variance Penalty算法旨在改进CART在tree growth过程中的过拟合问题。 我们举个例子:科研人员想衡量一种新的降血压药对病人的效果,发现服药的患者有些血压降低但有些血…

I2C协议详解

文章目录 概念工作模式 原理工作原理工作流程IIC协议的关键特点IIC通信过程 优点与缺点优点缺点 概念 IIC(Inter-Integrated Circuit)协议,也常被称为TWI(Two-Wire Interface)协议,是一种用于短距离通信的…

list常用接口模拟实现

文章目录 一、模拟list类的框架二、函数接口实现1、迭代器接口2、常用删除、插入接口3、常用其他的一些函数接口4、默认成员函数 一、模拟list类的框架 1、使用带哨兵的双向链表实现。 2、链表结点&#xff1a; // List的结点类 template<class T> struct ListNode {Li…

卧式混料机:混合设备的智慧之选

卧式混料机&#xff0c;顾名思义&#xff0c;是一种采用卧式结构的混合设备。它的设计精巧&#xff0c;结构紧凑&#xff0c;不仅占用空间小&#xff0c;而且操作简便&#xff0c;维护方便。与传统的立式混料机相比&#xff0c;卧式混料机在混合效率、混合均匀度以及物料适应性…

DNS设置(linux)

1.配置dns需要现在/etc/sysconfig/network-scripts/目录下的ifcfg-ens33(后面数字也可能是其他的)中配置DNS 2.编辑/etc/resolv.conf文件&#xff0c;将上面网卡中加的dns服务器ip添加到此文件 vi /etc/resolv.conf重启网络配置 service network restart常用的dns的ip 国内…

香港优才计划申请时间要多久?各流程申请周期规划,再晚就来不及了!

香港优才计划申请时间要多久&#xff1f;各流程申请周期规划&#xff0c;再晚就来不及了&#xff01; 2024年是香港优才计划不限配额的最后一年&#xff0c;明年政策如何变化还未可知&#xff0c;但如果明年又设置限额了&#xff0c;那么今年最后的机会一定要抓住了。 在这里…

分享 - 树形dp

树形 d p dp dp 例1 - 基础 链接&#xff1a;树上子链 练手 分析 其实一看题就很显然的树形 d p dp dp子链在这里分为两种情况&#xff0c;如图黑链和红链 思路 d p [ i ] dp[i] dp[i] 表示以 i i i 开头的红链的最大权值易得&#xff1a; d p [ i ] m a x ( d p [ i…

祝贺!阿里云PolarDB斩获数据库国际顶会ICDE 2024工业赛道最佳论文

5月17日消息&#xff0c;在荷兰举行的国际顶级数据库学术会议ICDE 2024上&#xff0c;阿里云斩获工业和应用赛道的“最佳论文奖”&#xff0c;这也是中国企业首次获此殊荣。阿里云PolarDB创新性地解决了数据库Serverless中跨机事务迁移的核心难题&#xff0c;将跨机迁移时间压缩…

智能客服:论小红书商家杀出重围的正确姿势!

小红书「起飞」密码 洞悉需求&#xff0c;主动应变 面对众多的互联网平台&#xff0c;选择一个合适的平台宣传自家的品牌&#xff0c;也是一门学问&#xff0c;从“遇事不决&#xff0c;小红书”&#xff0c;这一 slogan 就能精准地捕捉了用户搜索行为的新趋势。 在过去的十…

【C++奇妙冒险】拷贝构造函数、运算符重载(赋值重载|const成员|取地址重载|const取地址重载)

文章目录 前言&#x1f6a9;拷贝构造函数&#x1fae7;概念&#x1fae7;特征&#x1fae7;默认生成的拷贝构造&#x1fae7;default关键字&#xff08;浅谈&#xff09; &#x1f6a9;运算符重载&#x1fae7;概念&#x1fae7;运算符重载注意事项&#x1fae7;封装如何保证&a…

如何使用GPT-4o?如何使用 GPT-4o API?

如何使用GPT-4o&#xff1f; GPT-4o 也可以通过 ChatGPT 界面使用 如何使用 GPT-4o API 新的 GPT-4o 模型遵循 OpenAI 现有的聊天完成 API&#xff0c;使其向后兼容且易于使用。 ​ 如何升级GPT4Plus&#xff1f; 升级ChatGPTPLSU4需要一张虚拟卡&#xff0c;点击获取​​​…