当前位置:网站首页>i.MX6ULL SNVS电源域GPIO状态保持验证
i.MX6ULL SNVS电源域GPIO状态保持验证
2022-07-26 01:58:00 【szembed】
以下内容已经在盈鹏飞嵌入式I.MX6UL核心板_Iot-6ULX+EVB-6ULX平台验证通过,Iot-6ULX/EVB-6ULX平台介绍如下:


i.MX6ULL SNVS_GPIO状态设置及保存测试
为了验证i.MX6ULL处理器 SNVS_GPIO在不同的电源模式下的运行状态,在EVB-T6UL板上进行本次测试。
本次测试的方式是在系统启动运行进入到ON模式,通过指令对GPIO进行输出配置,然后再通过指令操作使系统的电源模式从ON模式切换到其他模式,判断GPIO的配置状态是否保存。其中重点关注从ON切换到OFF模式,SNVS电源域只由纽扣电池供电的情况下,SNVS_GPIO的状态。
1.硬件电路改动1
测试过程中选用GPIO5_IO2和GPIO5_IO3两个端口进行验证,这两个端口在EVB-T6UL设计中应用在看门狗复位电路。为了排除看门狗芯片对IO状态的影响,以及相关供电电路中元件产生压降导致供电电压降低对SNVS电源的影响,测试前,需要对EVB-T6UL的硬件电路进行修改。
硬件电路改动说明如下:
EVB-T6UL底板上排除对测试IO状态的影响,拆除看门狗芯片TPL5010(U33)。降低电路中元件产生的压降,R124改为0R电阻,拆除RTC芯片RX8010(U31)。使核心板上VDD_BAT在OFF模式由纽扣电池供电,底板上焊接R123,不焊R122。
COM-T6UL核心板上拆除复位指示灯D3及串联电阻R43,拆除电阻R42。


EVB-T6UL底板上硬件改动1
EVB-T6UL底板上硬件改动2

2.验证测试1
电路修改完成后,开始测试,此时核心板上VDD_SNVS_IN电源由VDD_3V3和VDD_BAT两个电源同时供电。VDD_3V3由底板上3.3V电源供电,VDD_BAT由底板上的纽扣电池和3.3V电源同时供电。
产品上电启动后,输入指令cat /sys/power/state,可查看系统支持的电源管理模式:

电源管理模式说明:
电源管理模式 | 定义 | 说明 |
on | Power on | 该模式系统正常工作状态 |
freeze | Suspend to idle (s2idle) | 该模式冻结用户空间,所有IO置于低功耗状态,处理器更多处于空闲状态 |
standby | Power on suspend (shallow) | 该模式冻结用户空间,所有IO置于低功耗状态,非引导的CPU脱机,低级别系统功能被挂起 |
mem | Suspend to RAM (deep) | 该模式系统和设备状态保存在RAM中,出RAM外的所有设备进入低功耗状态,RAM则进入self-refresh模式 |
off | Power down | 该模式系统电源关断 |
系统启动后,可输入IO控制指令,通过测量IO的电平,验证IO状态是否可以设置。
IO控制指令说明:
电源管理模式 | 说明 |
gpionum= | 输入要控制的IO口编号 |
echo ${gpionum} > /sys/class/gpio/export | 执行后,在当今前目录生成 gpio节点 |
echo out > /sys/class/gpio/gpio${gpionum}/direction | 设置 GPIO 引脚方向,配置为输出 |
echo 1 > /sys/class/gpio/gpio${gpionum}/value | 配置IO口电平,高电平(输出) |
echo 0 > /sys/class/gpio/gpio${gpionum}/value | 配置IO口电平,低电平(输出) |
2.1 Freeze模式
EVB-T6UL上电启动,进入ON模式,测量GPIO5_IO2和GPIO5_IO3,默认为低电平,输入IO控制指令,可控制IO置高或者置低,IO状态可设置。
将GPIO5_IO2和GPIO5_IO3设置为高电平,输入电源模式切换指令echo freeze> /sys/power/state,进入freeze模式,测量GPIO5_IO2和GPIO5_IO3为高电平,状态可保存。以下为终端显示界面以及测试记录:

测试条件:Battery≈3.2V。
电源管理模式 | VDD_BAT | VDD_SNVS_IN | GPIO5_IO2 | GPIO5_IO3 |
on | 3.11V | 3.19V | 可设置,VH≈3.19V | 可设置,VH≈3.19V |
freeze | 3.11V | 3.19V | 可保存,V≈3.19V | 可保存,V≈3.19V |
说明:VDD_BAT和VDD_SNVS_IN均为COM-T6UL核心板上的电源。
系统进入freeze模式后,终端不可操作,板上无触发启动元件,产品需断电重启。
2.2 Standby模式
EVB-T6UL上电启动,进入ON模式,将GPIO5_IO2和GPIO5_IO3设置为高电平,输入电源模式切换指令echo standby> /sys/power/state,进入standby模式,测量GPIO5_IO2和GPIO5_IO3为高电平,状态可保存。以下为终端显示界面以及测试记录:

