您的位置:首页 > 其它

WinCE下电池充放电测试

2012-09-21 17:17 274 查看


WinCE下电池充放电测试


对手持设备来说,电池的充放电曲线非常重要,一般由电池厂家提供。我们在开发的过程中会按照这个标准的充放电曲线设计程序。但设备的工作模式有很多种,为了测试在各模式下电池的放电情况,我们可以自己写个小工具记录下电池的放电状态,然后通过Excel或者Matlab绘制出其放电曲线。

WinCE下电池驱动分MDD和PDD两层,对于一般应用来说,只要实现PDD层,链接标准的MDD层LIB,生成电池驱动battery.dll即可。PDD层的代码实现可参考C:\WINCE600\PLATFORM\DEVICEEMULATOR\SRC\DRIVERS\BATTDRVR。

实现完电池驱动并添加了WinCE的电源管理组件后,WinCE系统就可以监测电池状态并给出相应的提示。同时应用程序可以调用GetSystemPowerStatusEx2()获取当前电池的信息。通常情况下,电池的信息主要是指当前的充电状态及电压值,如果硬件支持,还可以得到当前的充放电的电流值。

加入电池驱动后,任务栏和Shell中会有相应的状态提示,如下图。如果不需要Shell中的提示,可以设置注册表关闭。





在我们的平台上,收集并绘制了几种工作模式下的放电曲线,如下。













顺便也在M8上做了个测试,截图如下。





可以看到M8在播放电影时,电池的放电曲线要干净一些。

得到以上这些曲线后,软件设计就可以作为参考了。

附上一段Matlab的代码:

close all;

clear all;

data = load('D:\我的文档\桌面\电池放电曲线\30-08-08-20-BatLog.txt');

x = data(:,1);

y1 = data(:,2);

y2 = data(:,3);

figure(2);

subplot(2,1,1),plot(x,y1);

subplot(2,1,2),plot(x,y2);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: