关机充电拨适配器自动开机

2023-11-21 20:40

本文主要是介绍关机充电拨适配器自动开机,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

platform:RK3399
OS:Android 7.1

现象描述

关机充电需求如下:

1.插上充电器,一直充电;a.充电时按开机键,开机b.如果拔掉充电器(断电),保持关机;
2.未插上充电器,按开机键;b.电量高于5%(&& 电压高于6.894V),开机  c.否则不开机

但是关机充电拔掉适配器会开机,这显然是不符合需求的.

分析步骤

步骤1:确认是否有走关机逻辑

抓log发现

charger disconnceted.
do_charge :shutting down...
rk808 shut dDDR Version 1.22 20190506
In

确实走了rk808的关机逻辑,但是仍然会开机.说明关机之后满足RK808的开机条件.

步骤2:查看RK808数据手册的开机逻辑

在这里插入图片描述

测量PWRON开机回路发现在拔适配器的时候没有低电平.

但是测试INT中断引脚发现拔掉之后竟然会有一个中断(蓝色下降沿为拔适配器,黄色低电平为INT中断)

在这里插入图片描述

尝试关机之前关闭中断

int do_charge(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
{...//disable irqdisable_interrupts();printf("disable interrupts\n");shut_down();

发现仍然会关机后重启.显然不是关机前的中断出发导致RK808达到开机条件.

步骤三:查看硬件重启条件

查看硬件设计手册,发现RK808上电条件:

  1. PWRON拉低500ms
  2. VDC电压高于0.6V
  3. 内部RTC Alarm开机使能并定时时间到.

条件1已经测试过了,条件3并没有设置RTC,所以锁定在条件2.

测试发现VDC从1.2降低到0.6V的阈值竟然用了大约1020ms,而由上图知道关机从拔适配器到关机大概只有280ms.所以关机之后,RK808检测到VDC高于0.6V,再次开机了.

在这里插入图片描述

解决方法

找到了问题解决方法就好办了.可以从两个方向来解决:

  1. 降低VDC电压,使其刚好达到开机检测电压,比如0.7V
  2. 减少VDC降低到0.6V的时间.

VDC部分电路如下:
在这里插入图片描述

  • 更换分压电阻R1217和R1216的比值就可以降低VDC的电压;
  • 去掉C1239或者更换更小的电容.

经过实验发现,只用适当更换R1217之后,VDC会在拔适配器之后的几毫秒之内降到阈值0.6V以下.

这篇关于关机充电拨适配器自动开机的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/404962

相关文章

基于Python开发电脑定时关机工具

《基于Python开发电脑定时关机工具》这篇文章主要为大家详细介绍了如何基于Python开发一个电脑定时关机工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 简介2. 运行效果3. 相关源码1. 简介这个程序就像一个“忠实的管家”,帮你按时关掉电脑,而且全程不需要你多做

windows系统下shutdown重启关机命令超详细教程

《windows系统下shutdown重启关机命令超详细教程》shutdown命令是一个强大的工具,允许你通过命令行快速完成关机、重启或注销操作,本文将为你详细解析shutdown命令的使用方法,并提... 目录一、shutdown 命令简介二、shutdown 命令的基本用法三、远程关机与重启四、实际应用

C++ STL 适配器

系列文章目录 模板特例化,偏特化,左右值引用 https://blog.csdn.net/surfaceyan/article/details/126794013 C++ STL 关联容器 https://blog.csdn.net/surfaceyan/article/details/127414434 C++ STL 序列式容器(二) https://blog.csdn.net/surfac

Windows系统不关机故障的解决方法

当Windows系统出现不关机故障时,首先要查找引起Windows系统不关机的原因,然后根据 具体的故障原因采取相应的解决方法。   Windows系统不关机故障的解决方法如下。   1.检查所有正在运行的程序   检查运行的程序主要包括关闭任何在实模式下加载的TSR程序、关闭开机时从启动组自动启 动的程序、关闭任何非系统引导必需的第三方设备驱动程序。   检查运行的程序并停

漫谈设计模式 [6]:适配器模式

引导性开场 菜鸟:老鸟,我最近在项目中遇到一个问题,我们的系统需要集成一个新的第三方库,但这个库的接口和我们现有的代码完全不兼容。我该怎么办? 老鸟:这是个常见的问题,很多开发者都会遇到这种情况。你有没有听说过适配器模式? 菜鸟:适配器模式?没有,能详细说说吗? 老鸟:当然可以!这就是我们今天要讨论的主题。适配器模式是一个设计模式,可以帮助我们解决你现在遇到的问题。 渐进式介绍概念 老

多款式随身WiFi如何挑选,USB随身WiFi、无线电池随身WiFi、充电宝随身WiFi哪个好?优缺点分析!

市面上的随身WiFi款式多样琳琅满目,最具代表性的就是USB插电款、无线款和充电宝款。今天就来用一篇文章分析一下这三种款式的优缺点。 USB插电款 优点:便宜,无需充电,在有电源的地方可以随时随地插电使用,比如中兴的USB随身WiFi。 缺点:无电源的情况下,无法带出门使用,部分品牌考虑到这个问题,会配备一个充电仓,这个充电仓相对来说就有点累赘了。网速上也不太稳定,波动比较大。

Java语言的Netty框架+云快充协议1.5+充电桩系统+新能源汽车充电桩系统源码

介绍 云快充协议+云快充1.5协议+云快充1.6+云快充协议开源代码+云快充底层协议+云快充桩直连+桩直连协议+充电桩协议+云快充源码 软件架构 1、提供云快充底层桩直连协议,版本为云快充1.5,对于没有对接过充电桩系统的开发者尤为合适; 2、包含:启动充电、结束充电、充电中实时数据获取、报文解析、Netty通讯框架、包解析工具、调试器模拟器软件等; 源码合作 提供完整云快充协议源代码

QDI主板的保护功能导致的电脑关机故障

由于QDI主板中的一种系统保护技术CPU Triple protection被激活导致电脑在刚开机几分钟后就自动关机的。   这种技术在用户开机时就开始运行,对CPU的温度进行实时的侦测,当发现CPU达到一定温度时即强行将CPU进行降速工作状态。如果温度继续升高,达到危险值时便会强行关机,以保护CPU,不会因为温度过高而烧毁。作为QDI的创新技术这一,这项技术主要是为了避免因CPU风扇安装不善

java设计模式day03--(结构型模式:代理模式、适配器模式、装饰者模式、桥接模式、外观模式、组合模式、享元模式)

5,结构型模式 结构型模式描述如何将类或对象按某种布局组成更大的结构。它分为类结构型模式和对象结构型模式,前者采用继承机制来组织接口和类,后者釆用组合或聚合来组合对象。 由于组合关系或聚合关系比继承关系耦合度低,满足“合成复用原则”,所以对象结构型模式比类结构型模式具有更大的灵活性。 结构型模式分为以下 7 种: 代理模式 适配器模式 装饰者模式 桥接模式 外观模式 组合模式

【最新华为OD机试E卷-支持在线评测】查找充电设备组合(200分)-多语言题解-(Python/C/JavaScript/Java/Cpp)

🍭 大家好这里是春秋招笔试突围 ,一枚热爱算法的程序员 ✨ 本系列打算持续跟新华为OD-E/D卷的三语言AC题解 💻 ACM金牌🏅️团队| 多次AK大厂笔试 | 编程一对一辅导 👏 感谢大家的订阅➕ 和 喜欢💗 🍿 最新华为OD机试D卷目录,全、新、准,题目覆盖率达 95% 以上,支持题目在线评测,专栏文章质量平均 94 分 最新华为OD机试目录: https://blog.