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

展锐Android13电池问题导致系统的崩溃,(2)电池电压计算和电池曲线

  先看is_bat_low函数的代码:

#ifndef LOW_BAT_VOL
//#  define LOW_BAT_VOL		3400
#define LOW_BAT_VOL		3672
#endif
#ifndef LOW_BAT_VOL_CHG
//#  define LOW_BAT_VOL_CHG	3500 
#define LOW_BAT_VOL_CHG	3719
#endifint is_bat_low(void)
{int32_t vbat_vol;uint16_t comp_vbat;...............if (charger_connected()) {comp_vbat = LOW_BAT_VOL_CHG;} else {comp_vbat = LOW_BAT_VOL;}vbat_vol = sprdfgu_read_vbat_vol();dprintf(ALWAYS,"sprd_chg: %s vbat_vol:%d,comp_vbat:%d\n",__func__, vbat_vol, comp_vbat);if (vbat_vol < comp_vbat)return 1;elsereturn 0;}

函数包含充电状态、非充电状态电池电量是否过低的检查,3400、3500是原有的电压宏定义,计量单位mV(毫伏),这个定义的标准需要参考当前电池的电池曲线,根据配置的dts文件查找,
查到的是:

................
<3706000 11 >,
..............
<3687000 7  >,
<3684000 6  >,
<3680000 5  >,
<3672000 4  >,
<3649000 3  >,
<3610000 2  >,
................

左面参数是电压,uV(微伏);右侧是电池电量百分比,开机后显示的电池电量和电池电压的对应关系就在这。好吧,my god,差了好多,这是只要有电就开机。

参考电池曲线对应的电压标准重新定义,让他电量低于一个标准就没法从开机。

充电状态下,电池电压会略微高点,根据实测值调整。

本以为到这就结束了,又碰到一种电池,低压状态下电池输出功率不够,电压变化非常大,还要继续改。

手机上看到的电池电量也是这么计算,电池老化后,电压波动也会非常大,显示的结果就是电池电量掉的非常快。


 

http://www.dtcms.com/a/152413.html

相关文章:

  • JAVA聚焦OutOfMemoryError 异常
  • STM32F407使用ESP8266实现阿里云OTA(下)
  • Red:1靶场环境部署及其渗透测试笔记(Vulnhub )
  • Python面向对象编程相关的单选题和多选题
  • 测试基础笔记第十一天
  • 济南国网数字化培训班学习笔记-第二组-2节-输电线路施工及质量
  • Linux基础篇、第四章_01软件安装rpm_yum_源码安装_二进制安装
  • Linux基础
  • yt-dlp 下载时需要 cookie
  • 【Redis】 Redis中常见的数据类型(二)
  • 【玩转全栈】—— 无敌前端究极动态组件库--Inspira UI
  • 大语言模型的“模型量化”详解 - 02:量化参数 主流量化参数全面解读与实战-Q/K/IQ/TQ 到 GGUF 的完整流程
  • SpringMVC处理请求映射路径和接收参数
  • Android studio进阶开发(四)--okhttp的网络通信的使用
  • 【云计算】云计算中IaaS、PaaS、SaaS介绍
  • Linux Awk 深度解析:10个生产级自动化与云原生场景
  • 大语言模型的“模型量化”详解 - 03:【超轻部署、极致推理】KTransformers 环境配置 实机测试
  • 函数模板 (Function Templates)
  • Kafka命令行的使用/Spark-Streaming核心编程(二)
  • MCP协议最新进展分析报告
  • 产品经理对于电商接口的梳理||电商接口文档梳理与接入
  • 【Axure教程】表格嵌套卡片
  • Axure复选框组件的深度定制:实现自定义大小、颜色与全选功能
  • NestJS 统一异常处理 + 日志追踪链路设计
  • MySQL数据库基本操作-DQL-基本查询
  • 从低星到4.5+:ASO优化如何重塑Google Play评分与用户信任
  • 【网络应用程序设计】实验四:物联网监控系统
  • Spring Cloud Gateway配置双向SSL认证(完整指南)
  • 算法题(133):二维差分
  • 银河麒麟(内核CentOS8)安装rbenv、ruby2.6.5和rails5.2.6