电源管理

2022-07-25

PSDK 电源管理相关功能的头文件为psdk_power_management.h,本文档描述了psdk_power_management.h 文件中结构体和函数原型的关键信息和使用方法。

宏定义、枚举与结构体

typedef enum E_PsdkPowerManagementPinState

高功率引脚的状态

typedef enum {
PSDK_POWER_MANAGEMENT_PIN_STATE_RESET = 0, 引脚为低电压
PSDK_POWER_MANAGEMENT_PIN_STATE_SET = 1, 引脚为高电压
} E_PsdkPowerManagementPinState;

typedef function WriteHighPowerApplyPinCallback

功能:设置高功率引脚状态 product:all

设置高功率引脚状态的回调函数

typedef T_PsdkReturnCode (*WriteHighPowerApplyPinCallback)(E_PsdkPowerManagementPinState pinState);

参数
pinState:高功率引脚的状态
返回值
根据程序执行的情况输出对应的返回值,详情请参见:PsdkErrorCode

typedef function PowerOffNotificationCallback

功能:关机通知 product:all

通知负载设备无人机将要关机并获取负载设备关机准备状态的回调函数

说明: 为防止该函数阻塞PSDK 的主线程,导致出现程序响应缓慢、相机类负载设备断连及死循环等问题,请勿以阻塞的方式在回调函数中执行该函数。

typedef T_PsdkReturnCode (*PowerOffNotificationCallback)(bool *powerOffPreparationFlag);

参数
powerOffPreparationFlag:指向用于存储关机准备状态的内存空间
返回值
根据程序执行的情况输出对应的返回值,详情请参见:PsdkErrorCode

typedef function PsdkPowerManagement_ApplyHighPowerSync

功能:申请高功率 product:all

以阻塞的方式从无人机中申请高功率。

说明

  • 在向无人机申请高功率前,请使用PsdkPowerManagement_RegWriteHighPowerApplyPinCallback() 接口注册设置负载设备引脚状态的回调函数。
  • 该接口执行的时间可能会大于600ms。
T_PsdkReturnCode PsdkPowerManagement_ApplyHighPowerSync(void);

返回值
根据程序执行的情况输出对应的返回值,详情请参见:PsdkErrorCode

函数原型

function PsdkPowerManagement_RegWriteHighPowerApplyPinCallback

功能:设置申请高功率引脚状态 product:all

请在使用高功率功能前,注册用于设置申请高功率引脚状态的回调函数。

T_PsdkReturnCode PsdkPowerManagement_RegWriteHighPowerApplyPinCallback(WriteHighPowerApplyPinCallback callback);

参数
callback:指向设置高功率引脚状态的回调函数
返回值
根据程序执行的情况输出对应的返回值,详情请参见:PsdkErrorCode

function PsdkPowerManagement_RegPowerOffNotificationCallback

功能:注册关机通知功能的函数 product:all

注册用于通知负载设备无人机将要关机并获取负载设备关机准备状态的回调函数。

说明

  • 注册该回调函数后,负载设备将在接收到无人机关机的命令后调用该回调函数;
  • 开发者需要设置负载设备关闭时的状态,当负载设备完成关机准备后,负载设备将不会调用该回调函数;
  • 若在一段时间内,负载设备未完成关机准备,无人机将会强制关机。
T_PsdkReturnCode PsdkPowerManagement_RegPowerOffNotificationCallback(PowerOffNotificationCallback callback);

参数
callback:指向用于通知负载设备无人机将关闭并获取负载设备关机准备状态的回调函数
返回值
根据程序执行的情况输出对应的返回值,详情请参见:PsdkErrorCode