- 1、本文档共27页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Mobile 电源管理
Windows Mobile 电源管理
发布: 2010-3-12 14:49 | 作者: pknife | 来源: DevDiv移动开发社区
Windows CE是典型的使用电池供电的系统。这使得正确操作系统十分关键,应用程序大多数时间都不需要关注Windows CE 设备的电源损耗,但是在某些时候,你可能要注意这些损耗。? ? 当用户关闭了一个使用电池的Windows CE 设备,电源系统不会关闭PC电源,事实上,只是系统被挂起(译者注:这里就像有些PocketPC把关闭电源放在拔SIM卡的位置,拔出SIM卡才真正关闭电源。但是,目前包括Smartphone在内,因为硬件设备,比如CPU无法进入低功耗,所以为了省电,需要做到关闭应用处理器及大部分设备供电,然后需要唤醒时,再通过定时器或无线模块唤醒。所以不关闭电源的情况不是绝对的。)当用户打开设备电源,设备不会像PC一样重新启动,而是被唤醒,返回到与系统挂起前一样的状态。这样导致一个应用程序在唤醒后会像挂起前一样运行。事实上,应用程序根本不知道它被挂起,除非它明确地请求当系统挂起时通知它。从应用程序的角度看,电源管理有三种方式,查询电源状态,改变电源状态,和防止电源状态改变。查询电源状态? ? 要查询系统当前的电源状态,你必须调用DWORD GetSystemPowerStatusEx2 (PSYSTEM_POWER_STATUS_EX2 pSystemPowerStatusEx2, DWORD dwLen, BOOL fUpdate);? ? 函数带了三个参数:一个指向SYSTEM_POWER_ STATUS_EX2结构的指针,结构的长度,和一个布尔值,表示告诉操作系统是否应该查询电池驱动来得到最后的信息或者直接返回电池缓存中的信息。系统大约每5秒查询一次电池状态,因此,如果第三个差数是FALSE,得到的数据不会太旧。结构SYSTEM_POWER_STATUS_EX2被定义为typedef struct _SYSTEM_POWER_STATUS_EX2 {? ? BYTE ACLineStatus;? ? BYTE BatteryFlag;? ? BYTE BatteryLifePercent;? ? BYTE Reserved1;? ? DWORD BatteryLifeTime;? ? DWORD BatteryFullLifeTime;? ? BYTE Reserved2;? ? BYTE BackupBatteryFlag;? ? BYTE BackupBatteryLifePercent;? ? BYTE Reserved3;? ? DWORD BackupBatteryLifeTime;? ? DWORD BackupBatteryFullLifeTime;? ? WORD BatteryVoltage;? ???? ? DWORD BatteryCurrent;? ? DWORD BatteryAverageCurrent;? ? DWORD BatteryAverageInterval;? ? DWORD BatterymAHourConsumed;? ? DWORD BatteryTemperature;? ? DWORD BackupBatteryVoltage;? ? BYTE??BatteryChemistry;} SYSTEM_POWER_STATUS_EX2;? ? 在我描述的这个巨大的结构之前,我必须告诫你,这个结构返回的数据精确程度和电池驱动一样。同样的结构被传给电池驱动来查询它的状态。Windows CE不验证电池驱动返回的数据。这个函数返回来的数据依赖于电池驱动,因此不同的系统有不同的变化。举个例子,许多系统在使用AC电源时不报告精确的电源级数;另一些系统则相反。应用程序使用GetSystemPowerStatusEx2来自动预防和检测系统是否可能运行应用程序。? ? 第一个区域,ACLineStatus,包含一个标志,表示系统是否连接到AC 电源。如果值是AC_LINE_OFFLINE,表示系统没有使用AC 电源;AC_LINE_ONLINE,表示系统使用了AC 电源;AC_LINE_BACKUP_POWER和AC_LINE_UNKNOWN,表示备用电源和未知电源。BatteryFlag区域,提供了一个总的标识,表示当前系统的电池状态,可以有以下值:BATTERY_FLAG_HIGH电池被充满或接近充满。BATTERY_FLAG_LOW电池还有一点剩余。BATTERY_FLAG_CRITICAL电池电量处在一个临界状态。BATTERY_FLAG_CHARG
您可能关注的文档
- 数据挖掘应用案例集.doc
- 地震安全性评价中的工程地震问题-陈时军.ppt
- 会籍顾问销售问与答.doc
- 16104-5-小结-381172120-.ppt.ppt
- DB2V9.5管理命令汇总.doc
- 国际会展中心.doc
- 漆面抛光与镀膜.doc
- 中小桥梁工程施组.doc
- 岗位说明书 豪天万客会KTV 康继鹏文档.doc
- 2009级1班文明班申报材料.doc
- 浙江省绍兴市稽山中学2024年高三下学期第六次检测英语试卷含解析.doc
- 浙江省苍南县巨人中学2023-2024学年高考英语三模试卷含解析.doc
- 浙江省百校2024年高三下学期第五次调研考试英语试题含解析.doc
- 浙江省绍兴第一中学2024届高三下学期第五次调研考试英语试题含解析.doc
- 浙江省温州市共美联盟2023-2024学年高三第二次诊断性检测英语试卷含解析.doc
- 浙江省海盐高级中学2024届高考英语全真模拟密押卷含解析.doc
- 浙江省桐乡市凤鸣高级中学2023-2024学年高考冲刺押题(最后一卷)英语试卷含解析.doc
- 浙江省金华第一中学2023-2024学年高考仿真模拟英语试卷含解析.doc
- 浙江省温州市2024年高三第三次测评英语试卷含解析.doc
- 浙江省湖州、衢州、丽水2024届高考英语全真模拟密押卷含解析.doc
文档评论(0)