PXA270的电池充电及电量计量模块设计
本模块的驱动程序设计采用的是流接口的形式。Windows CE的流接口驱动程序以DLL(动态链接库)的形式存在,由设备管理器(通常是de-vice.exe或者gwes.exe)统一加载、管理和卸载。与具有单独目的的本机设备驱动程序相比,所有流接口驱动程序都是用同一接口,并调用同一个函数集。每个流式接口驱动程序必须实现1组标准的函数,用来完成标准的文件I/O函数和电源管理函数,这些函数提供给Windows CE操作系统的内核使用。这些函数通常叫做流式接口驱动程序的DLL接口。同时,本驱动程序设计采用分层驱动的形式。分层驱动程序把驱动程序的代码分为2层:上面一层叫模型设备驱动(MDD),下面一层叫平台相关驱动(PDD)。Windows CE操作系统自带驱动的MDD代码,MDD的代码是无需更改的,只需修改PDD层的代码。本系统的主要涉及函数如下:本文引用地址:https://www.eepw.com.cn/article/180266.htm
驱动程序调用PDD层的初始化函数BatteryPDDlnitialize,初始化CPU的GPIO、相关寄存器和电池状态全局变量。同时定义了1个SYSTEM_ POWER_STATUS_EX2结构体变量sps。通过BatteryPDDGetStatus函数从DS2786芯片中得到电池当前的状态信息来更新sps结构体中的各个电池信息。用户界面上也可以根据sps结构体中的内容更新当前的显示状态。这样就完成了电量计量的实时更新和显示。
结语
本文研究并设计了一种电池充电及电量计量的硬件电路,并且给出了在Windows CE操作系统下的驱动设计,实现了完整的软硬件模块。该模块设计简单,性能出色,可以满足大多数情况下手持消费电子的需求,具有很好的应用前景。
评论