测试条件:Battery≈2.9V。
电源管理模式 | VDD_BAT | VDD_SNVS_IN | GPIO5_IO2 | GPIO5_IO3 |
on | 3.11V | 3.18V | 可设置,VH≈3.18V | 可设置,VH≈3.18V |
standby | 3.11V | 3.20V | 可保存,V≈3.20V | 可保存,V≈3.20V |
系统进入standby模式后,终端不可操作,板上无触发启动元件,产品需断电重启。
2.3 Mem模式
EVB-T6UL上电启动,进入ON模式,将GPIO5_IO2和GPIO5_IO3设置为高电平,输入电源模式切换指令echo mem> /sys/power/state,进入standby模式,测量GPIO5_IO2和GPIO5_IO3为高电平,状态可保存。以下为终端显示界面以及测试记录:

测试条件:Battery≈3.2V。
电源管理模式 | VDD_BAT | VDD_SNVS_IN | GPIO5_IO2 | GPIO5_IO3 |
on | 3.11V | 3.19V | 可设置,VH≈3.19V | 可设置,VH≈3.19V |
mem | 3.11V | 3.19V | 可保存,V≈3.19V | 可保存,V≈3.19V |
系统进入mem模式后,终端不可操作,板上无触发启动元件,产品需断电重启。
2.4 OFF模式
EVB-T6UL上电启动,进入ON模式,将GPIO5_IO2和GPIO5_IO3设置为高电平,然后关闭电源,进入OFF模式,测量GPIO5_IO2和GPIO5_IO3为低电平,状态不可保存。以下为测试记录:
测试条件:Battery≈2.9V。
电源管理模式 | VDD_BAT | VDD_SNVS_IN | GPIO5_IO2 | GPIO5_IO3 |
on | 3.11V | 3.18V | 可设置,VH≈3.18V | 可设置,VH≈3.18V |
off | 2.7V | 2.56V | 不可保存,V=0V | 不可保存,V=0V |
COM-T6UL上不执行Disk模式,所以此模式不做说明。
3.硬件电路改动2
在经过硬件电路改动1后,核心板上VDD_SNVS_IN电源由VDD_3V3和VDD_BAT两个电源同时供电。为验证VDD_SNVS_IN由纽扣电池单独供电,排除底板VDD_3V3的影响,SNVS_GPIO的状态设置及保存情况,需要在硬件电路改动1的基础上,再次修改电路。
硬件电路改动说明如下:
EVB-T6UL底板上拆除D24,VDD_BAT由纽扣电池单独供电。
COM-T6UL核心板上拆除D2,R42贴0R电阻,VDD_SNVS_IN由VDD_BAT单独供电。


4.验证测试2
电路修改完成后,开始测试,此时核心板上VDD_SNVS_IN电源由VDD_BAT单独供电,VDD_BAT则由纽扣电池单独供电。
2.1 Freeze模式
EVB-T6UL上电启动,进入ON模式,将GPIO5_IO2和GPIO5_IO3设置为高电平,输入电源模式切换指令echo freeze> /sys/power/state,进入freeze模式,测量GPIO5_IO2和GPIO5_IO3为高电平,状态可保存。以下测试记录:
测试条件:Battery≈2.82V。
电源管理模式 | VDD_BAT | VDD_SNVS_IN | GPIO5_IO2 | GPIO5_IO3 |
on | 2.82V | 2.82V | 可设置,VH≈2.82V | 可设置,VH≈2.82V |
freeze | 2.82V | 2.82V | 可保存,V≈2.82V | 可保存,V≈2.82V |
系统进入freeze模式后,终端不可操作,板上无触发启动元件,产品需断电重启。
2.2 Standby模式
EVB-T6UL上电启动,进入ON模式,将GPIO5_IO2和GPIO5_IO3设置为高电平,输入电源模式切换指令echo standby> /sys/power/state,进入standby模式,测量GPIO5_IO2和GPIO5_IO3为高电平,状态可保存。以下为终端显示界面以及测试记录:
测试条件:Battery≈2.84V。
电源管理模式 | VDD_BAT | VDD_SNVS_IN | GPIO5_IO2 | GPIO5_IO3 |
on | 2.84V | 2.84V | 可设置,VH≈2.84V | 可设置,VH≈2.84V |
standby | 2.84V | 2.84V | 可保存,V≈2.84V | 可保存,V≈2.84V |
2.3 Mem模式
EVB-T6UL上电启动,进入ON模式,将GPIO5_IO2和GPIO5_IO3设置为高电平,输入电源模式切换指令echo mem> /sys/power/state,进入standby模式,测量GPIO5_IO2和GPIO5_IO3为高电平,状态可保存。以下为终端显示界面以及测试记录:
测试条件:Battery≈2.9V。
电源管理模式 | VDD_BAT | VDD_SNVS_IN | GPIO5_IO2 | GPIO5_IO3 |
on | 2.9V | 2.9V | 可设置,VH≈2.9V | 可设置,VH≈2.9V |
mem | 2.9V | 2.9V | 可保存,V≈2.9V | 可保存,V≈2.9V |
系统进入mem模式后,终端不可操作,板上无触发启动元件,产品需断电重启。
2.4 OFF模式
EVB-T6UL上电启动,进入ON模式,将GPIO5_IO2和GPIO5_IO3设置为高电平,然后关闭电源,进入OFF模式,测量GPIO5_IO2和GPIO5_IO3为低电平,状态不可保存。以下为测试记录:
测试条件:Battery≈2.83V。
电源管理模式 | VDD_BAT | VDD_SNVS_IN | GPIO5_IO2 | GPIO5_IO3 |
on | 2.83V | 2.83V | 可设置,VH≈2.83V | 可设置,VH≈2.83V |
off | 2.83V | 2.83V | 不可保存,V=0V | 不可保存,V=0V |
5.测试结论
通过上述验证,可得出以下结论:
1、电源模式在ON模式,SNVS_GPIO电平状态可设置,可保持。
2、电源模式由ON切换到Freeze模式,SNVS_GPIO可保存,不可设置。
3、电源模式由ON切换到Standby模式,SNVS_GPIO可保存,不可设置。
4、电源模式由ON切换到Mem模式,SNVS_GPIO可保存,不可设置。
5、电源模式由ON切换到OFF模式,SNVS_GPIO不可保存。
边栏推荐
- Leetcode/ numbers that appear only once
- How to do Taobao live broadcast and how to do the anchor to drain and sell products
- Web3.0 blog DAPP development practice [2022]
- F. Equal multisets (greedy)
- 图像批处理高斯滤波降噪+峰值信噪比计算
- Programming basic environment variable setting of in-house SOC
- What is the difference between for... In... And for... Of
- 劳驾问一下各位老师 oracle 到pg cdc oracle 那边字段大写 pg 这边小写 同
- Pt onnx ncnn conversion problem record (followed by yolov5 training)
- [Verilog digital system design (Xia Yuwen) 4 ----- basic concepts of Verilog syntax 2]
猜你喜欢

D. Rating compression (thinking + double pointer)

The detailed knowledge summary of MySQL can be collected

保护系统日志服务器和设备

Create a future and enjoy extraordinary | gbase Nantah General Motors unveiled opengauss Developer Day 2022

SVN version control branch and merge function use

The work of robot engineering and the puzzle of postgraduate entrance examination "volume" supplement

After reading this article, you should thoroughly understand how to do interface testing

IP address of the network

【Verilog数字系统设计(夏宇闻)4-----Verilog语法的基本概念2】
![[Verilog digital system design (Xia Yuwen) 4 ----- basic concepts of Verilog syntax 2]](/img/fe/746ecaf4123072cca59d7510e9796c.png)
[Verilog digital system design (Xia Yuwen) 4 ----- basic concepts of Verilog syntax 2]
随机推荐
《穷爸爸与富爸爸》读后小结
【2021】【论文笔记】6G技术愿景——OTFS调制技术
[independent station construction] Shopify seller: learn these points and double the sales volume of online stores!
pdf. JS introduction
Pt onnx ncnn conversion problem record (followed by yolov5 training)
6 + 1 skills of Software Test Engineer
D - Dire Wolf (interval DP)
Infinite fraction path (BFS pruning)
阿里云Redis开发规范
Relationship between HTC mobile official solution, s-on/s-off and super CID
CPU的三种模式
Summary after reading "poor dad and rich dad"
SQL injection tutorial: learn through examples
Implementation of recommendation system collaborative filtering in spark
SVN版本控制分支、合并功能使用
What is cross site scripting (XSS)?
Video game quiz? I think it's useless. It's better to do these well!
E2. escape the maze (hard version)
网络之IP地址
Why does the debugger display the wrong function
