低温18650 3500
无磁低温18650 2200
过针刺低温18650 2200
低温磷酸3.2V 20Ah
21年专注锂电池定制

电池驱动深度解析

钜大LARGE  |  点击量:2213次  |  2018年09月29日  

WindowsCE中包含的样本设备驱动程序分为两种类型:单片驱动程序(Monolithicdevicedriver)和分层驱动程序(LayeredDevicedriver)。采用分层开发模式可以降低开发难度,缩短开发周期,在电池驱动开发中使用分层驱动开发模式。


WindowsCE电池驱动要求的PDD函数包括:


BatteryPDDInitialize、BatteryPDDDeinitialize、BatteryPDDGetStatus、BatteryPDDGetLevels、BatteryPDDSupportsChangeNotification、BatteryPDDPowerHandler、BatteryPDDResume。


WindowsCE电池驱动要求的MDD函数包括:


Init、Deinit、Open、Close、Read、Write、Seek、PowerDown、PowerUp、IOControl。

过针刺 低温防爆18650 2200mah
符合Exic IIB T4 Gc防爆标准

充电温度:0~45℃
-放电温度:-40~+55℃
-40℃最大放电倍率:1C
-40℃ 0.5放电容量保持率≥70%

分层驱动程序由两个独立的层组成:上层是模型设备驱动程序(MDD),下层是依赖平台的驱动程序(PDD)。设备驱动程序服务器提供的接口(DDSI)是在PDD中实现的函数集,并由MDD调用。由于微软提供了所有与MDD模块相关的源代码,所以对这部分不用做任何改动,只需将自己的PDD模块与MDD模块链结成一个公用库即可[3]。MDD通过IoCTLS调用PDD中的特定函数来访问硬件的具体特性。


电池驱动初始化过程


在系统上电自检成功后,上层调用电池驱动入口函数,进行电池驱动初始化工作:


(1)调用BatteryAPIGetSystemPowerStatusEx2函数更新电池电量结构体PSYSTEMPOWERSTATUS_EX2中的数据。


(2)调用PDD层的初始化函数BatteryPDDInitialize;在PDD层中,为GPIO寄存器和电源管理寄存器开辟两段虚拟内存。

无人船智能锂电池
IP67防水,充放电分口 安全可靠

标称电压:28.8V
标称容量:34.3Ah
电池尺寸:(92.75±0.5)* (211±0.3)* (281±0.3)mm
应用领域:勘探测绘、无人设备

(3)初始化电池全局变量。


(4)初始化存放电池电量值的环形缓冲区。


(5)判断是否已经进行中断事件初始化,如果没有初始化,则进行下面的操作,如果已经进行了一次初始化,则关闭事件句柄。


(6)如果中断事件成功,则调用ResumeThreadProc创建电池线程。在线程的主调函数中,设置电池线程的优先级,然后在循环中等待中断事件。


(7)初始化AC97的寄存器。

钜大锂电,22年专注锂电池定制

钜大核心技术能力