当前位置: 首页 > news >正文

打了一堆板子,才发现是VDD_EXT的锅

今天以合宙Air780EPM模组为例,一起来聊聊VDD_EXT。理解其工作原理和限制,对于设计稳定、低功耗的产品至关重要。

一、VDD_EXT功能特性

VDD_EXT是Air780EPM模组主芯片内部的一个LDO电源输出引脚,位于模组的PIN24

其主要作用是为模组大部分IO(或者叫做GPIO)提供电源。

需要注意的是:
VDD_EXT并不是唯一一个LDO,也并不是模组所有的IO都由VDD_EXT负责供电。

大家可以看到和可以使用的模组IO,
由内部的三个LDO共同负责供电:

  • VDD_EXT;

  • LDO_AON;

  • LDO_1.8V;

其中,LDO_AON和LDO_1.8V仅供内部使用,未在模组管脚引出。

VDD_EXT、LDO_AON、LDO_1.8V分别负责哪些IO,有什么区别,详见资料中心最新说明:

https://docs.openluat.com/air780epm/product/air780exxpins/

▼ 三者主要区别 ▼

VDD_EXT、LDO_AON、LDO_1.8V都是上电后自动开启,也都无法软件自定义关闭。

三者主要区别如下:

1)LDO_1.8V

开机后一直保持1.8V,不可更改电压数值大小。

2)LDO_AON

开机后一直开启,在低功耗模式和PSM+模式下也不关闭。

因此,其电压域下的IO,包括AGPIO、AGPIOWU、WAKEUP和Reset,在低功耗模式和PSM+模式下都可以保持工作。

LDO_AON的详细状态,如下表所示:

3)VDD_EXT

开机后的状态比较复杂,如下表所示:

VDD_EXT由于在低功耗模式下状态为间线性输出,既不是完全打开,也不是完全关闭。

因此,其电压域下的IO(GPIO0-19和GPOIO29-38),在低功耗模式下也会跟VDD_EXT一样:

随着系统间歇性唤醒与基站交互而频繁产生高脉冲(重点是无法保持高电平或低电平),间歇性唤醒频率和与通信协议要求的时间间隔相同,通常为0.64S/1.28S/2.56S中的一个。

特别说明:

VDD_EXT和LDO_AON都是通过函数pm.ioVol()设置输出电压,且pm.ioVol() 对二者同时进行修改。

所以大家看到的模组的所有IO,包括VDD_EXT电压域和LDO_AON电压域,电平都是同时修改且保持一致。

二、注意事项及硬件参考设计

VDD_EXT标称输出电流最大至200mA,但是,VDD_EXT同时用于模组芯片内部和外部,为了保证内部该电压域负载的使用稳定性,请保证外部负载消耗电流不要超过50mA。

VDD_EXT在低功耗模式pm.WORK_MODE,1 状态下间歇性输出,频率和与通信协议要求的时间间隔相同,通常为0.64S/1.28S/2.56S中的一个。

因此,在可能影响低功耗模式下中断唤醒的场合,要避免使用VDD_EXT做上拉电平用。

比如:
UART1电平转换电路(UART1为LPUART,低功耗模式pm.WORK_MODE,1 下可被唤醒)。

如上图所示,如果VREF使用VDD_EXT,那么低功耗模式pm.WORK_MODE,1下模组的UART1_RX频繁的高低电平变化就会将模组唤醒,进而导致模组退出低功耗模式而功耗无法降低。

需要特别指出的是:

如果你的硬件需要在休眠状态下(低功耗模式和PSM+模式)也可以稳定输出的电源,请根据需要选择外置的DCDC或者LDO。

三、与VDD_EXT相关的LuatOS API

配置IO电平,其实就是配置给IO供电的LDO,包括VDD_EXT和LDO_AON。

相应的,配置VDD_EXT,就可以通过配置IO电平来实现。

VDD_EXT相关LuatOS API,详见pm库:

https://docs.openluat.com/osapi/core/pm/

▼ pm.ioVol(id, val) ▼

1)函数功能

配置模块所有IO引脚的高电平电压。

2)注意事项

可配置IO电平, 范围1650~2000,2650~3400 , 单位毫伏,步进50mv,可以根据外围电路需求配置;

实际应用中,经常配置的三个经典电压值为:
1.8V/2.8V/3.3V;

合宙支持二次开发的模组,绝大多数默认都为3.3V,例外是:

  • Air8000系列模组,全系只支持3.3V,不支持其它电平;

  • Air780EHV,IO电平固定为3.3V;
    相对应的,Air780EHV-1.8V,IO电平固定为1.8V;

3)示例代码

http://www.jsqmd.com/news/100950/

相关文章:

  • 分支语句和循环语句
  • 区块链交易所技术革命白皮书:如何用分布式架构扛住量子计算时代?
  • Java计算机毕设之基于JavaWeb的智慧养老院管理系统的设计与实现基于Java的养老服务智慧管理系统的设计与实现(完整前后端代码+说明文档+LW,调试定制等)
  • Cordova与OpenHarmony施肥记录管理
  • Solidity入门(8)-库合约Library
  • 还买啥USB网卡~直接开启RNDIS就行
  • DApp开发暴风指南:7天从零到上线,手把手教你用代码撬动Web3流量红利
  • 冥想第一千七百三十五天(1735)
  • 零碳园区应急能源基础架构规划:备用电源与清洁能源联动配置
  • 2026年EOR名义雇主服务优势TOP8对比榜单,助力全球化布局与用工优化
  • 【课程设计/毕业设计】基于SpringBoot的在线天气查询系统基于springboot天气预报查询系统【附源码、数据库、万字文档】
  • 2025 全国最新水池布厂家TOP5 评测!云南等地优质企业权威榜单发布,赋能现代设施农业 - 全局中转站
  • 【MongoDB实战】5.1 聚合管道基础:理解阶段(Stage)概念
  • 实用指南:(113页PPT)西门子制造业研发工艺协同平台及制造平台整体规划(附下载方式)
  • Vue低代码平台实测红黑榜:别让“伪效率“消耗你的团队
  • 单目实时3D识别
  • 【计算机毕设】移动互联时代新闻编辑力探析(系统配套LW+开题报告+任务书)
  • 构建高效测试体系:测试文档编写规范详解
  • 简单的创建一个Spring Boot网页
  • 【课程设计/毕业设计】基于SpringBoot+Vue茶叶销售系统的设计与实现基于Java语言的茶叶销售系统的前端设计与实现【附源码、数据库、万字文档】
  • 通俗易懂的理解 LLM 知识入门浅析:核心原理、LLM是怎么学习的、LLM的局限性、Transformer 架构、注意力机制、如何训练一个 LLM
  • 如何降低对标注数据的依赖,实现多病种检测与病灶精准定位?请看此文
  • 长沙美食小吃攻略|五一广场 和 太平老街:不是来旅游,是来“吃服”的! - 资讯焦点
  • 第四章算法作业
  • 播放器视频后处理实践(二)氛围模式
  • 版本升级|Origin 2026 科学绘图与数据分析软件
  • 基于改进A*算法融合DWA算法的机器人路径规划MATLAB仿真程序(含注释) 包含传统A*算法...
  • 【课程设计/毕业设计】基于springboot/javaEE的二手手机交易平台的设计与实现基于javaEE的二手手机交易平台的设计与实现【附源码、数据库、万字文档】
  • 基于AI数字人系统源码的低成本开发方案与实践经验
  • K-Means聚类+PCA降维:高维数据聚类的最优组合实战指南