助你玩转——4G模组Air780EPM的GPIO设计~

news/2025/3/19 10:39:13/文章来源:https://www.cnblogs.com/luatos/p/18777049

本文将结合Air780EPM的硬件架构与软件框架,从管脚分配、电气特性、复用机制、代码开发四个维度,深入解析GPIO设计的全流程要点,为开发者提供从理论到实践的完整技术指南。

一、概述

开发方式:Air780EPM 仅支持 LuatOS 软件开发方式,不支持 AT 指令开发方式。若使用 AT 指令开发方式,可选择 Air780EQ。

LuatOS 开发优势:相对 C-SDK 入门更简单,开发更方便,开发时间更快。

适用对象:本文的 GPIO 设计指导针对 Air780EPM 用于 LuatOS 开发方式时的注意事项。

GPIO 及 WAKEUP 管脚数量:Air780EPM 模块共支持 38 个 GPIO 和 3 个 WAKEUP 唤醒管脚。38 个 GPIO 口本身有多重复用功能,需根据实际应用进行选择配置。38 个 GPIO 中分为普通 GPIO 和 AGPIO,AGPIO 又有 AGPIO 和 AGPIOWU(AGPIO+WAKEUP)的复用。6 个 WAKEUP 管脚为 AGPIOWU0-2 和 WAKEUP0、VBUS、USIM_DET,用于低功耗模式/PSM+ 模式下的休眠唤醒。

二、GPIO 复用表

对于 GPIO 功能复用请参考如下表格


三、GPIO特性

Air780E的GPIO口根据不同的特性,可以分为三种类型:

普通IO

AGPIO

Wakeup IO

不同特性的GPIO,其驱动能力以及在低功耗模式/PSM+模式下的表现区别比较大,在使用这些特性的GPIO时尤其要注意;

AGPIO也常被写作为:AONGPIO、AON_GPIO,以下均以AGPIO的写法进行描述。

1. 普通IO

Air780E大部分管脚为普通GPIO(上图GPIO复用表格中灰色底色的IO);

Air780E系统为了在休眠模式下有极致的低功耗性能,会在模组进入休眠/深休眠模式时,关闭GPIO供电(VDD_EXT),因此会导致所有以VDD_EXT为电源域的GPIO会进入下电状态。

在使用普通GPIO时,要尤其注意在休眠状态下GPIO的掉电状态对控制外设造成的误动作风险。

▼ 普通IO相关特性 ▼

电压域:VDD_EXT(1.8/3.3V可配置)

输入输出:可以配置

上下拉:内部可配置

输入中断:

上下边沿触发/双边沿触发/高低电平触发(休眠后无法响应中断)

休眠电平保持:不可保持

休眠唤醒:不可唤醒模组

驱动能力:单个普通GPIO驱动能力<=10mA

2. AGPIO

AGPIO管脚为休眠可保持管脚(GPIO复用表格中绿色底色IO管脚);

这类管脚电源域为长保持的LDO_AONIO电源(为内部电源,模组外部不可测量),这类电源在模组低功耗模式/PSM+下,仍然能够保持供电,因此AGPIO管脚在休眠状态下能够保持电平。

AGPIO管脚可以用于休眠状态下仍然需要保持工作状态的外设。

▼ AGPIO相关特性 ▼

电压域:LDO_AONIO(1.8/3.3V)

输入输出:可以配置

上下拉:内部可配置

输入中断:

上下边沿触发/双边沿触发/高低电平触发(休眠后无法响应中断)

休眠电平保持:可保持

休眠唤醒:不可唤醒模组

驱动能力:

AGPIOWU0/1/3(MAIN_DTR):30μA;

AGPIO3~8:5mA(所有AGPIO总共驱动电流不能超过5mA)。

3. Wakeup IO

Air780E模组包含6个特殊管脚:

WAKEUP0~WAKEUP5

此类型IO为中断唤醒管脚,能够在模组休眠状态下响应外部中断从而使模组退出休眠状态,因此这类IO管脚在休眠状态下也能保持供电。

注意:Wakeup IO仅支持输入,不能配置为输出,且固定电平不可配置。

▼ Wakeup IO相关特性 ▼

电压域:LDO_AON(2V,不可配置)

输入输出:仅输入

上下拉:内部可配置

输入中断:上下边沿触发/双边沿触发/高低电平触发

休眠电平保持:可保持

休眠唤醒:支持

驱动能力:30μA

四、GPIO应用注意事项

1. 普通GPIO以及相应的电压域VDD_EXT,在休眠时会输出频繁百ms级别的高脉冲,极易导致连接的外设误动作。

原因解析:

Air780E的休眠特性,VDD_EXT在休眠状态下会关闭,但是Air780E系统在休眠的整个时期内并不是一直保持稳定休眠状态,需要不定时唤醒起来与4G网络交互以保持网络连接,因此VDD_EXT会随着模组唤醒而打开。而大部分普通GPIO默认是I&PU状态,就会被VDD_EXT拉高,导致输出高脉冲。

设计建议:

在一些需要休眠状态下正常工作的外设的控制(比如LED控制)不建议使用普通GPIO,可以使用AGPIO。

由于AGPIO数量有限,在必须用普通GPIO的情况下,可以在普通GPIO上做外接10K电阻下拉(如下图R23),可以大幅减小休眠时输出的高脉冲幅值,使得减小到外设的高电平判别门限以下,也可以避免误动作的情况,但是相应的在某些情况下,会增加功耗,请根据实际情况酌情做出选择。

2. Wakeup IO类型的GPIO不要用VDD_EXT或者普通GPIO上拉,会导致系统无法进入休眠。

原因解析:

Air780E的休眠特性使得普通GPIO管脚和VDD_EXT会在休眠状态下输出高脉冲,会使得Wakeup IO收到中断而导致系统被唤醒,无法进入休眠模式。

