合宙Air724UG Cat.1模块硬件设计指南--GPIO控制

news2024/11/22 9:31:50

GPIO控制
简介
GPIO(General-purpose input/output),通用型之输入输出的简称,可实现某时刻电平状态的输出与输入,即可以通过它们输出高低电平或者通过它们读入引脚的状态-是高电平或是低电平。

特性
共支持28个GPIO,部分引脚上电前后状态不同,使用时参考下表。

  1. VLCD、VMMC、VSIM1相关引脚电压域会根据外部硬件,其内部自动调整其输出电压,为1.8V/3V/3.3V
  2. At reset, after reset 都默认指的就是function 0功能的状态(即GPIO 配置还没生效前的状态)
  3. GPIO0~5 电源域默认关闭,所以at reset, after reset状态都是L
  4. GPIO29~31电源域默认关闭,所以at reset, after reset状态都是L
    Pin State Function 0 Function 1 Function 2
    GPIO number Name At Reset(H/L/Hiz) After Reset(H/L/Hiz) Power Domain Pull-up Pull-Down Function 0 Type Function 1 Type Function 2 Type
    GPIO_0 LCD_DATA/GPIO_0 INPUT L INPUT L VLCD(1.8V/3V/3.3V) 20K/4.7K/1.8K 50K GPIO_0 I/O LCD_DATA O
    GPIO_1 LCD_DC/NET_STATUS/GPIO_1 INPUT L INPUT L VLCD(1.8V/3V/3.3V) 20K/4.7K/1.8K 50K GPIO_1 I/O LCD_DC O NET_STATUS O
    GPIO_2 LCD_CLK/AP_WAKEUP_MODULE/GPIO_2 INPUT L INPUT L VLCD(1.8V/3V/3.3V) 20K/4.7K/1.8K 50K GPIO_2 I/O LCD_CLK O AP_WAKEUP_MODULE I
    GPIO_3 LCD_CS/WAKEUP_OUT/GPIO_3 INPUT L INPUT L VLCD(1.8V/3V/3.3V) 20K/4.7K/1.8K 50K GPIO_3 I/O LCD_CS O WAKEUP_OUT O
    GPIO_4 LCD_SEL/NET_MODE/GPIO_4 INPUT L INPUT L VLCD(1.8V/3V/3.3V) 20K/4.7K/1.8K 50K GPIO_4 I/O LCD_SEL O NET_MODE O
    GPIO_5 MODULE_STATUS/GPIO_5 INPUT L INPUT L400ms后,由底层软件控制为OUTPUT变H VDDIO(1.8V) 20K/4.7K 40K GPIO_5 I/O MODULE_STATUS O
    GPIO_9 SPI1_CLK/GPIO_9 INPUT L INPUT L VDDIO(1.8V) 20K/4.7K 40K GPIO_9 I/O SPI1_CLK I/O
    GPIO_10 SPI1_CS/GPIO_10 INPUT L INPUT L VDDIO(1.8V) 20K/4.7K 40K GPIO_10 I/O SPI1_CS I/O
    GPIO_11 SPI1_DOUT/GPIO_11 INPUT L INPUT L VDDIO(1.8V) 20K/4.7K 40K GPIO_11 I/O SPI1_DOUT I/O
    GPIO_12 SPI1_DIN/GPIO_12 INPUT L INPUT L VDDIO(1.8V) 20K/4.7K 40K GPIO_12 I/O SPI1_DIN I/O
    GPIO_13 GPIO_13 INPUT L INPUT L VDDIO(1.8V) 20K/4.7K 40K GPIO_13 I/O
    GPIO_14 I2C2_SCL/GPIO_14 INPUT L INPUT L VDDIO(1.8V) 20K/1.8K 40K GPIO_14 I/O I2C2_SCL O
    GPIO_15 I2C2_SDA/GPIO_15 INPUT L INPUT L VDDIO(1.8V) 20K/1.8K 40K GPIO_15 I/O I2C2_SDA I/O
    GPIO_17 CAMI2C_SDA1/GPIO_17 INPUT H INPUT H VDDIO(1.8V) 20K/1.8K 40K GPIO_17 I/O CAMI2C_SDA1 I/O
    GPIO_18 UART1_CTS/GPIO_18 INPUT L INPUT L VDDIO(1.8V) 20K/4.7K 40K GPIO_18 I/O UART1_CTS I
    GPIO_19 UART1_RTS/GPIO_19 INPUT L INPUT L VDDIO(1.8V) 20K/4.7K 40K GPIO_19 I/O UART1_RTS O
    GPIO_20 UART2_RXD/GPIO_20 INPUT L OUTPUT L 5ms后变为H VDDIO(1.8V) 20K/4.7K 40K GPIO_20 I/O UART2_RXD I
    GPIO_21 UART2_TXD/GPIO_21 INPUT L OUTPUT 输出log, 不建议使用 VDDIO(1.8V) 20K/4.7K 40K GPIO_21 I/O UART2_TXD O
    GPIO_22 ZSP_UART_TXD/GPIO_22 INPUT L OUTPUT L 5ms后变为H VDDIO(1.8V) 20K/4.7K 40K GPIO_22 I/O ZSP_UART_TXD O
    GPIO_23 USIM_CD/GPIO_23 INPUT L OUTPUT 输出log, 不建议使用 VDDIO(1.8V) 20K/4.7K 40K GPIO_23 I/O USIM_CD I
    GPIO_24 MMC1_CMD/GPIO_24 INPUT H INPUT H,700ms后变为L VMMC(1.8V/3V/3.3V) 20K/4.7K/1.8K 50K GPIO_24 I/O MMC1_CMD I/O
    GPIO_25 MMC1_DAT0/GPIO_25 INPUT H INPUT H,700ms后变为L VMMC(1.8V/3V/3.3V) 20K/4.7K/1.8K 50K GPIO_25 I/O MMC1_DAT0 I/O
    GPIO_26 MMC1_DAT1/GPIO_26 INPUT H INPUT H,700ms后变为L VMMC(1.8V/3V/3.3V) 20K/4.7K/1.8K 50K GPIO_26 I/O MMC1_DAT1 I/O
    GPIO_27 MMC1_DAT2/GPIO_27 INPUT H INPUT H,700ms后变为L VMMC(1.8V/3V/3.3V) 20K/4.7K/1.8K 50K GPIO_27 I/O MMC1_DAT2 I/O
    GPIO_28 MMC1_DAT3/GPIO_28 INPUT H INPUT H,700ms后变为L VMMC(1.8V/3V/3.3V) 20K/4.7K/1.8K 50K GPIO_28 I/O MMC1_DAT3 I/O
    GPIO_29 SIM1_CLK/GPIO_29 OUTPUT L OUTPUT L VSIM1(1.8V/3V/3.3V) 20K/4.7K/1.8K 50K GPIO_29 I/O SIM1_CLK O
    GPIO_30 SIM1_DATA/GPIO_30 INPUT L INPUT L VSIM1(1.8V/3V/3.3V) 20K/4.7K/1.8K 50K GPIO_30 I/O SIM1_DATA I/O
    GPIO_31 SIM1_RST/GPIO_31 OUTPUT L OUTPUT L VSIM1(1.8V/3V/3.3V) 20K/4.7K/1.8K 50K GPIO_31 I/O SIM1_RST O
    GPIO接口软件控制
    LUA开发相关API
    常见问题及故障排查
    http://doc.openluat.com/article/638/0

