EFI_BATTERY_CHARGING_PROTOCOL.GetBatteryInformation

返回有关主电池的当前状态的信息,包括充电状态、要传递到电池或从电池中汲取的电流量、电池终端的电压、电池温度、USB 电缆上的电压,以及流经 USB 电缆的电流。

语法

typedef EFI_STATUS (EFIAPI * EFI_BATTERY_CHARGING_GET_BATTERY_INFORMATION) (
    IN EFI_BATTERY_CHARGING_PROTOCOL *This,
    OUT UINT32 *StateOfCharge,
    OUT INT32 *CurrentIntoBattery,
    OUT UINT32 *BatteryTerminalVoltage, 
    OUT INT32 *BatteryTemperature,
    OUT UINT32 *USBCableVoltage,
    OUT UINT32 *USBCableCurrent );

参数

This
[in] 指向 EFI_BATTERY_CHARGING_PROTOCOL 实例的指针。

StateOfCharge
[out] 返回主电池的当前充电状态 (SOC)。 SOC 以百分比表示,其中 100% 表示充满电。

CurrentIntoBattery
[out] 返回下表中列出的值之一。

说明
正数 电池正在充电。 该值指示传递到电池的电流(以 mA 为单位)。
负数 电池正在放电。 该值指示从电池中提取的电流(以 mA 为单位)。
0 电池未充电或放电。
EFI_BATTERY_CHARGE_CURRENT_NOT_SUPPORTED (0x80000000) 硬件无法提供此信息。

BatteryTerminalVoltage
[out] 电池终端的电压(以 mV 为单位)。

BatteryTemperature
[out] 电池的温度,以十分之一开尔文度为单位。

USBCableVoltage
[out] USB 电缆上的电压(以 mV 为单位)。

USBCableCurrent
[out] 流经 USB 电缆的电流(以 mA 为单位)。

返回值

返回下列状态代码之一。

状态代码 说明
EFI_SUCCESS 函数已成功返回。
EFI_INVALID_PARAMETER 一个参数不正确。
EFI_DEVICE_ERROR 此物理设备报告了一个错误。
EFI_NOT_READY 物理设备正忙或未准备好处理此请求。

注解

UEFI 电池充电应用程序会定期调用此函数,以检索有关电池的信息。 应用程序使用这些信息来帮助监视电池的状态并诊断错误。

注意

此函数自 EFI_BATTERY_CHARGING_PROTOCOL 修订版 0x00010002 开始可用。 如果 UEFI 电池充电应用程序检测到只有协议的修订版 0x00010001 可用,它将改为调用 EFI_BATTERY_CHARGING_PROTOCOL.GetBatteryStatus

要求

标头:用户生成

EFI_BATTERY_CHARGING_PROTOCOL