跳转至

对外"电源",Vref

1、本章节的"电源"之所以加引号,是因为并不是真正的电源,既不是模组内部的DCDC,也不是模组内部的LDO,而是模组的一个AGPIO管脚;

2、大家还记得我们在VDD_EXT章节中对VDD_EXT一个重要特性的介绍吗?

  • VDD_EXT标称输出电流最大至200mA,但是,VDD_EXT同时用于模组芯片内部和外部,为了保证内部该电压域负载的使用稳定性,请保证外部负载消耗电流不要超过50mA;
  • VDD_EXT在 低功耗模式pm.WORK_MODE,1 状态下间歇性输出,频率和与通信协议要求的时间间隔相同,通常为0.64S/1.28S/2.56S中的一个,因此,在可能影响低功耗模式pm.WORK_MODE,1 下中断唤醒的场合,要避免使用VDD_EXT做上拉电平用,比如UART1电平转换电路(UART1为LPUART,低功耗模式pm.WORK_MODE,1 下可被唤醒); 如下图所示,如果图中的VREF电源使用的是VDD_EXT,那么低功耗模式pm.WORK_MODE,1 下模组的UART1_RX频繁的高低电平变化就会将模组唤醒,进而导致模组退出低功耗模式而功耗无法降低;

也正是因为类似场景的需要,所以会将譬如PIN99:GPIO23这样的AGPIO固定输出高作为Vref使用,一般来说,如果没有其它特殊情况,都是将PIN99:GPIO23作为Vref参考电压使用;

3、UART1电平转换电路里出现的VREF,就是我们今天要介绍的对外"电源":Vref;

4、Vref,本质上指的是AGPIO3-8这6个GPIO23-28,在 低功耗模式pm.WORK_MODE,1 和PSM+模式pm.WORK_MODE,3 下都可以保持固定电平输出的GPIO23-28;

说明!作为Vref使用时,GPIO23-28保持固定电平输出指的是固定高电平输出;

5、那"电源"为什么要加引号呢?

  • 第一,Vref本质只是一个AGPIO,可以在休眠状态下保持高电平输出的GPIO,不是电源;
  • 第二,AGPIO3-8的电流输出能力最大只有5mA,且AGPIO3-8这6路GPIO的总电流输出能力最大也只有5mA,从这一点来看,也不能称之为电源;
  • 关于AGPIO3-8的详细介绍,大家可以看第十二章节的详细介绍;

6、在合宙模组的实际应用中,一般默认固定推荐PIN99:GPIO23作为Vref使用,当然:

  • 其它5个管脚,GPIO24-28,如果软件设置为一直输出高,也可以作为Vref使用;
  • GPIO23,当然也是一个普通的AGPIO,如果不做Vref,本身与GPIO24-28没有任何区别;

7、除了上面提到的UART电平转换电路,Vref还在哪些场合经常被用到?

  • SIM卡插入检测,给USIM_DET(WAKEUP2)做上拉用;

说明!图中的VREF_VOLIT就是Vref,在不同的原理图中可能存在不同的命名,请理解;

  • 在合宙的通信定位二合一模组中,比如Air780EGP/Air780EGG/Air780EGH/Air8000G等型号中,Vref用来作为内置GNSS定位芯片的备用供电电源使用,在Air780EGP/EGG中也作为加速度传感器G-Sensor的供电电源使用,这两处的耗电都非常小,100uA以内,可以满足;

  • 再次强调一下,当前合宙自己的模组、开发板、核心板或对外资料中,都是拿PIN99:GPIO23作为Vref使用的,但并不妨碍GPIO23-28也可以作为Vref,也并不妨碍PIN99作为GPIO23使用;

  • 需要特别指出的是,如果你的硬件需要在休眠状态下(低功耗模式pm.WORK_MODE,1 和 PSM+模式pm.WORK_MODE,3)也可以稳定输出的电源,请根据需要选择外置的DCDC或者LDO,VDD_EXT在休眠状态下不可以稳定输出,Vref压根就不是"电源",请特别注意!

8、使用Vref功能的顺序是,先将PIN99配置为GPIO23,再将GPIO23设置为输出高;

  • 将PIN99配置为GPIO23,通过LuatIO工具进行配置(详见第十三章节的介绍);

  • 设置GPIO23输出高电平;
-- 设置gpio23为输出,且初始化电平为高
gpio.setup(23, 1)
  • 需要提醒的是,GPIO23作为Vref使用时会增加系统功耗,通常会增加100uA+,一般不超过200uA,请根据自己应用的定义和需要谨慎设计;

9、Vref(GPIO23)在合宙不同型号模组中的出厂默认设置;

  • Air8000系列模组,带WiFi功能的型号,比如Air8000A/Air8000W/Air8000U/Air8000N/Air8000AB,GPIO23用于控制WiFi功能使能;

如果需要将WiFi芯片关闭以节省功耗,可以使用pm.power(pm.WIFI, 0)关闭,pm.power(pm.WIFI, 0)本质上是控制GPIO23输出低;

  • Air780Exx系列模组,带GNSS定位的型号,比如Air780EGH,Air780EGG,Air780EGP,GPIO23模组内部皆有使用,外部需要更改其状态时,需注意如下事项;

Air780EGP和Air780EGG这两个型号,内置G-Sensor后,必然会暂用系统的资源,比如G-Sensor的供电控制,比如G-Sensor判断振动后的中断输入,比如I2C1的占用等;

对于Air780EGP和Air780EGG这两个型号,I2C1内部挂载了G-Sensor,如果还需要在模组外部挂载其它外设时,比如摄像头,此时务必要保持GPIO23为默认的输出高状态,不可将GPIO23改为输出低的状态,否则会影响该I2C1总线的正常初始化;

另外,Air780EGH内部用于GNSS芯片的后备供电,以便星历保持,在需要时热启动;Air780EGP/Air780EGG除给GNSS芯片后备供电外,还给G-Sensor供电;将GPIO23设置为输入可以进一步降低功耗,代价是关闭了G-Sensor震动唤醒和GNSS备电不再支持热启动两个功能,大家根据自己的实际场景进行选择和设置;

以下是Air780EGP/Air780EGG两款模组中内部占用的信号管脚,以及对应的详细说明;

管脚 信号 Air780EGH Air780EGPAir780EGG
PIN107 GPIO21 内部用于主控芯片打开和关闭GNSS芯片
PIN28/29 UART2 内部用于主控芯片与GNSS芯片通信用
PIN99 GPIO23(Vref) Air780EGH内部用于GNSS芯片的后备供电,以便星历保持,在需要时热启动Air780EGP/Air780EGG除给GNSS芯片后备供电外,还给G-Sensor供电
PIN66/67 I2C1 未被占用 Air780EGH内部没有占用,可作为I2C1供外部自由使用,也可复用为其它功能Air780EGP/EGG内部将此管脚作为I2C1挂载了G-Sensor,因此外部只可作为I2C1使用,且不能与内部G-Sensor的I2C地址0x27冲突,且外部使用I2C1时需保持GPIO23为默认输出高的状态,不可将GPIO23改为输出低的状态,否则会影响该I2C1总线的正常初始化;
PIN79 WAKEUP2(USIM_DET) 未被占用 Air780EGH与Air780EPM/EHV等一样,供外部用作SIM卡热插拔检测Air780EGP/EGG内部将此管脚用作了G-Sensor振动时的中断输入,外部不可再用
  • 注意强制输出高,不可更改;其它型号,GPIO23没做处理,也没有根据是否启用SIM2做GPIO23强制输出高的设置,需要自己手动设置;