CAT1 的gpio配置成io输出放在循环定时里配置,为啥会有脉冲出来?
建议如果要配置成输出要在外面用函数方式配置调用,
如果不关闭自动切换sim卡情况下用gpio29,30,31注意以下几点:

gpio_30,配置为输入模式时,默认电平改不了,一直是高?
模块内部有强上拉,改不了。

如果不插sim0,gpio31会一直置高,配置输出低也无效,插入sim0,配置输出正常。
在这里插入图片描述

–如果要用到gpio29,30,31建议关闭自动切换功能
ril.request(“AT*SIMAUTO=0”)

GPIO7和usb休眠唤醒功能冲突说明
1:lua 3037版本新增一条特殊指令,但不提供对外说明:
对内使用说明:
默认底层占用了GPIO7用于USB睡眠和唤醒模块,所以GPIO7不再给客户使用
如果客户已经用了GPIO7
如果不需要USB控制模块睡眠和唤醒功能,可以通过AT+GPIO7ENABLE=0 关闭底层对GPIO7的占用
如果需要使用USB控制模块睡眠和唤醒功能,可以通过AT+GPIO7ENABLE=1,gpionum 指令,将底层对GPIO7的占用改成其他没有使用的管脚

3V引脚和3.3V引脚之间通讯要串联多大电阻?
1K的电阻

防拆监测工作原理?
防拆就是有两个管脚在模块内部是连在一起的,
这两个管脚可以连接到单片机的两个GPIO上,
如果模块被拆掉了,这两个GPIO之间的连接会断开

io能检测脉冲个数吗?
8910 1.3固件3102 以上版本支持定时检测脉冲,增加一种配置,返回高低脉冲的个数
详细使用说明请参考
https://doc.openluat.com/share_article/h6t5VpZq4PjUr

为什么脉冲检测功能没作用?
先关闭按键防抖功能:pio.pin.setdebounce(0xffffffff)

使用标准at指令控制通用gpio的指令是什么?
不支持

722 AT固件301845 gpio开机电平测试
722UG开机电平测试.docx

gpio的最大负载电流和灌电流是多少?能直接驱动led灯吗?
输出负载2ma,灌电流低于5ma,建议接三级管驱动led灯。

air724的gpio用作输入监测,1.8为高,0.8为低,可以吗?电气规定多少伏才为低?
不行 , 要低于0.6V

GPIO7能不能用?
GPIO7 默认被底层 休眠复用时候,不受控的问题,源于默认内部将GPIO7 和系统休眠做了硬件关联。(如果模块不休眠,则能正常控制,但是LUAT 不插USB ,默认就会休眠)
有解决方案:
AT+GPIO7ENABLE=1,18 此固定指定就是将 绑定到GPIO7 上的系统功能,转移到其他GPIO, 比如:GPIO18。
这样GPIO7 就能当普通GPIO口用了。

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

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

相关文章

A Neural Conversational Model 读后感

目录 摘要 1、介绍 2、相关工作 3、模型 4、数据(后面都是具体的东西,不赘述) 5、总结 使用微软翻译得到的中文原文: 摘要 会话建模是自然语言理解和机器智能中的一项重要任务。尽管存在以前的方法,但它们通常仅…

MySQL数据库:数据库的约束以及数据的聚合、联合查询

目录 一.关系模型的简要概述 二.数据库的约束 2.1约束类型 2.2NULL约束 2.3 UNIQUE:唯一约束 2.4 默认约束 2.5 PRIMARY KEY:主键约束 2.6 FOREIGN KEY:外键约束 2.7 CHECK约束 三.高效率查询 3.1高效率查询的分类 3.2聚合查询 …

Nginx热升级到1.23.4过程指导手册

一、问题描述 因环境内部安全扫描发现CVE-2021-23017、CVE-2022-41741、CVE-2022-41742、CVE-2019-20372漏洞,经分析后,需要将nginx升级到1.23.4版本; 现场环境:centos7.4 1708、nginx 1.20.1 资料:软件下载、360安全…

spring框架-循环依赖问题(二)

文章目录 什么是循环依赖解决循环依赖的办法知识扩展 什么是循环依赖 两个或多个类之间存在彼此依赖的情况,形成一个循环依赖链 代码: 单例bean的循环依赖: 先了解Bean的生命周期:1.实例化 2.初始化、3.使用 4.销毁 详细了解Bean生命周期…

数据库高级

数据库高级🦅 文章目录 数据库高级🦅范式🦍什么是范式🐊第一范式——1NF🦖第二范式——2NF🐟第三范式——3NF🐉总结🐙 五大约束🐏主键约束🐡外键约束&#x1…

第五章 ResNeXt网络详解

系列文章目录 第一章 AlexNet网络详解 第二章 VGG网络详解 第三章 GoogLeNet网络详解 第四章 ResNet网络详解 第五章 ResNeXt网络详解 第六章 MobileNetv1网络详解 第七章 MobileNetv2网络详解 第八章 MobileNetv3网络详解 第九章 ShuffleNetv1网络详解 第十章…

网络套接字函数 | socket、bind、listen、accept、connect

欢迎关注博主 Mindtechnist 或加入【Linux C/C/Python社区】一起学习和分享Linux、C、C、Python、Matlab,机器人运动控制、多机器人协作,智能优化算法,滤波估计、多传感器信息融合,机器学习,人工智能等相关领域的知识和…

