6262|13

63

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

電池驅動USB插拔造成display power off的問題 [复制链接]

最近在寫battery驅動,發現設置ACLineStatus后會造成LCD關閉。但是點擊Touchpanel或者按鍵,LCD又會重新打開。就像是進入systemidle關閉屏幕一樣。如果將ACLineStatus 設置為AC_LINE_UNKNOWN,即不設置AC ON/OFF狀態就沒有此現象。

在battery驅動里面,我是這樣做的。
當我插入USB的時候,gpStatus->sps.ACLineStatus = AC_LINE_ONLINE;
拔出USB的時候gpStatus->sps.ACLineStatus = AC_LINE_OFFLINE;
但是每次插把的時候,OS會自動調用Display driver的D4狀態。

根據我的分析,可能是插拔USB,造成AC和DC電源切換。系統會發送給POWERSTATUSCHANGE,PM將LCD關閉了。
但是我不想關閉。
請問各位TX有沒有遇到過此現象,有什么好的建議,謝謝?

最新回复

1. 是ce5.0中的common.reg么,有些注册项是5.0上没有的,是>windows mobile5.0的 2. 期待结果 3. Screen off应该可以直接看出来吧,不存在好像吧?呵呵  详情 回复 发表于 2010-1-13 15:13
点赞 关注

回复
举报

75

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
友情帮顶!
 
 

回复

70

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
1. 先描述一下battery中对这部分的处理
BatteryThreadProc线程中调用BatteryAPIGetSystemPowerStatusEx2去获取pdd层返回的电源状
态,发现与之前不一致的时候,就会调用PowerPolicyNotify(PPN_POWERCHANGE, 0)
2. 其实,PowerPolicyNotify就是统治pm来进行电源状态的一些处理,所以你的情况实际上就是ac/dc状态和系统pm状态映射的问题,该部分在注册表中实现

下午有时间了看一下,再给你回复
 
 
 

回复

84

帖子

0

TA的资源

一粒金砂(初级)

4
 
友情帮顶
 
 
 

回复

79

帖子

0

TA的资源

一粒金砂(初级)

5
 
引用 2 楼 guopeixin 的回复:
1. 先描述一下battery中对这部分的处理
BatteryThreadProc线程中调用BatteryAPIGetSystemPowerStatusEx2去获取pdd层返回的电源状
态,发现与之前不一致的时候,就会调用PowerPolicyNotify(PPN_POWERCHANGE, 0)
2. 其实,PowerPolicyNotify就是统治pm来进行电源状态的一些处理,所以你的情况实际上就是ac/dc状态和系统pm状态映射的问题,该部分在注册表中实现

下午有时间了看一下,再给你回复


感謝幫忙。注冊表中一些相關設置都有進行設置,但是沒什么效果,也沒有找到AC/DC切換部分對EVENT事件的處理。
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\Timeouts]
; @CESYSGEN IF PM_PM_DEFAULT_PDD
    "ACUserIdle"=dword:0               
    "ACSystemIdle"=dword:0           
    "ACSuspend"=dword:0
    "BattUserIdle"=dword:0       
    "BattSystemIdle"=dword:0       
    "BattSuspend"=dword:0       
    "ACSuspendTimeout"=dword:0               
    "ACResumingSuspendTimeout"=dword:0          
    "BattSuspendTimeout"=dword:0               
    "BattResumingSuspendTimeout"=dword:0

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power]
       "BattPowerOff"=dword:0
       "ExtPowerOff"=dword:0
       "WakeupPowerOff"=dword:0
       "ScreenPowerOff"=dword:0
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

6
 
先帮顶下。

 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(初级)

7
 
自己頂一下~
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

8
 
帮你顶下, 关注。
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

9
 
查一下你的背光驱动吧。
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

10
 
引用 4 楼 skynet000 的回复:
引用 2 楼 guopeixin 的回复:
1. 先描述一下battery中对这部分的处理
BatteryThreadProc线程中调用BatteryAPIGetSystemPowerStatusEx2去获取pdd层返回的电源状
态,发现与之前不一致的时候,就会调用PowerPolicyNotify(PPN_POWERCHANGE, 0)
2. 其实,PowerPolicyNotify就是统治pm来进行电源状态的一些处理,所以你的情况实际上就是ac/dc状态和系统pm状态映射的问题,该部分在注册表中实现

下午有时间了看一下,再给你回复


感謝幫忙。注冊表中一些相關設置都有進行設置,但是沒什么效果,也沒有找到AC/DC切換部分對EVENT事件的處理。
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\Timeouts]
; @CESYSGEN IF PM_PM_DEFAULT_PDD
? ? "ACUserIdle"=dword:0
? ? "ACSystemIdle"=dword:0 ?
? ? "ACSuspend"=dword:0
? ? "BattUserIdle"=dword:0
? ? "BattSystemIdle"=dword:0
? ? "BattSuspend"=dword:0
? ? "ACSuspendTimeout"=dword:0
? ? "ACResumingSuspendTimeout"=dword:0 ?
? ? "BattSuspendTimeout"=dword:0
? ? "BattResumingSuspendTimeout"=dword:0

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power]
? ? ? "BattPowerOff"=dword:0
? ? ? "ExtPowerOff"=dword:0
? ? ? "WakeupPowerOff"=dword:0
? ? ? "ScreenPowerOff"=dword:0


不好意思,最近忙,把这事给拉下了,明天下班前回复你
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

11
 
向lz确认几个问题:
1. CE6?注册表时从哪里Copy过来的,Windows Mobile?
2. 能否将注册表配置为默认的值,就是Sysgen的时候产生的默认值,不要改动?
3. "發現設置ACLineStatus后會造成LCD關閉。但是點擊Touchpanel或者按鍵,LCD又會重新打開。就像是進入systemidle關閉屏幕一樣"能够通过debug info或者其他方式判断一下LCD关闭的时候你的系统状态时在哪种?
 
 
 

回复

64

帖子

0

TA的资源

一粒金砂(初级)

12
 
1. CE5,从common.reg copy过来的。
2. 默认值是有system idle等操作的,我不想要,所以还没有试。 可以试一下默认值。
3. 系统状态正常D0。 只有display driver在进行D0/D4切换。看上去像是Screen off

谢谢~
 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

13
 
这个应该和CE的源代码有关,当系统检测到AC电源移除的时候就自动调用display的D4状态,不知道有没有注册表的设置进行限制,如果没有的话估计就要找源代码改了。
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

14
 
引用 11 楼 skynet000 的回复:
1. CE5,从common.reg copy过来的。
2. 默认值是有system idle等操作的,我不想要,所以还没有试。 可以试一下默认值。
3. 系统状态正常D0。 只有display driver在进行D0/D4切换。看上去像是Screen off

谢谢~

1. 是ce5.0中的common.reg么,有些注册项是5.0上没有的,是>windows mobile5.0的
2. 期待结果
3. Screen off应该可以直接看出来吧,不存在好像吧?呵呵
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表