找回密码
 加入计匠网
搜索
热搜: BIOS ACPI CPU Windows
查看: 24895|回复: 15

[请教]当电池充电到98%时,不再充电,EC该如何处理?

[复制链接]
发表于 2009-6-26 00:01:48 | 显示全部楼层 |阅读模式
当电池充电到98%时,不再充电,SMBUS读取的状态值为放电状态。此时,在WINDOWS里看到的电池状态仍然为充电中。请教EC该如何处理?
发表于 2009-6-26 09:22:23 | 显示全部楼层
我的理解,WINDOWS下面不是显示在充电,是显示ADAPTER存在?
& {$ r. `: G5 j1 [0 e  x* W1 b; ]1 n9 ]1 _程序里面应该会有怎么写充满电后的动作。自己追一下。4 z6 F3 C$ C) V$ V. I& d
我新手,有错指正。
回复

使用道具 举报

发表于 2009-6-26 13:25:06 | 显示全部楼层
to rongfeel:# I6 J  f: w/ w% ^% _! l) G4 l: G
這個問題應該是由于FCC變化導致的。
3 X" `8 N5 v! K- K& `) u2 n- w# XOS獲取電池電量信息是通過從EC中讀取RMC和FCC,然后RMC/FCC獲得剩余的電量的%信息。但是實驗發現正常情況下OS只會在啟動的時候讀一次FCC,但是RMC確是大概每隔一秒就讀取一次。因此如果在充電的過程中電池的實際FCC發生了變化,比如變小了那么雖然現在電池已經充滿了但是由于OS最初獲得FCC比現在大,所以RMC/FCC就小于100%,但是EC檢測到電池已經充滿就會停止充電,但是OS算出的%却不是100%,所以會看到充电状态.3 l8 B' F$ v  H/ m0 J

6 ^9 L3 d! {) ~% J5 v9 F( q7 w[ 本帖最后由 peterhu 于 2009-6-28 12:19 编辑 ]
回复

使用道具 举报

 楼主| 发表于 2009-6-26 20:15:30 | 显示全部楼层
感谢大家的回复。8 C% f2 ~  K9 D6 v
to peterhu ,wziy520
9 l2 H  `4 J8 V可能现象我描述的不太清晰,不好意思。
  \5 w4 I- t4 v1 I; H. `/ H4 o我再描述一下,目前,我通过SMBUS查看到电池的BatteryStatus值,为0x00c0(为放电状态)。
" Y# D8 g2 L" d. K- S; I但是在windows里面查看到的不是AC IN icon,而是充电标识。目前电池容量为98%
8 q5 p* m' B4 C' N" @和FCC有关么?
. Q3 i; f$ i" T2 [: j' m' H4 e. x1 ~: a6 ]9 }: \8 ~6 E/ |
谢谢大家的回复。请给点建议。
回复

使用道具 举报

发表于 2009-6-27 14:59:33 | 显示全部楼层
to rongfeel:
: B/ Z  y6 P( H. V4 W6 p* R0 {3 [你把电池拔掉再插上,看看会不会显示已经充满.我说的ACIN ICON是我描述错了,应该是你说的充电状态.我还是觉得和FCC有关.
回复

使用道具 举报

发表于 2009-6-28 00:18:37 | 显示全部楼层

回复 4# rongfeel 的帖子

小问一句:能看到有充电电流么?9 R, Z6 j& v3 w* M
“当电池充电到98%时,不再充电”。
: ?) B$ s0 W0 e% m4 p" K. n7 o    这个楼主如何得知?是仅仅通过SMBUS查看到电池的BatteryStatus值,为0x00c0(为放电状态) 吗? " h4 i1 ?, l2 b1 z( e$ g& K
    记得SBS 里提到的 BatteryStatus Bit5(FULLY CHARGED flag) 表示是否充满(1充满, 0 未满),你此时的BatteryStatus 为0x00c0,bit5(FULLY CHARGED flag)是0,所以应该是没满,并且你说的battery处于放电状态也许不一定呢,因为虽然此时BatteryStatus bit6(DISCHARGING)为1,但是可能是 battery处于self discharge 状态(This may include self  discharge  so it((DISCHARGING=1)) does not   always indicate that a discharge current is present.),所以你要判断是否在放电或在充电应该看有无充电电流。呵呵,希望楼主看了来告诉一下,新手上路,共同学习
回复

使用道具 举报

发表于 2009-6-28 12:27:45 | 显示全部楼层
请读出电池的 "RMC,FCC,剩余电量的百分比",并算一下RMC/FCC看看是不是98%.
! n  G$ N0 x+ m% ^6 ?8 e5 s另外如蓝色永恒所说也有可能是电池的自放电,这种自放电的现象以前也有碰到过,也做了一些work around.
回复

使用道具 举报

 楼主| 发表于 2009-6-28 15:45:21 | 显示全部楼层
to 蓝色永恒:; ?. A# P8 q9 J6 u2 Q
感谢大家的回复。- H1 `: y$ n! _! ^+ q( }
上述情况下,电池充电电流为0。windows这时是不是应该显示AC IN的图标,以及电池为联机状态?但是,我的仍然显示充电中。。9 _: o! l$ C2 z7 [, L# Y
# e' c( Z  j& S0 b
- _9 R+ ?9 D9 m9 I" X$ o% a' N, x
to peterhu:5 q+ m- m. P& D/ l8 y7 P
RMC/FCC是等于98%.
回复

使用道具 举报

发表于 2009-6-28 22:33:53 | 显示全部楼层
“windows这时是不是应该显示AC IN的图标,以及电池为联机状态?但是,我的仍然显示充电中。。”1 V4 {9 I& k% P3 h/ u! O! K
  这个应该是BIOS code根据一些FLAG可以设置的吧,先看你们的BIOS  code 里是怎么处理 让 OS show 这个 图标。然后看对应的条件是否满足,) |+ h9 H6 Y  i# A
   最后请Check Battery 是否没有问题~~
回复

使用道具 举报

发表于 2009-6-29 11:16:28 | 显示全部楼层
to rongfeel:( h' H$ d) E! g( ]# O) U# j
按照你的描述,应该和FCC没有关系是我判断错误:(。
2 V5 s! P# [. R" r3 ^5 NOS每隔一段时间就会call _BST Method获取电池的状态信息,并据此决定充放电的状态,OS应该是根据这些状态决定show icon。
9 R. R$ Z7 L; j/ ~这个状况有点奇怪了。是单机现象还是每一颗电池都这样呢,有没有fail率?有没有换过别家的电池做实验呢?
回复

使用道具 举报

发表于 2009-6-29 22:47:13 | 显示全部楼层
这个也可能和电池有关系!% f7 D& t8 E- E9 h
在WINDOWS里看到的电池状态仍然为充电中,是因为EC给到系统的电池没有充满!
: D$ j. G3 n0 [* g8 `+ p, v0 v3 e) ~9 r* l6 T+ I9 g
首先你看看你的EC是怎么控制充电的,是检测到到电池状态的bit5为1就认为满还是有别的诸如检测到电池超过一定的容量才认为满了!还要看看电池的充电电流是EC拉的还是电池芯片禁止充电的!
$ p2 ]! y) h. f9 z7 {( c
6 _1 {& Z, }8 m再看看是单板问题,单个电池还是所有电池所有板子都只能充到98%!
回复

使用道具 举报

 楼主| 发表于 2009-7-4 13:37:08 | 显示全部楼层
是单板问题。谢谢各位回复,我再试试其他电池。
回复

使用道具 举报

发表于 2010-6-17 16:13:47 | 显示全部楼层
请试一下单电池用DC Source 充电是否可以充满 FC为1 有遇到过电池用系统只能充到百分之九十几 用DC Source 则可以充满 电池 Reset后就好了
回复

使用道具 举报

发表于 2010-6-17 17:56:45 | 显示全部楼层
楼上的现在回答会不会晚了点?
回复

使用道具 举报

发表于 2011-5-30 19:16:22 | 显示全部楼层
一年前的LSD楼上还在这么激情的回复
回复

使用道具 举报

发表于 2012-1-5 00:42:08 | 显示全部楼层

回复 14# dingchao0205 的帖子

不晚的,后续的新人可以拜读一下哈。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入计匠网

本版积分规则

Archiver|手机版|小黑屋|计匠网

GMT+8, 2025-6-17 10:33 , Processed in 0.151121 second(s), 16 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表