CSS3-补充-结构伪类选择器

结构伪类选择器 作用:在HTML中定位元素 优势:减少对于HTML中类的依赖,有利于保持代码整洁 场景:常用于查找某父级选择器中的子元素 选择器: 选择器 …

SAC算法小结

算法SAC 基于动态规划的贝尔曼方城如下所示: 则,基于最大熵的软贝尔曼方程可以描述为如下的形式: 可以这么理解soft贝尔曼方程,就是在原有的贝尔曼方程的基础上添加了一个熵项。 另外一个角度理解soft-贝尔曼方程: …

Vue-组件自定义事件(绑定和解绑)

组件自定义事件(绑定) 像click,change这些都是js的内置事件,我们可以直接使用,本次我们学习自己根据需求打造全新的事件,但是js内置的是给html元素用的,本次的自定义事件是给组件用的 注意:组件上也可以绑定原生DOM事件&#xf…

(十一)CSharp-LINQ(1)

一、LINQ 数据库可以通过 SQL 进行访问,但在程序中,数据要被保存在差异很大的类对象或结构中。由于没有通用的查询语言来从数据结构中获取数据。所以可以使用 LINQ 可以很轻松地查询对象集合。 LINQ 高级特性: LINQ 代表语言集成查询。LIN…

【机器学习】信息熵和信息度量

一、说明 信息熵是概率论在信息论的应用,它简洁完整,比统计方法更具有计算优势。在机器学习中经常用到信息熵概念,比如决策树、逻辑回归、EM算法等。本文初略介绍一个皮毛,更多细节等展开继续讨论。 二、关于信息熵的概念 2.1 …

尚硅谷课程vue学习(一)

目录 data两种写法el两种写法由vue管理的函数,一定不要写箭头函数,不然this指向windows实例了MVVM模型defineProperty属性数据代理v-on: v-bind:键盘事件keyup keydowncomputed计算属性监视属性watch监视属性和计算属性区别绑定class和style属性条件渲染…

cocosCreator 3.3~6 安卓热更新官方详细示例

官方的热更新虽给出了示例和源码,但是一些细节的地方和步骤还是没说清楚,导致新手包括我死活是运行不起来,热更新失败!很打击人啊。这里有必要给出新手的热更新步骤,前提是你安装了Node.js和python环境,我装…

chatgpt赋能python:更新Python所有库,避免安全漏洞和兼容性问题!

更新 Python 所有库,避免安全漏洞和兼容性问题! Python 是当今最受欢迎的编程语言之一,拥有强大而多功能的 API 和丰富的第三方库来支持开发,如 numpy、pandas、tensorflow 等等。但是,这些库不断地更新与改进&#x…

端午作业1

只要文件存在,就会有唯一对应的inode号,且相应的会存在一个struct inode结构体。在应用层通过open()打开一个设备文件,会对应产生一个inode号,通过inode号可以找到文件的inode结构体 根据inode结构体中文件…

【Dart语言解密】想要深入了解Dart语法和类型变量吗?

快来读读这篇文章吧!本文从Dart信息表示的角度出发,详细讲解了Dart的基础语法和类型变量。通过本文的学习,你将会对Dart语言有更深入的认识和理解,更好地掌握Dart的开发技巧和实践应用。快来一起解密Dart语言吧! 1 Da…

数据透视表 - 学习笔记

教程资源:数据透视表_哔哩哔哩_bilibili 目录 一、内容概括 数据操作: 案例: 二、数据操作 (一)数据清洗 (二)创建数据透视表 1、数据格式 2、显示方式 3、分组 4、修改数据源 5、…

Web 安全之 HSTS 详解和使用

HSTS(HTTP Strict Transport Security) 是一种网络安全机制,可用于防范网络攻击,例如中间人攻击和 CSRF(Cross-Site Request Forgery)等攻击。本文将详细介绍 HSTS 的工作原理、应用场景以及如何在网站中开…

【计算机视觉 | 目标检测】arxiv 计算机视觉关于分类和分割的学术速递(6月 22 日论文合集)

文章目录 一、分类相关(4篇)1.1 Annotating Ambiguous Images: General Annotation Strategy for Image Classification with Real-World Biomedical Validation on Vertebral Fracture Diagnosis1.2 Benchmark data to study the influence of pre-training on explanation pe…