设计建议:使用内部的上下拉。

3. Wakeup IO类型的GPIO不要直接连接主控MCU的IO管脚,会导致电平不一致而影响系统稳定性。

原因解析:

Wakeup IO管脚电平是2V左右,这个与大多数MCU的IO电平不匹配,而且Wakeup IO的供电为内部的LDO_AON,而这个供电会给系统启动相关的部分供电,比如reset管脚,因此Wakeup IO上由于电平不匹配而导致的漏洞,有可能会影响系统稳定性。

设计建议:

使用二极管或者三极管来隔离(如下图)。

今天的内容就分享到这里了~

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

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

相关文章

【Java】XxlJob入门

xxl-job概念 xxlJob是轻量级的可视化分布式任务调度平台,适用于中小型企业。主要特性如下:简单、动态、轻量级、支持弹性扩容缩容、事件全异步执行、跨语言。 调度中心和执行任务解耦 调度任务支持多种不同场景的路由策略、容错策略、触发策略 运维更便捷环境准备和部署 Gith…

快速掌握!4G模组:Air780EPM 天线设计说明

天线设计,也是4G模组应用中最容易踩坑的地方。今天主要分享讨论Air700ECQ/EAQ/EMQ系列模组,天线管脚到4G天线之间的电路设计和走线规则。 Air700ECQ/EAQ/EMQ模组属于Cat.1 bis R13架构,天线架构精简为单天线架构,去掉了分集接收天线,因此只需要一根天线。 知识点: Cat.1 …

24级数应二班课堂作业2

2024010068 刘晓津 几年几月多少天year = int(input("请输入年份: ")) month = int(input("请输入月份: "))if month in [1, 3, 5, 7, 8, 10, 12]:days = 31 elif month in [4, 6, 9, 11]:days = 30 elif month == 2:if (year % 4 == 0 and year % 100 != …

简谈如何用纳米压印技术制备测序芯片-测序芯片-flowcell-代加工-外协加工-委外加工-激光代加工-河南郑州-芯晨微纳(河南)

利用纳米压印技术(Nanoimprint Lithography, NIL)制备测序芯片(如DNA测序芯片或生物传感器芯片)的核心在于通过高精度模板在基材上高效复制纳米级结构,从而构建用于捕获、固定或检测生物分子的功能表面。以下是具体步骤和关键技术要点:测序芯片的功能需求 测序芯片通常需…

SpringSecurity5(7-会话管理)

Spring Security 的会话管理可控制用户身份验证的会话行为,支持并发会话限制、防止会话固定攻击(Session Fixation)、会话超时控制等。可结合 Redis 实现分布式会话共享,提升安全性与用户体验,适用于高并发应用场景。会话管理 http.sessionManagement()invalidSessionUrl(…

jstat--java内存分析工具

jstat利用JVM内建的指令对应用程序的资源和性能实时的命令行监控,包括堆大小和垃圾回收状况。命令## n1 刷新时间 n2 总共输出次数 jstat -gcutil pid n1 n2说明S0 :s0已使用的容量占比 S1:s1已使用的容量占比 E:eden已使用容量占比 O:老年代已使用容量占比 CCS:压缩类…

AI与.NET技术实操系列(八):使用Catalyst进行自然语言处理

引言 自然语言处理(Natural Language Processing, NLP)是人工智能领域中最具活力和潜力的分支之一。从智能客服到机器翻译,再到语音识别,NLP技术正以其强大的功能改变着我们的生活方式和工作模式。 Catalyst的推出极大降低了NLP技术的应用门槛。它支持文本分类、实体识别等…

ACT中使用正则表达式验证UI展示

近在编写ACT的过程中,遇到校验UI的展示校验,要求数据由Number+空格+base unit进行展示。同事分享了一份参考方法如下图:最终在方法里面使用如下: Public void functionName(String verifyContent) throw exception{String regex = \\d+\\s\\S+;Controller.assertTrue(Pat…

【GreatSQL优化器-17】DYNAMIC RANGE

【GreatSQL优化器-17】DYNAMIC RANGE 一、DYNAMIC RANGE介绍 GreatSQL 的优化器有一种扫描方式是动态范围扫描方式,类似于“已读乱回”模式,这种模式是在表有多个索引的情况下,对驱动表连接的时候部分选择索引的情况。优化器没有找到好的索引可以使用,但发现在知道前面表的…

20244225 《python程序设计》实验一报告

课程:《Python程序设计》 班级: 2442 姓名: 孟雨欣 学号:2024422 实验教师:王志强 实验日期:2024年3月18日 必修/选修: 公选课 一、实验内容 1.熟悉Python开发环境; 本次实验使用pycharm作为开发环境,首先在官网下载并安装PyCharm社区版,安装完成后打开软件,创建一个…

(收藏)UniGUI学习之UniDBGrid常用方法(转载)

1]DataSource设置 2]显示MEMO类型里的文字3]显示悬浮提示4]显示当前记录及总记录数5]读取所有记录,及分页6]在前面加上序号列,并设置序号字体大小,所有单元格 字体大小,垂直居中7]不显示标题栏8]点击表头,单列排序UniDBGrid1ColumnSort9]编辑 和 更新 数据10]获得某单元格里…

纳米压印技术-测序芯片-flowcell-代加工-外协加工-委外加工-激光代加工-河南郑州-芯晨微纳(河南)

纳米压印技术(Nanoimprint Lithography, NIL)是一种高分辨率、低成本的微纳米结构制造技术,通过机械压印方式在材料表面形成纳米级图案。基本原理 核心思想:通过物理压印将模板上的纳米结构“转移”到目标材料(如聚合物、树脂等)上,替代传统光刻中的光学曝光。 关键步骤…